Centos7配置fstp
Centos7配置fstp
1 创建用户 useradd -m -d /data/sftp_data/user1 -s /usr/sbin/nologin -g sftp user1
-m:自动创建 home 目录
-d:指定 home 目录为 /data/sftp_data/user1
-s:shell 为 /usr/sbin/nologin 禁止用户使用SSH登录,仅用于 SFTP
-g:指定组为 sftp
2 设置密码 passwd sftpuser
3 mkdir /sftp
4 cd /sftp
5 mkdir sftpuser
6 chown -R sftpuser:sftpuser sftpuser
7 vi /etc/ssh/sshd_config
#注释掉这行
#Subsystem sftp /usr/libexec/openssh/sftp-server
添加这行:
Subsystem sftp internal-sftp #指定使用sftp服务使用系统自带的internal-sftp,如果不添加,用户无法通过sftp登录。
#添加在配置文件末尾
Match User sftpuser #匹配用户,如果要匹配多个组,多个组之间用逗号分割
ChrootDirectory /sftp/%u
#用chroot指定用户根目录
#这里的%u指的是账号名,/sftp/sftpuser
ForceCommand internal-sftp #指定sftp命令
X11Forwarding no #这两行,如果不希望该用户能使用端口转发的话就加上,否则删掉
AllowTcpForwarding no
8 systemctl restart sshd
9 sftp -oPort=22 sftpuser@127.0.0.1 输入密码后 报错如下
packet_write_wait: Connection to 127.0.0.1 port 22: Broken pipe
Couldn't read packet: Connection reset by peer
10 无法登录问题处理
chown -R root:root /sftp/sftpuser
mkdir /sftp/sftpuser/data
cd /sftp/sftpuser/
chown sftpuser:sftpuser data
11 systemctl restart sshd
12 sftp -oPort=22 sftpuser@127.0.0.1
sftp> pwd
sftp> lpwd
sftp> cd /data
出现sftp>则登录成功
本文来自博客园,作者:攻城狮-tester,转载请注明原文链接:https://www.cnblogs.com/zcjbky/p/17125485.html