Centos7部署sftp

1 篇文章 0 订阅

Centos7部署sftp

1、创建sftp用户组

groupadd sftp

2、创建一个用户sftpuser

useradd -g sftp -s /bin/false sftpuser

3、设置sftpuser用户的密码,两次密码确认,会验证密码是否过于简单

passwd sftpuser

4、创建一个sftp的上传目录

mkdir -p /datas/www

5、修改用户sftpuser所在的目录

usermod -d /datas/www sftpuser

6、配置sshd_config

vi /etc/ssh/sshd_config

找到如下这行,并注释掉

Subsystem sftp /usr/libexec/openssh/sftp-server

添加如下几行

Subsystem sftp internal-sftp #这行指定使用sftp服务使用系统自带的internal-sftp
Match User sftpuser #这行用来匹配用户
ChrootDirectory /datas/www  #用chroot将用户的根目录指定到/datas/www ,这样用户就只能在/datas/www下活动
AllowTcpForwarding no
ForceCommand internal-sftp #指定sftp命令

为什么用 internal-sftp 而不用默认的 sftp-server,这是因为:
这是一个进程内的 sftp 服务,当用户 ChrootDirectory 的时候,将不请求任何文件;
更好的性能,不用为 sftp 再开一个进程。

保存退出

设定Chroot目录权限

chown -R root:root /datas/www
chmod 755 /datas/www

建立SFTP用户登入后可写入的目录

mkdir /datas/www/sftpuser
chown -R sftpuser:sftp /datas/www/sftpuser/
chmod 755 /datas/www/sftpuser/

重启sshd服务

service sshd restart

测试是否能正常登陆

sftp -P 22 sftpuser@127.0.0.1    

如果出现无法连接则关闭SElinux

vi /etc/sysconfig/selinux

#找到如下这行 
SELINUX=enforcing

#修改为
SELINUX=disabled

保存退出

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值