搭建SFTP服务

工具/原料
centos7.2_x64
方法/步骤
rpm -aq|grep vsftpd #列出包含vsftpd字段的软件的信息。
创建sftp组
groupadd sftp
创建完成之后使用cat /etc/group命令查看组的信息
cat /etc/group|grep sftp
在这里插入图片描述
创建一个sftp用户mysftp并加入到创建的sftp组中,同时修改mysftp用户的密码
useradd -g sftp -s /bin/false mysftp
passwd mysftp 创建密码

新建/data/sftp/mysftp目录,并将它指定为mysftp组用户的home目录
mkdir -p /data/sftp/mysftp
usermod -d /data/sftp/mysftp mysftp

编辑配置文件vi /etc/ssh/sshd_config
将如下这行用#符号注释掉
# Subsystem sftp /usr/libexec/openssh/sftp-server*
并在文件最后面添加如下几行内容然后保存
Subsystem sftp internal-sftp
Match Group sftp #限定只有sftp组的才能访问
ChrootDirectory /data/sftp/%u #设定属于用户组sftp的用户访问的根文件夹
ForceCommand internal-sftp #强制执行这里指定的命令而忽略客户端提供的任何命令。
AllowTcpForwarding no #是否允许TCP转发,默认值为"yes", 禁止TCP转发并不能增强安全性,除非禁止了用户###对shell的访问,因为用户可以安装他们自己的转发器。
X11Forwarding no #是否允许进行 X11 转发。默认值是"no",设为"yes"表示允许。如果允许X11转发并且sshd(8)代理的显示区被配置为在含有通配符的地址(X11UseLocalhost)上监听。那么将可能有额外的信息被泄漏。

设置Chroot目录权限
chown root:sftp /data/sftp/mysftp
chmod 755 /data/sftp/mys
新建一个目录供stp用户mysftp上传文件,这个目录所有者为mysftp所有组为sftp,所有者有写入权限所有组无写入权限
mkdir /data/sftp/mysftp/upload
chown mysftp:sftp /data/sftp/mysftp/upload
chmod 755 /data/sftp/mysftp/upload
关闭selinux并重启sshd服务,然后测试

在其他服务器上进行验证,sftp 用户名@ip地址
指定端口用法:
sftp -oPort=22022 mysftp@10.166.199.129

=======
最简单方式: 在CentOS Linux release 7.3.1611 (Core) 测试通过
1.建立用户
useradd sftp01 -d /aifs01/users/sftp01
2.修改用户密码
passwd sftp01
3.另一台机器上验证
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值