在ubuntu中搭建sftp服务,并需要把登陆账户的目录限制到一个固定目录
1.安装sftp服务
sudo apt-get install openssh-server
这里我们把目录/data/sftp/tomfat用来做上传目录,下面建一个upload文件夹用来放上传文件
2.建立账户和组
sudo addgroup sftp
sudo adduser tomfat
sudo usermod -G sftp -s /bin/false tomfat
useradd -g sftp -d /data/sftp/tomfat tomfat
usermod -a -G sftp root
tomfat下目录以上的上级目录应该归root所有(data,sftp,tomfat)
chown root:root /data
chmod 755 /data
其他目录sftp也应该是
tomfat下面的目录归tomfat所有
chown tomfat:sftp -R tomfat/*
vim /etc/ssh/sshd_config
#UseDNS no
Subsystem sftp internal-sftp -l INFO -f AUTH
Match Group sftp
Match User tomfat
PasswordAuthentication yes
ChrootDirectory /data/sftp/tomfat
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
chrootDirectory就是把登陆目录限制在一个目录下面
这里启用的是密码验证
5重启服务 /etc/init.d/ssh restart
这里我遇到一个问题,就是一直报错:bad ownership or modes for chroot directory ‘/’
一直各种改目录权限,没好
没有怀疑过根目录的权限咋还不是root
chown root:root /
就好了
原文链接:https://www.f2er.com/ubuntu/350710.html