基于VMWare 16虚拟机 CentOS7linux系统SFTP服务器的搭建与数据上载传输
搭建虚拟机,装载linux系统,在终端通过命令行,搭建SFTP服务器。创建SFTP组和用户,为组和用户指定目录,修改相应的配置文件,修改目录权限,为用户上传文件建立一个目录。通过本地CMD命令行进行上传文件测试。......
文章目录
写在前面
搭建虚拟机,装载linux系统,在终端通过命令行,搭建SFTP服务器。创建SFTP组和用户,为组和用户指定目录,修改相应的配置文件,修改目录权限,为用户上传文件建立一个目录。通过本地CMD命令行进行上传文件测试。
1. SFTP协议
SSH文件传输协议(英语:SSH File Transfer Protocol,也称Secret File Transfer
Protocol,中文:安全文件传送协议,英文:Secure FTP或字母缩写:SFTP)是一数据流连接,提供文件访问、传输和管理功能的网络传输协议。
SFTP协议能够在客户端与服务器端建立连接,通过二者之间的控制信号和文件内容实现远程文件系统的功能。
2. SFTP服务器搭建
2.1 windows中SFTP服务器搭建
在windows系统中,默认不安装SFTP,需要下载fresSSHd软件。
软件下载后,点击user,进行用户设置。
此时,完成了用户的添加
进行SSH端口和IP设置,端口一般默认为22.
给定SFTP服务器目录路径。
设置权限
此时基于windows系统的SFTP服务器搭建完毕。
2.2 linux系统的SFTP服务器搭建
2.2.1. 通过su命令,进入管理员权限:
$符号是用户权限,#是管理员权限:
2.2.2 创建sftp组
# groupadd sftp
2.2.3 创建一个sftp用户mysftp,并加入到所创建的sftp组中,同时修改密码:
# useradd -g sftp -s /bin/false sftptest
# passwd sftptest
2.2.4 创建/data/sftp/mysftp目录,并将该目录制定为mysftp组用户的home目录
# mkdir -p /data/sftp/sftptest
# usermod -d /data/sftp/sftptest sftptest
2.2.5 修改配置文件
在命令行通过vi /etc/ssh/sshd_config
命令。进入到sshd_config配置文件中
键入i即可进入编辑模式,键入esc退出编辑模式。
注释掉下面这一行;
# Subsystem sftp /usr/libexec/openssh/sftp-server
在配置文件末尾添加如下几行:
Subsystem sftp internal-sftp
Match Group sftp
ChrootDirectory /data/sftp/%u
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
退出编辑模式后,输入:wq 保存并退出配置文件。
2.2.6 设置chroot目录权限
# chown root:sftp /data/sftp/sftptest
# chmod 755 /data/sftp/sftptest
2.2.7新建一个目录
供sftp的用户mysftp上传文件,这个文件就是文件传输的远程文件目录。
# mkdir /data/sftp/sftptest/upload
# chown sftptest:sftp /data/sftp/sftptest/upload
# chmod 755 /data/sftp/sftptest/upload
2.2.8 关闭selinux,并重启SSHD服务
setenforce 0
systemctl restart sshd.service
2.2.9 传输测试
然后在本地CMD命令行进行测试。打开cmd命令行:
键入:sftp mysftp@ip
输入密码,即进行文件传输。
3. linux系统常用命令
常用命令 | 命令说明 |
---|---|
su | 进入管理员权限 |
vi | 进入文件 |
ip addr | 查看ip地址 |
ls | 查看文件目录 |
touch | 创建文件 |
:q | 不保存退出文件 |
:wq | 保存退出文件 |
cd | 切换目录 |
mkdir | 创建目录 |
rm | 删除文件 |
cat | 查看文件 |
ifconfig | 查看网卡信息 |
其他常用的linux命令参见另一位博主的总结(linux命令大全),十分全面。
更多推荐
所有评论(0)