Ubuntu开启sftp连接
时间:2016-01-03 01:45 来源:linux.it.net.cn 作者:IT
第一步,ubuntu由于没有安装这个openssl服务,需要手动进行install,根据以下命令来安装
sudo apt-get install openssh-server
第二步,创建sftp的组,方面进行管理测试,这个也可以不进行创建,使用root用户也可以。
sudo addgroup sftp-test
第三步,创建SFTP用户,并配置相应权限。
sudo adduser alice
sudo usermod -G sftp-users -s /bin/false
第四步,创建SSH用户组,并把管理员加入到该组(注意usermod中的-a参数的意思是不从其他用户组用移除)。
sudo addgroup ssh-users
sudo usermod -a -G ssh-users admin
第五步,修改SSH配置文件。
sudo nano /etc/ssh/sshd_config
在sshd_config文件的最后,添加以下内容:
AllowGroups ssh-users sftp-users
Match Group sftp-users
ChrootDirectory /home/sftp_root
AllowTcpForwarding no
X11Forwarding no
ForceCommand internal-sftp
这些内容的意思是:
只允许ssh-uers及sftp-users通过SSH访问系统;
针对sftp-users用户,额外增加一些设置:将“/home/sftp_root”设置为该组用户的系统根目录(因此它们将不能访问该目录之外的其他系统文件);禁止TCP Forwarding和X11 Forwarding;强制该组用户仅仅使用SFTP。
第六步,重启系统以便使新配置生效。
注意:执行重启等风险操作前,需要保证业务的正常进行并做好数据备份。
(责任编辑:IT)
第一步,ubuntu由于没有安装这个openssl服务,需要手动进行install,根据以下命令来安装 sudo apt-get install openssh-server 第二步,创建sftp的组,方面进行管理测试,这个也可以不进行创建,使用root用户也可以。 sudo addgroup sftp-test 第三步,创建SFTP用户,并配置相应权限。 sudo adduser alice sudo usermod -G sftp-users -s /bin/false 第四步,创建SSH用户组,并把管理员加入到该组(注意usermod中的-a参数的意思是不从其他用户组用移除)。 sudo addgroup ssh-users sudo usermod -a -G ssh-users admin 第五步,修改SSH配置文件。 sudo nano /etc/ssh/sshd_config 在sshd_config文件的最后,添加以下内容: AllowGroups ssh-users sftp-users Match Group sftp-users ChrootDirectory /home/sftp_root AllowTcpForwarding no X11Forwarding no ForceCommand internal-sftp 这些内容的意思是: 只允许ssh-uers及sftp-users通过SSH访问系统; 针对sftp-users用户,额外增加一些设置:将“/home/sftp_root”设置为该组用户的系统根目录(因此它们将不能访问该目录之外的其他系统文件);禁止TCP Forwarding和X11 Forwarding;强制该组用户仅仅使用SFTP。 第六步,重启系统以便使新配置生效。 注意:执行重启等风险操作前,需要保证业务的正常进行并做好数据备份。 (责任编辑:IT) |