关于linux:通过linuxPAM实现禁止root用户登陆的方法

2次阅读

共计 1831 个字符,预计需要花费 5 分钟才能阅读完成。

前言

在 linux 零碎中,root 账户是有全副管理权限的,一旦 root 账户明码外泄,对于服务器而言将是致命的威逼;出于平安思考,通常会限度 root 账户的登陆,改为配置普通用户登陆服务器后 su 切换到 root 账户应用,这种形式较为平安,限度 root 账户登陆的形式有多种,本文次要介绍如何通过 linux-PAM 限度账户登陆;

PAM 模块简介

Linux-PAM (Pluggable Authentication Modules for Linux) 可插拔认证模块。Linux-PAM 是一套实用于 Linux 的身份验证共享库零碎,它为零碎中的应用程序或服务提供动静身份验证模块反对。它提供了对所有服务进行认证的地方机制,在 Linux 中,PAM 是可动静配置的,本地系统管理员能够自由选择应用程序如何对用户进行身份验证。

由此可知 PAM 能够对 linux 零碎的账户做验证,咱们通过 PAM 模块能够对 linux 零碎内的账户进行登陆限度;PAM 下的功能模块较多,此次次要讲述通过 pam_listfile.so 模块限度账户登陆的办法

pam_listfile.so 模块能够实现基于 ” 用户 / 组,主机名 /IP,终端 ” 的访问控制。访问控制依附 PAM 配置文件中的管制选项和一个自定义的配置文件来实现的。而且除了针对上述拜访源的管制之外,还可能管制到 ruser,rhost,所属用户组和登录 shell。

访问控制的配置办法

上面说下基于用户的访问控制的配置办法:

/etc/pam.d/ 目录下是 PAM 配置文件所在门路,/etc/pam.d/sshd 和 /etc/pam.d/login 两个文件是本次要批改的文件;/etc/pam.d/sshd 对应的是 sshd 登陆的配置文件,/etc/pam.d/login 对应的是治理终端登陆的配置文件;

咱们先在 /etc/pam.d/sshd 文件中减少一行如下信息:

auth  required  pam_listfile.so item=user sense=deny file=/etc/pam.d/denyuser onerr=succeed

此行示意用户通过治理终端登陆主机的时候,会调用 pam\_listfile.so 模块来验证用户是否能够登录;pam\_listfile.so 中配置的 item=user 示意基于用户;sense=deny 示意回绝;file=/etc/pam.d/denyuser 则是定义了一个 denyuser 的文件;此行的含意是 denyuser 文件中的用户回绝通过 ssh 零碎;

此处对 pam_listfile.so 模块配置做下阐明:

格局分为五个局部:别离是 item、sense、file、onerr 以及 apply。

其中:

item=[tty|user|rhost|ruser|group|shell]__:定义了对哪些列出的指标或者条件采纳规定,显然,这里能够指定多种不同的条件。

onerr=succeed|fail__:定义了当呈现谬误(比方无奈关上配置文件)时的缺省返回值。

sense=allow|deny__:定义了当在配置文件中找到符合条件的我的项目时的管制形式。如果没有找到符合条件的我的项目,则个别验证都会通过。

file=filename__:用于指定配置文件的全门路名称。

_apply=user|@group__:定义规定实用的用户类型(用户或者组)_。

测试成果

咱们在云主机中增加此配置测试下成果;

编辑下 /etc/pam.d/sshd 文件增加上述信息:(信息须要增加到 auth 的第一行之前,否则不会失效)

在 /etc/pam.d 目录下创立 denyuser 文件,并写入 root;

之后测试下应用 root 账户 ssh 登录云主机,提醒明码被回绝;

在服务器内查看 /var/log/secure 文件,日志中显示的登陆谬误为:

依据日志能够看出 root 登陆不上是被 pam_listfile 限度了;

如果想限度其余用户,能够在 denyuser 文件中将要限度的用户名增加下,增加后对应用户的登陆也会被限度;

上面在通过在 /etc/pam.d/login 配置文件增加限度,login 文件管制的是终端登陆,云主机通过控制台的近程连接功能登陆属于终端登陆;

调整后通过近程终端 vnc 连贯后,应用 root 账户登陆无奈失常;阐明配置曾经失效。

以上是通过 linux-PAM 的 pam_listfile.so 模块限度账户登陆的办法,咱们能够灵活运用此模块限度主机内的账户登陆状况,增强主机的安全性。

作者:马寅初

正文完
 0