公司搭建一個sftp服務器
其實sftp服務器就是用ssh服務關聯的一個內置應用
啟動ssh服務就可以連接sftp服務,端口默認22
在linux新建用戶
# useradd -g ftpuser -s /sbin/nologin -M ftpuser
# echo 'ftpuser' |passwd --stdin ftpuser
編輯/etc/ssh/sshd_config
#Subsystem sftp /usr/libexec/openssh/sftp-server #需要把這行注釋
Subsystem sftp internal-sftp #
Match User ftpuser #限制的用戶
ChrootDirectory /ftpuser/ #限制登陸目錄
ForceCommand internal-sftp #限制root的ssh登錄
AllowTcpForwarding no
X11Forwarding no
備注:
問題1:
ChrootDirectory設置的目錄權限及其所有的上級文件夾權限,屬主和屬組必須是root;
ftpuser@localhost's password:
packet_write_wait: Connection to ::1 port 22: Broken pipe
Couldn't read packet: Connection reset by peer
問題2:
sftp> mkdir 123
Couldn't create directory: Permission denied
需要在ChrootDirectory下新建目錄,屬主屬組需要屬於ftpuser