CentOS系统下SFTP的创建(sshd)

CentOS7下SFTP的创建

 

 

      1、创建sftp服务数据目录及相关用户

mkdir -pv /data/sftp/             #sftp数据目录

chown root:root -R /data/sftp/     #一定要是root用户,否则无法chroot

chmod 755 -R /data/sftp/         #权限最低需要保证普通用户可以进入

groupadd sftp                  #sftp服务设置匹配组,单个用户可以忽略

useradd -d /data/sftp/baiinfosftp -m -g sftp -s /sbin/nologin baiinfosftp  

id baiinfosftp

echo "1+1=2?Yes" |passwd --stdin baiinfosftp  #添加密码

      2、修改sshd服务配置文件,以组的方式管理sftp用户权限

         

vi /etc/ssh/sshd_config  #修改sftp配置文件,修改内容如下:

注销:

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

添加:

   Subsystem sftp internal-sftp  #使用sftp服务使用系统自带的internal-sftp

   Match Group sftp           #匹配sftp组,多个组之间用逗号分割

   ChrootDirectory /data/sftp/%u  #用chroot将用户的根目录指定到/data/sftp/%u,%u代表用户名,这样用户就只能在/data/sftp/%u下活动

   ForceCommand internal-sftp     #强制执行内部sftp,并忽略任何~/.ssh/rc文件中的命令

   AllowTcpForwarding no         #不允许转发TCP协议,默认是yes,如果用户可以shell访问则建议为yes

   X11Forwarding no             #是否允许进行 X11 转发。默认值是"no",设为"yes"表示允许。

   AllowUsers baiinfosftp      #需要在这里加入允许sftp用户远程连接

:wq     #保存退出

       3、重启服务

 systemctl restart sshd  #重启sftp服务

       4、配置客户端连接目录权限               

cd /data/sftp/              #切换到sftp目录

chown root:root baiinfosftp   #原则用户目录以上的所有目录只归root所有

chmod 755 baiinfosftp/       #给SFTP用户baiinfosftp赋权限

cd baiinfosftp/              #进入用户目录, 创建upload

mkdir upload               

chown baiinfosftp:sftp upload/  #指定upload访问权限归baiinfosftp用户

上一篇:R处理文本 三国


下一篇:Nginx 发布Web项目