Linux CentOS7.2 搭建sftp服务器

服务器 0

一、连接服务器

1、Window+R 运行命令行

2、连接服务器,输入命令:ssh root@18.233.116.163
18.233.116.163 - 换成你的IP地址

3、填写密码,回车后,下图是登录成功界面

二、创建用户、组,并指定帐号对应的根目录

1、添加用户组sftp-sffl,命令:groupadd sftp-sffl

2、创建一个sftp用户sffl并加入到上面创建sftp-sffl组中,同时修改mysftp用户的密码

输入命令:useradd -g sftp-sffl -s /nologin sffl

输入命令:passwd sffl
按下 回车(Enter)后,输入两次密码自己设置(注意输入密码不会有提示)

3、创建文件夹 /Sites/statics/www.tooljoin.com,有则跳过,下图是创建命令(提示已经存在了)

输入命令: mkdir /Sites/statics/www.tooljoin.com


将文件夹指定为sffl用户的home目录
输入命令:usermod -d /Sites/statics/www.tooljoin.com sffl

如果需要 删除用户,可以执行命令:userdel <username>

二、配置服务器设置和权限

1、执下命令:nano /etc/ssh/sshd_config

2、按下 向下键 直到最后一行,或者按下Ctrl+Shift+-(苹果电脑Ctrl+-即可),输入9999,按Enter键
然后输入以下代码

Subsystem sftp internal-sftpMatch Group sftp-sfflChrootDirectory /Sites/statics/www.tooljoin.comForceCommand internal-sftp

#要把前面的带Subsystem开头的行注释掉(前面加“#”),在加下面这行,否则将无法重启服务
Subsystem sftp internal-sftp
Match User <用户名>
ChrootDirectory <路径:以/开头>
ForceCommand internal-sftp



3、保存配置:按Ctrl+O, 再按Enter
4、退出:按Ctrl+X
5、重启服务,执行命令:service sshd restart 或者 sudo systemctl restart sshd
出现下图红框中的提示,则表示重启成功

6、给用户组 配置权限

输入以下命令:
chown root:sftp-sffl /Sites/statics/www.tooljoin.com  
chmod 755 /Sites/statics/www.tooljoin.com

7、创建SFTP可上传下载的文件夹
mkdir sffl:sftp-sffl /Sites/statics/www.tooljoin.com/sffl
chmod 755 /Sites/statics/www.tooljoin.com/sffl

如果已经存在文件夹则使用以下命令:
chown sffl:sftp-sffl /Sites/statics/www.tooljoin.com/sffl
chmod 755 /Sites/statics/www.tooljoin.com/sffl

下面是最终设置权限后的结果


注意点来了 /Sites/statics/www.tooljoin.com 为根目录,/Sites/statics/www.tooljoin.com/sffl上传和下载的文件夹,不同同时用1个目录,否则会提示没有权限

三、使用SFTP连接服务器
1、用WinSCP测试,下面是未上传截图

已经上传截图

2、也可以使用命令
sftp sffl@18.233.116.163
然后输入密码,下面为登录成功

lcd [文件夹路径] # 定本机当前文件夹
cd [文件夹路径] # 定服务器当前文件夹
put [文件名] #要上传的文件
如下图,表示上传成功​​​​​​​

也许您对下面的内容还感兴趣: