当前位置:七道奇文章资讯系统安全Linux安全
日期:2011-06-15 16:03:00  来源:本站整理

禁止某些用户利用ssh远程登录[Linux安全]

赞助商链接



  本文“禁止某些用户利用ssh远程登录[Linux安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

 vim /etc/pam.d/sshd

 
        在第一行加入 auth       required     pam_listfile.so item=user sense=deny file=/etc/sshdusers onerr=succeed,注意一定要在第一行,因为pam中履行次序是上面优先
 
vim /etc/sshdusers
 
                    在文件中加入root    wp ,root 和wp是两个本地用户
 
service sshd restart
 
在另一个终端测试
 
[root@clone2 ~]# ssh clone1.rhel.com
root@clone1.rhel.com's password: 
Permission denied, please try again.
root@clone1.rhel.com's password: 
Permission denied, please try again.
root@clone1.rhel.com's password: 
Permission denied (publickey,gssapi-with-mic,password).
 
[wp@clone2 ~]$ ssh clone1.rhel.com
wp@clone1.rhel.com's password: 
Permission denied, please try again.
wp@clone1.rhel.com's password: 
Permission denied, please try again.
wp@clone1.rhel.com's password: 
Permission denied (publickey,gssapi-with-mic,password).
两个用户都无法利用ssh了.呵呵,目的到达了
 
 
Pluggable Authentication Modules for Linux 可插拨认证模块
当用户拜候服务器,服务程序将恳求发送到PAM模块,PAM模块按照服务名称在/etc/pam.d目录下挑选一个对应的服务文件,最后按照服务文件的内容挑选具体的PAM模块举行处理.
 
通过ldd查看服务程序在编译时能否利用了libpam.so,决意服务程序能否支持PAM认证.
具体的pam文件放在/lib/security目录下,服务文件放在/etc/pam.d目录下
 
PAM服务文件格局
eg:
auth        required   pam_security.so
auth        required   pam_stack.so service=system-auth
service表示调用子服务文件
 
Module-type:
       auth              查抄用户和密码,分配权限
       account           查抄账号能否过期,能否有权登录
       session           从用户登录成功到退出的会话掌握
       password          掌握用户改密码的历程
control-flag:
       required          要求矣须通过,不然完毕退出
       requisite         假如不通过还可持续向下认证,背面有一通过便可.
       sufficient        通过则不需求向下认证
       optional          可选项
 
常用PAM服务文件
login       -------/etc/pam.d/login
ipop3d      -------/etc/pam.d/pop
vsftpd      -------/etc/pam.d/ftp(编译安装)或/etc/pam.d/vsftpd(rpm安装)
sshd        -------/etc/pam.d/sshd
su          -------/etc/pam.d/su
imap        -------/etc/pam.d/imap
 
/lib/security目录下,各个pam模块的作用,可参考/usr/share/doc/pam-0.99.3.0下的帮忙文件.
相同范例Module-type构成一个仓库.
 
常用PAM模块
pam_access.so            掌握拜候者地址与账号名称
pam_listfile.so          掌握拜候者的账号名称或登录位置
pam_limits.so            掌握为用户分配的资源
pam_rootok.so            对管理员(uid=0)无条件答应通过
pam_userdb.so            设定独立用户账号数据库认证
 
pam_access.so模块的利用―――掌握拜候sshd服务的主机和用户
1.改正需利用这个模块的服务文件,如sshd:   /etc/pam.d/sshd增添
account   required   pam_access.so
2.改正模块的配置文件
/etc/security/access.conf
- : redhat : ALL EXCEPT 192.168.0.            (格局)
3.测试
ssh redhat@192.168.0.22
ssh redhat@127.0.0.1
pam_access.so按照主机、IP、用户、回绝或答应拜候.
 
pam_listfile.so的利用 (比pam_access.so越发具体掌握)
1.首先查看它的帮忙文件,看它的具体格局,参数若何
#less /usr/share/doc/pam-0.99.3.0/txts/README.pam_listfile
item        user,tty,group         阐明列表文件中的内容
sense       allow,deny             回绝或答应文件中的用户
file                               指定一个文件,内容按照item项来增添
onerr       succeed,fail           当模块本身产生错误时,返回的值,如无法翻开file指定的文件,普通设为succeed
2.将模块利用到sshd服务
将上面增添的pam_access.so清掉,然后在/etc/pam.d/sshd中增添(第一行)
auth required   pam_listfile.so   item=user   sense=deny     file=/etc/denyuser onerr=succeed
注意增添的位置次序,不然看不到效果
3.成立编缉列表文件
#echo “redhat” >/etc/denyuser
4.测试
#ssh -l redhat 192.168.0.22   失利
#ssh -l chinaitlab 192.168.0.22 成功
 
#w   显示已登录的用户及近来的一次操作
 
pam_limits.so的利用
1.查看帮忙文件,确认它的配置文件位置,参数情势
#less /usr/share/doc/pam-0.99.3.0/txt/README.pam_limits
<domain>       <type>    <item>    <value>
<domain>         用户名或组名
<type>           soft软限制
                 hard硬限制(不能到达的)
<item>           限制的内容,fsize文件大小,nproc最大进程数,maxlogins用户登录次数
2.将模块利用到sshd服务,改正服务文件
#vi /etc/pam.d/sshd 增添:
session required pam_limits.so
session          掌握用户进程的登录次数,文件大小,通过掌握用户的会话进程来限制用户利用的资源
3.编缉pam_limits.so的配置文件/etc/security/limits.conf
redhat hard     maxlogins    2
限制redhat登录到sshd服务的次数,不能到达2.
4.测试
#ssh -l redhat 192.168.0.22   第1个
#ssh -l redhat 192.168.0.22   第2个
表示同时最多可以有1个redhat用户登录
 
pam_rootok.so的利用
#chfn            改变用户的finger信息
普通用户利用这个号令改正信息时,需求输入密码才能利用,而root用户则不需求.
解析:
#more /etc/pam.d/chfn
第一行为auth sufficient pam_rootok.so
因为chfn的pam服务文件的第一行利用了pam_rootok.so模块,所以当root用户利用chfn时不需考证,不需求再往下,直接通过.
 
pam_userdb.so模块需求一个db数据库储存用户信息,具体若何利用可参考前面的vsftpd虚拟用户.
 
在利用PAM模块时,注意参考README.pam帮忙   以上是“禁止某些用户利用ssh远程登录[Linux安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 禁止某些用户利用ssh远程登录
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .