linux系统下sftp配置实现文件传输

Linux提供sftp服务的有vsftpd和internal-sftp,这里用的是系统自带的internal-sftp,操作步骤如下:

1.创建新用户php54,禁止ssh登录,不创建主目录

useradd -s /sbin/nologin -M php54

2.设置用户密码

passwd php54

3.创建用户的根目录,用户就只能在此目录下活动

mkdir /home/www

4.设置目录权限,目录的权限设定有两个要点:

目录开始一直往上到系统根目录为止的目录拥有者都只能是root

目录开始一直往上到系统根目录为止都不可以具有群组写入权限

chown root:root /home/wwwchmod 755 /home/www

5.配置sshd_config

vim /etc/ssh/sshd_config

按insert进行编辑

6.修改为下面内容,限制用户访问目录,保存退出

Subsystem sftp internal-sftpUsePAM yesMatch User php54ForceCommand internal-sftpChrootDirectory /home/www

7.重启sshd服务(需要重启才能生效)

service sshd restart

8.修改用户的主目录

usermod -d /data/www php54

9.查看文件权限

ls -l xxx

xxx是文件名,如果xxx是文件夹名称则显示文件中所有文件的权限信息

以上就是linux下从创建sftp用户到设置目录及权限是方法,都比较简单好记。希望可以帮到大家,如果大家有什么想法或者建议希望可以在下面留言!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181206G1DO2S00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券