环境,Centos7.6
1.新增一个sftp组
group sftp2.增加一个用户属于sftp组
useradd -g sftp -s /bin/false shanghai3.修改sftpuser密码
passwd shanghai4.创建目录
mkdir /opt/data/shanghai5.设置shanghai用户所在的目录
usermod -d /opt/data/shanghai shanghai6.修改sshd的配置文件
vim /etc/data/ssh/sshd_config#号注释下面这行
Subsystem sftp /usr/libexec/openssh/sftp-server最下文添加此行命令
Subsystem sftp internal-sftp #这行指定使用sftp服务使用系统自带的internal-sftp
Match User shanghai #这行用来匹配用户
ChrootDirectory /opt/data/shanghai #用chroot将用户的根目录指定到/opt/data/shanghai ,这样用户就只能在/opt/data/shanghai下活动
AllowTcpForwarding no
ForceCommand internal-sftp #指定sftp命令chown -R root:root /opt/data/shanghai
chmod 755 /opt/data/shanghai
mkdir /opt/data/shanghai/upload
chown -R shanghai.sftp /opt/data/shanghai/upload
chmod 755 /opt/data/shanghai/upload
systemctl restart sshd
chown命令释义:
通过chown改变文件的拥有者和群组。在更改文件的所有者或所属群组时,可以使用用户名称和用户识别码设置。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员。
[root@localhost ~]# chown -R mysql:mysql /opt/data/shanghai
命令参数:
必要参数:
-c显示更改的部分的信息
-f忽略错误信息
-h修复符号链接
-R处理指定目录以及其子目录下的所有文件
-v显示详细的处理信息
-deference作用于符号链接的指向,而不是链接文件本身chmod命令释义:
-rw------- (600) 只有拥有者有读写权限。
-rw-r--r-- (644) 只有拥有者有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) 只有拥有者有读、写、执行权限。
-rwxr-xr-x (755) 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666) 所有用户都有文件读、写权限。
-rwxrwxrwx (777) 所有用户都有读、写、执行权限。最后结束,试一下本机登录,22为端口,可修改任意,需配置
sftp -P 22 sftpuser@127.0.0.1
新增一个用户和目录
useradd -g sftp -s /bin/false ceshi
psswd ceshi
mkdir –p /opt/data/ceshi
chown -R root:root /opt/data/ceshi
chmod 755 /opt/data/ceshi
mkdir /opt/data/ceshi/upload
chown –R bbp.sftp /opt/data/ceshi/upload
chmod 755 /opt/data/ceshi/upload
增加sshd的配置文件
Match User ceshi
ChrootDirectory /opt/data/ceshi
AllowTcpForwarding no
ForceCommand internal-sftp
systemctl restart sshd