目标:
1.用户appmon只能使用sftp登录,拒绝ssh、ftp、telnet等方式登录。
2.用户登录默认根目录为/shucang6/mpppoc/common,其父层目录不可见。
3.登录后子目录data01和software内所有文件与子目录,仅允许下载,不允许上传和修改。
4.登录后子目录result内所有文件与子目录,可允许下载、上传和修改操作。
操作方法:
1.使用root用户,新建目录并赋权
mkdir -p /shucang6/mpppoc/common
mkdir -p /shucang6/mpppoc/common
chmod 755 /shucang6
chmod 755 /shucang6/mpppoc
chmod 755 /shucang6/mpppoc/common
2.新增用户组appmon和用户appmon
groupadd appmon
useradd -d /shucang6/mpppoc/common -g appmon appmon
passwd appmon
3.修改sshd配置文件
cp sshd_config sshd_config.bak
vi /etc/ssh/sshd_config
----------------sshd_config----------------------------
#Subsystem sftp /usr/libexec/openssh/sftp-server #注释掉一行,不然修改后启动不了sshd服务
Subsystem sftp internal-sftp #修改为internal-sftp
#文件最后添加如下代码
Match User appmon #指定适用的用户,如何指定用户组改为Match Group
ChrootDirectory /shucang6/mpppoc/common #设置chroot指定用户根目录,要求此目录及所有上级目录所属用户必须为root,且权限为755
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp #指定sftp命令,ssh不可以登录
----------------sshd_config----------------------------
4.重启sshd服务
service sshd restart
5.子目录操作权限设定
mkdir -p /shucang6/mpppoc/common/data01
mkdir -p /shucang6/mpppoc/common/software
chmod 755 /shucang6/mpppoc/common/data01
chmod 755 /shucang6/mpppoc/common/software
mkdir -p /shucang6/mpppoc/common/result
chown appmon:appmon /shucang6/mpppoc/common/result
参考文档: