linux下禁止某一用户使用ssh登陆但可使用sftp登陆
来源:互联网 发布:ar是什么软件 编辑:程序博客网 时间:2024/06/01 08:54
- 首先修改sshd的配置文件:
在root用户下
输入:vi /etc/ssh/sshd_config
#该行(上面这行)注释掉#Subsystem sftp /usr/lib/openssh/sftp-server# 添加以下几行Subsystem sftp internal-sftp Match group sftp#Match user test#匹配sftp组,如为单个用户可用:Match user 用户名; 设置此用户登陆时的shell设为/bin/false,这样它就不能用ssh只能用sftpChrootDirectory /home/test#指定用户被锁定到的那个目录,为了能够chroot成功,该目录必须属主是root,并且其他用户或组不能写X11Forwarding noAllowTcpForwarding noForceCommand internal-sftp
- 添加用户组和用户
#添加用户组
groupadd sftp
#添加用户
useradd -d /home/test -m -s /bin/false -g sftp test
#修改密码
passwd test
- 重启SSH服务
service sshd restart
或者
/etc/init.d/ssh reload
- 测试ssh
[root@localhost etc]# ssh test@172.19.194.30test@172.19.194.30's password: Write failed: Broken pipe
登陆失败,提示Write failed: Broken pipe错误
- 再测试sftp
[root@localhost etc]# sftp test@172.19.194.30test@172.19.194.30's password: Write failed: Broken pipeCouldn't read packet: Connection reset by peer
同样提示Write failed: Broken pipe
- 按理说此方法应该是靠谱的为什么会提示失败呢,通过查找发现是目录权限配置导致的:
https://my.oschina.net/davehe/blog/100280
目录权限设置上要遵循2点:
ChrootDirectory设置的目录权限及其所有的上级文件夹权限,属主和属组必须是root;
ChrootDirectory设置的目录权限及其所有的上级文件夹权限,只有属主能拥有写权限,权限最大设置只能是755。
修改/home/test 目录权限为755
chmod 755 /home/test -R
- 再次测试
[root@localhost etc]# ssh test@172.19.194.30test@172.19.194.30's password: Could not chdir to home directory /home/test: No such file or directoryThis service allows sftp connections only.Connection to 172.19.194.30 closed.
和预期一致:ssh尝试连接失败。
[root@localhost etc]# sftp test@172.19.194.30test@172.19.194.30's password: Connected to 172.19.194.30.sftp> lsa a.log authorized_keys mysql.sh sftp>
sftp测试连接成功!
阅读全文
1 0
- linux下禁止某一用户使用ssh登陆但可使用sftp登陆
- linux系统下禁止使用ssh登陆,但是可以使用sftp登陆实现详解
- 教你如何配置linux用户实现禁止ssh登陆机器但可用sftp登录!
- 禁止部分用户使用ssh登陆
- linux下禁止用户使用密码方式登陆,而使用密钥方式登陆
- linux下禁止用户使用密码方式登陆,而只使用密钥方式登陆
- Linux下使用SSH登陆github
- ubuntu禁止shell、ssh、sftp登陆,允许ftp登陆
- pexpect使用ssh登陆linux并切换到root用户
- ssh sftp 无法登陆
- Ubuntu开启ssh使用root用户登陆
- ssh 使用root用户直接登陆
- linux下的SSH登陆工具SecureCRT使用
- linux下ssh/scp使用公钥认证方式登陆
- Linux服务器登陆安全设置,并使用ssh keys登陆
- Ubuntu下使用SSH登陆云服务器
- ssh使用key登陆
- Linux用户管理 ----- 禁止用户登陆
- Java爬虫之Jsoup
- Eclipse与Android相关报错问题
- Debain系统修改IP地址步骤
- Android游戏开发之使用AnimationDrable实现Frame动画
- 程序员幽默:66条让你笑爆肚皮的程序员段子
- linux下禁止某一用户使用ssh登陆但可使用sftp登陆
- 设计模式-原型模式
- 项目部署
- 查询oracle中所有用户信息
- C++ 运算符重载和拷贝构造(二)
- Android零基础入门第21节:ToggleButton和Switch使用大全
- 常用IDEA 快捷键
- 利用喜欢的字给小孩取名
- 数组!=指针