LINUX sftp 创建sftp用户并制定用户目录


 

1 创建sftp群组

groupadd sftp

 

2 创建sftp用户并关联到sftp群组

 

useradd -d /home/sftpdir  -s /sbin/nologin -g sftp  aaa

 

修改用户aaa的密码

 

passwd aaa

 

解析: useradd 添加用户ftpUser passwd 给用户ftpuser添加密码

-d 指定用户根目录为/mnt/infinitsoft

-s 指定shell脚本为/sbin/nologin,表示不允许shell登录

-g 创建分组sftp

-G 指定root分组

PS: 创建有问题可以删除重新创建 userdel -r ftpUser

 

3 关于/home/aaa权限和归属问题

/home 群组归属:root:root  权限:755 

chown root:root /home 

chmod 755 /home

 

/home/aaa 群组归属:root:root  权限:755

chown root:root /home/aaa 

chmod 755 /home/aaa

 

 

/home/aaa/xxx 群组归属 aaa:sftp 权限:777

chown aaa:sftp /home/aaa/xxx
chmod 777 /home/aaa/xxx

 

 

4 更改sshd_config文件,修改相关的配置(增加)

vim /etc/ssh/sshd_config

 

#Subsystem sftp /usr/libexec/openssh/sftp-server 注释掉这一行

Subsystem sftp internal-sftp

Match User aaa

ChrootDirectory /home/aaa

ForceCommand internal-sftp

AllowTcpForwarding no

X11Forwarding no

 

参数 说明
Subsystem sftp internal-sftp 指定使用sftp服务使用系统自带的internal-sftp
Match Group sftp 用来匹配sftp组的用户,如果要匹配多个组,多个组之间用逗号分割
Match User mysftp 匹配用户,多个用户名之间也是用逗号分割
ChrootDirectory /home/%u 设定属于用户组sftp的用户访问的根文件夹
ForceCommand internal-sftp 指定sftp命令
AllowTcpForwarding no  
X11Forwarding no 设置不允许SSH的X转发

 

 

 

 

 

 

 


 5 重启sshd服务

service sshd restart

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM