您的位置:首页 > 运维架构 > Linux

Linux SSH管理用户登录

2014-02-21 17:27 295 查看
Linux SSH管理用户登录

方法一:(allow 允许)

1、在/etc/pam.d/sshd文件中加入以下行 (注:加入到第一行)

auth required /lib64/security/pam_listfile.so item=user sense=allow file=/etc/sshusers onerr=fail

2、在/etc下建立sshusers文件,编辑这个文件,加入你允许使用ssh服务的用户名即可。

echo "lgh" >> /etc/sshusers

方法二:(deny 拒绝)

1、在/etc/pam.d/sshd文件中加入以下行 (注:加入到第一行)

auth required /lib64/security/pam_listfile.so item=user sense=deny file=/etc/sshd_user_deny_list onerr=succeed

2、在/etc下建立sshd_user_deny_list文件,编辑这个文件,加入你不允许使用ssh服务的用户名即可。

echo "test" >> /etc/sshd_user_deny_list

方法三:(AllowUsers)

1、在/etc/ssh/sshd_config配置文件中设置AllowUsers选项,(配置完成需要重启SSHD服务)格式如下:

AllowUsers lgh test #允许lgh、test帐户通过SSH登录系统。

方法四:(DenyUsers)

1、在/etc/ssh/sshd_config配置文件中设置DenyUsers选项,(配置完成需要重启SSHD服务)格式如下:

DenyUsers zhangsan wangwu #拒绝zhangsan、wangwu帐户通过SSH登录系统。

方法1:在/etc/pam.d/sshd文件中加入

auth required pam_listfile.so item=user sense=allow file=/etc/sshusers onerr=fail

然后在/etc下建立sshusers文件,编辑这个文件,加入你允许使用ssh服务的用户名,重新起动

sshd服务即可。

方法2:pam规则也可以写成deny的

auth required pam_listfile.so item=user sense=deny file=/etc/sshusers onerr=succeed

方法3:在sshd_config中设置AllowUsers,格式如

AllowUsers a b c

重启sshd服务,则只有a/b/c3个用户可以登陆

1,只允许某个IP登录,拒绝其他所有IP

在 /etc/hosts.allow 写:

sshd: 1.2.3.4

在 /etc/hosts.deny 写:

sshd: ALL

用 iptables 也行:

iptables -I INPUT -p tcp --dport 22 -j DROP

iptables -I INPUT -p tcp --dport 22 -s 1.2.3.4 -j ACCEPT

2,禁止某个用户通过ssh登录

在/etc/ssh/sshd_conf添加

AllowUsers 用户名

或者

AllowGroups 组名

或者

DenyUsers 用户名

3,设定登录黑名单

vi /etc/pam.d/sshd

增加

auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/sshd_user_deny_list onerr=succeed

所有/etc/sshd_user_deny_list里面的用户被拒绝ssh登录

在一些生产平台或者做安全审计的时候往往看到一大堆的用户SSH连接到同一台服务器,或者连接后没有正常关闭进程还驻留在系统内。限制SSH连接数与手动断开空闲连接也有必要之举,这里写出Linux下手动剔出其他用户的过程。

1、查看系统在线用户

[root@linuxidc ~]# w

14:30:26 up 38 days, 21:22, 3 users, load average: 0.00, 0.01, 0.05

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

root pts/0 162.16.16.155 14:30 0.00s 0.07s 0.05s w

root pts/1 162.16.16.155 14:30 12.00s 0.01s 0.01s -bash

root tty1 :0 05Dec13 38days 2:16 2:16 /usr/bin/Xorg :0 -nr -verbose -audit 4 -auth /var/run/gdm/auth-for-gdm-LrK8wg/database -noliste

2.查看哪个属于此时自己的终端(我开了两个连接)

[root@linuxidc ~]# who am i

root pts/0 2013-12-31 14:30 (162.16.16.155)

3.pkill掉自己不适用的终端

[root@linuxidc ~]# pkill -kill -t pts/1

4.查看当前终端情况

[root@linuxidc ~]# w

14:31:04 up 38 days, 21:23, 2 users, load average: 0.00, 0.01, 0.05

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

root pts/0 162.16.16.155 14:30 0.00s 0.04s 0.01s w

root tty1 :0 05Dec13 38days 2:16 2:16 /usr/bin/Xorg :0 -nr -verbose -audit 4 -auth /var/run/gdm/auth-for-gdm-LrK8wg/database -noliste

[root@linuxidc ~]#

注意:

如果最后查看还是没有干掉,建议加上-9 强制杀死。

[root@linuxidc ~]# pkill -9 -t pts/1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: