linux怎么限制用户ssh登录允许sftp登录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux怎么限制用户ssh登录允许sftp登录相关的知识,希望对你有一定的参考价值。

你可以用想限制的用户登陆上去,然后新建一个sftp文件,并登陆成功,把这个文件拷给你想授权的人,放到的xmanager下,就能直接登陆!

默认sftp文件保存在:

C:\\Users\\admin\\AppData\\Roaming\\NetSarang\\Xftp\\Sessions\\


参考技术A

步骤:

1.vi/etc/ssh/sshd_config

2.修改,不存在就增加
# 禁止用户user1登陆,多个用户空格分隔
DenyUsers user1
# 禁止用户组group1的所有用户登录,多个空格分隔
DenyGroups group1

3.保存配置重启:
/etc/rc.d/init.d/sshd restart

参考技术B 配置sshd_config
把使用密码登陆和使用root登陆都改为no,但是这样不能远程用密码登陆了,只能通过rsa密钥登陆
sftp是ssh的子系统,不能关闭ssh服务

SFTP将用户登录限制在某一个目录

sftp将W用户登录限制在/file/w目录

(1)添加用户并且设置密码
useradd -d /w -s /bin/false W
passwd W

(2)修改/etc/ssh/sshd_config文件
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp

Match User W
ChrootDirectory /file/
AllowTCPForwarding no
X11Forwarding no
ForceCommand internal-sftp

(3)修改权限并且检查
chmod -R 755 /file/w
chown root:root /file
ll -ld /file/w/
drwxr-xr-x. 3 root root 21 Aug 8 09:51 /file/w/

(4)重新启动sshd服务
systemctl restart sshd

(5)在本地进行测试
sftp [email protected]
[email protected]‘s password:
Connected to localhost.
sftp> pwd
Remote working directory: /w
sftp> cd ..
sftp> pwd
Remote working directory: /
sftp> exit

注意:在clinet登录后, 提示没有权限, 请检查server端是否开了selinux, 如果开启selinux, 可以将其关闭后, 再次重启sshd服务

以上是关于linux怎么限制用户ssh登录允许sftp登录的主要内容,如果未能解决你的问题,请参考以下文章

linux SFTP用户创建 不允许用户登录,并且连接只允许在制定的目录下进行操作

用ChrootDirectory限制SFTP登录的用户只能访问指定目录且不能进行ssh登录

root用户ssh可以登录,FileZilla sftp不能登录链接CentOS解决办法

Linux下sftp配置之密钥方式登录

Linux设置SFTP服务用户目录权限

Linux设置SFTP服务用户目录权限