Linux下Wheel用户组介绍
前日遇见一个很想获得的业务,有一台服务器在采取su
root命令切换来root账号时,老是报密码不得法。可是root密码完全是没错的,而且可以应用账号密码直接ssh登录服务器。分外疑忌,如下所示:
[oracle@DB-Server ~]$ more /etc/redhat-release
Red Hat Enterprise Linux Server release 5.7 (Tikanga)
[oracle@DB-Server ~]$ su - root
Password:
su: incorrect password
[oracle@DB-Server ~]$
前面谷歌搜索了有的素材,然后测试、验证后才弄理解了具体原因。在Linux中为了更进一步增进系统的安全性,很有必不可少建立了叁个总指挥的组,只允许这么些组的用户来推行“su
-”命令登录为root用户,而让此外组的用户正是实行“su
-”、输入了不错的root密码,也无从登录为root用户。在UNIX和Linux下,那么些组的名目常常为“wheel”。而以此是在布局文件/etc/pam.d/su里面配备的。如下截图所示:
“auth
required
pam_wheel.so use_uid”
表示禁止非wheel组用户切换成root。所以就应运而生了上边在oracle用户下切换root用户报密码错误的气象
[root@DB-Server ~]# groups oracle
oracle : oinstall dba
[root@DB-Server ~]# cat /etc/pam.d/su
Wheel组概念
Linux下Wheel用户组介绍。Wheel组是Unix系统一个遗留物。当服务器要求做比一般例行维护更尖端的办事的时候,就平日索要用到root权限了。而那一个wheel组正是起家用来综合一些异样的连串用户用的,那在那之中的用户都或多或少地有着root的有个别机能和权杖。也便是说假若你不是wheel组成员,那就从未root身上任何的特权。也因为这么,使用wheel组成员用户来说,会尽量减弱对系统“摧毁性”破坏的票房价值微危机。近日多数的Linux发行版本中,依然保留了wheel这么些组,尽管它早已不像当年布署出来的那么须要了,但是多少老玩家如故忠于这种旧式经典风格的,所以他们平时依旧一如既往让wheel组发挥着昔日的效应。他们是那样做的:在建立他们协调的用户时,将其添加入wheel组中(用wheel组作为用户的主组),可能利用vigr来编辑/etc/group文件,将她们的用户名扩充到wheel组那行的末段。
为啥供给wheel组?
一般在UNIX下,固然大家是系统的管理人,也不推荐用
root 用户登录来展开系统一管理理。一般景况下用普通用户登录,在急需 root
权限履行一些操作时,再 su 登录成为 root 用户。不过,任哪个人只要掌握了
root 的密码,就都得以透过 su 命令来报到为 root 用户——那活脱脱为系统带来了安全隐患。所以,将普通用户插足到
wheel
组,被插手的那几个普通用户就成了组织者组内的用户,但如若不对部分连锁的布署文件进行陈设,这些管理员组内的用户与普通用户也没怎么分别——就像是警察下班后,没有带枪、穿那便衣和普通人(用户)一样,就算她的的确确是警察。这么些对于系统安全确实很有补助。
1:查看wheel组
[root@DB-Server
~]# cat /etc/group | grep wheel
wheel:x:10:root
[root@DB-Server
~]# groups oracle
–查看某些用户的用户组
oracle
: oinstall dba
2:检查日志发现那三个做了su切换的日志消息。
[root@DB-Server
~]# grep su
/var/log/secure | grep -v sudo
Jun
20 11:32:46 DB-Server su: pam_unix(su-l:session): session opened for
user oracle by root(uid=0)
Jun
20 11:32:53 DB-Server su: pam_unix(su-l:auth): authentication failure;
logname=root uid=500 euid=0 tty=pts/2 ruser=oracle rhost= user=root
Jun
20 11:33:07 DB-Server su: pam_unix(su-l:auth): authentication failure;
logname=root uid=500 euid=0 tty=pts/2 ruser=oracle rhost= user=root
Jun
20 11:33:20 DB-Server su: pam_unix(su-l:session): session closed for
user oracle
[root@DB-Server
~]#
焚薮而田办法也相当的粗略,要么将相应的账号进入wheel组,要么注释掉配置文件/etc/pam.d/su中的”auth
required
pam_wheel.so use_uid” 那一行记录。
参考资料:
昨日赶上1个很奇怪的事务,有一台服务器在动用su
root命令切换成root账号时,老是报密码不正确。不过root密码完全是天经地义的,而且能够选择账号密码直接ssh登录服务器。至极狐疑,如下所示:
[oracle@DB-Server ~]$ more /etc/redhat-release
Red Hat Enterprise Linux Server release 5.7 (Tikanga)
[oracle@DB-Server ~]$ su - root
Password:
su: incorrect password
[oracle@DB-Server ~]$
末尾谷歌(Google)搜索了一部分资料,然后测试、验证后才弄领会了切实可行原因。在Linux中为了更进一步增强系统的安全性,很有要求建立了1个管理员的组,只同意那个组的用户来执行“su
-”命令登录为root用户,而让其余组的用户正是实施“su
-”、输入了科学的root密码,也不能够登录为root用户。在UNIX和Linux下,那个组的称谓平日为“wheel”。而那个是在计划文件/etc/pam.d/su里面配备的。如下截图所示:
“auth
required
pam_wheel.so use_uid”
表示禁止非wheel组用户切换来root。所以就出现了上边在oracle用户下切换root用户报密码错误的处境
[root@DB-Server ~]# groups oracle
oracle : oinstall dba
[root@DB-Server ~]# cat /etc/pam.d/su
Wheel组概念
Wheel组是Unix系统2个遗留物。当服务器须要做比平常例行维护更尖端的做事的时候,就时不时必要用到root权限了。而以此wheel组正是确立用来综合一些特种的系统用户用的,那其中的用户都或多或少地拥有root的局地机能和权力。也正是说假如你不是wheel组成员,那就不曾root身上任何的特权。也因为如此,使用wheel组成员用户来说,会尽量减弱对系统“摧毁性”破坏的概率和高危机。方今大多数的Linux发行版本中,照旧保留了wheel那一个组,即便它早已不像当年规划出来的那样须求了,可是有个别老玩家依旧忠于那种旧式经典风格的,所以她们不时如故照旧让wheel组发挥着过去的职能。他们是这么做的:在建立他们协调的用户时,将其添参预wheel组中(用wheel组作为用户的主组),或许利用vigr来编辑/etc/group文件,将她们的用户名扩大到wheel组那行的末尾。
缘何供给wheel组?
一般在UNIX下,尽管我们是系统的组织者,也不引进用
root 用户登录来展开系统一管理理。一般情状下用普通用户登录,在须要 root
权限履行一些操作时,再 su 登录成为 root 用户。不过,任何人一旦通晓了
root 的密码,就都得以因而 su 命令来报到为 root 用户——那的确为系统带来了安全隐患。所以,将普通用户加入到
wheel
组,被投入的这些普通用户就成了协会者组内的用户,但假若不对部分生死相依的布置文件进行安插,那些管理员组内的用户与普通用户也没怎么分歧——仿佛巡警下班后,没有带枪、穿那便衣和老百姓(用户)一样,就算她的的确确是警察。那一个对于系统安全确实很有扶持。
1:查看wheel组
[root@DB-Server
~]# cat /etc/group | grep wheel
wheel:x:10:root
[root@DB-Server
~]# groups oracle
–查看某些用户的用户组
oracle
: oinstall dba
2:检查日志发现那个做了su切换的日记音信。
[root@DB-Server
~]# grep su
/var/log/secure | grep -v sudo
Jun
20 11:32:46 DB-Server su: pam_unix(su-l:session): session opened for
user oracle by root(uid=0)
Jun
20 11:32:53 DB-Server su: pam_unix(su-l:auth): authentication failure;
logname=root uid=500 euid=0 tty=pts/2 ruser=oracle rhost= user=root
Jun
20 11:33:07 DB-Server su: pam_unix(su-l:auth): authentication failure;
logname=root uid=500 euid=0 tty=pts/2 ruser=oracle rhost= user=root
Jun
20 11:33:20 DB-Server su: pam_unix(su-l:session): session closed for
user oracle
[root@DB-Server
~]#
化解措施也很简单,要么将相应的账号进入wheel组,要么注释掉配置文件/etc/pam.d/su中的”auth
required
pam_wheel.so use_uid” 那一行记录。
参考资料:
Linux下Wheel用户组介绍,linuxwheel用户组
前天遇上二个很想拿到的作业,有一台服务器在选用su –
root命令切换来root账号时,老是报密码不得法。但是root密码完全是未可厚非的,而且能够行使账号密码直接ssh登录服务器。非凡疑心,如下所示:
[[email protected] ~]$ more /etc/redhat-release
Red Hat Enterprise Linux Server release 5.7 (Tikanga)
[[email protected] ~]$ su - root
Password:
su: incorrect password
[[email protected] ~]$
背后谷歌(Google)搜索了一些素材,然后测试、验证后才弄通晓了现实原因。在Linux中为了更进一步进步系统的安全性,很有需求建立了一个组织者的组,只同意那么些组的用户来实施“su
-”命令登录为root用户,而让任何组的用户正是实施“su
-”、输入了不易的root密码,也手足无措登录为root用户。在UNIX和Linux下,那一个组的称号平常为“wheel”。而那些是在配备文件/etc/pam.d/su里面配备的。如下截图所示:
“auth required pam_wheel.so use_uid”
表示禁止非wheel组用户切换成root。所以就涌出了地点在oracle用户下切换root用户报密码错误的情形
[[email protected] ~]# groups oracle
oracle : oinstall dba
[[email protected] ~]# cat /etc/pam.d/su
Wheel组概念
Wheel组是Unix系统二个遗留物。当服务器须求做比常常例行维护更尖端的干活的时候,就隔三差五必要用到root权限了。而以此wheel组正是创制用来综合一些特殊的系统用户用的,那其间的用户都或多或少地具有root的一部分机能和权限。也正是说借使你不是wheel组成员,那就平昔不root身上任何的特权。也因为如此,使用wheel组成员用户来说,会尽量缩小对系统“摧毁性”破坏的可能率和高危机。最近超越二分一的Linux发行版本中,如故保留了wheel那一个组,即使它已经不像当年设计出来的那样须要了,但是有个别老玩家依旧忠于那种旧式经典风格的,所以她们时常如故照旧让wheel组发挥着过去的法力。他们是如此做的:在创造他们友善的用户时,将其添出席wheel组中(用wheel组作为用户的主组),大概采取vigr来编辑/etc/group文件,将她们的用户名扩大到wheel组那行的结尾。
何以必要wheel组?
常常在UNIX下,尽管我们是系统的领队,也不推荐用 root
用户登录来拓展系统一管理理。一般景况下用普通用户登录,在须要 root
权限履行一些操作时,再 su 登录成为 root 用户。可是,任何人只要知道了
root 的密码,就都得以通过 su 命令来报到为 root
用户——那活脱脱为系统带来了安全隐患。所以,将普通用户参加到 wheel
组,被投入的这一个普通用户就成了组织者组内的用户,但只要不对有个别相关的布署文件举办配置,那一个管理员组内的用户与普通用户也没怎么分别——就像警察下班后,没有带枪、穿那便衣和普通人(用户)一样,就算她的的确确是警察。这么些对于系统安全确实很有支持。
1:查看wheel组
[[email protected]
~]# cat /etc/group | grep wheel
wheel:x:10:root
[[email protected]
~]# groups oracle –查看有些用户的用户组
oracle : oinstall dba
2:检查日志发现那一个做了su切换的日志新闻。
[[email protected]
~]# grep su /var/log/secure | grep -v sudo
Jun 20 11:32:46 DB-Server su: pam_unix(su-l:session): session opened
for user oracle by root(uid=0)
Jun 20 11:32:53 DB-Server su: pam_unix(su-l:auth): authentication
failure; logname=root uid=500 euid=0 tty=pts/2 ruser=oracle rhost=
user=root
Jun 20 11:33:07 DB-Server su: pam_unix(su-l:auth): authentication
failure; logname=root uid=500 euid=0 tty=pts/2 ruser=oracle rhost=
user=root
Jun 20 11:33:20 DB-Server su: pam_unix(su-l:session): session closed
for user oracle
[[email protected]
~]#
缓解格局也一点也不细略,要么将相应的账号进入wheel组,要么注释掉配置文件/etc/pam.d/su中的”auth
required pam_wheel.so use_uid” 那一行记录。
参考资料:
前些天蒙受3个很想得到的事体,有一台服务器在应用su –
root命令切换成root账号时,老是报密码不得法。…
那篇小说较详细
开辟/etc/pam.d/目录下的别的1个配备文件,当中每行的证实规则都接纳如下所示的语法格式:
Type Control-flag Module-path Module-arguments
个中每行代表贰个独门的求证措施,每一种配置文件能够由三种注解规则相互叠加而成。验证时PAM-API会根据从上往下的办法挨个读取这几个验证规则,并基于在那之中的控制标志做出相应的动作。
required 有个别退步,继续往下,直到全体完结后。
requisite 有个别退步,全数甘休
sufficient 某些成功,全数截止
验证服务模块-用于授予用户访问帐户或劳动的权位。提供此服务的模块能够印证用户并安装用户凭证。
帐户管理模块-用于鲜明当前用户的帐户是不是管用。提供此服务的模块能够检查口令或帐户的失效期以及限时访问。
会话管理模块-用于设置和终止登录会话。
口令管理模块-用于强制实施口令强度规则并施行验证令牌更新。
[root@84-monitor pam.d]# cat sshd
#%PAM-1.0
auth required pam_sepermit.so
auth include password-auth
account required pam_nologin.so
account include password-auth
password include password-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be
executed in the user context
session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth
[root@84-monitor pam.d]# cat password-auth-ac
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
account required pam_unix.so
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account required pam_permit.so
password requisite pam_cracklib.so try_first_pass retry=3
type=
password sufficient pam_unix.so sha512 shadow nullok
try_first_pass use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in
crond quiet use_uid
session required pam_unix.so
[root@84-monitor pam.d]# cat login
#%PAM-1.0
auth [user_unknown=ignore success=ok ignore=ignore default=bad]
pam_securetty.so
auth include system-auth
account required pam_nologin.so
account include system-auth
password include system-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
session optional pam_console.so
# pam_selinux.so open should only be followed by sessions to be
executed in the user context
session required pam_selinux.so open
session required pam_namespace.so
session optional pam_keyinit.so force revoke
session include system-auth
-session optional pam_ck_connector.so
减号的意思是倘使因为系统里从未这几个模块而不可能载入的话,pam库将不记录日志。
linux-PAM (Pluggable Authentication Modules for
linux)是三个共享库套件,它能使当地系统一管理理员选用应用程序怎样验证用户,
大规模的应用程序有login,sshd,su,sudo,passwd
login的pam日志,操作为在本地控制台登录输入用户名与密码
Dec 9 11:34:31 localhost login: pam_unix(login:session): session
opened for user root by LOGIN(uid=0)
Dec 9 11:34:31 localhost login: ROOT LOGIN ON tty1
Dec 9 11:42:06 localhost login: pam_unix(login:session): session
closed for user root
sshd的pam日志,操作为ssh连接3个服务器并输入用户名与密码,查看日志,然后退出
Dec 9 11:38:52 localhost sshd[30208]: Accepted password for root from
192.168.1.88 port 50718 ssh2
Dec 9 11:38:52 localhost sshd[30208]: pam_unix(sshd:session):
session opened for user root by (uid=0)
Dec 9 11:40:13 localhost sshd[30208]: pam_unix(sshd:session):
session closed for user root
su的pam日志,操作为用普通用户登录,然后su -输入root密码,然后退出
Dec 9 11:46:02 localhost su: pam_unix(su-l:session): session opened
for user root by a1(uid=500)
Dec 9 11:47:27 localhost su: pam_unix(su-l:session): session closed
for user root
sudo的pam日志,第壹条是输入普通用户密码错误,第壹条是此普通用户不在sudoers
file里
美高梅手机版4858,Dec 9 11:58:47 localhost sudo: pam_unix(sudo:auth): authentication
failure; logname=a1 uid=500 euid=0 tty=/dev/pts/0 ruser=a1 rhost=
user=a1
Dec 9 11:59:00 localhost sudo: a1 : user NOT in sudoers ;
TTY=pts/0 ; PWD=/home/a1 ; USER=root ; COMMAND=/bin/df -h
Dec 9 14:16:25 localhost sudo: a1 : TTY=pts/0 ; PWD=/home/a1 ;
USER=root ; COMMAND=/sbin/fdisk -l
Dec 9 14:17:03 localhost sudo: a1 : user NOT in sudoers ;
TTY=pts/0 ; PWD=/home/a1 ; USER=root ; COMMAND=/sbin/fdisk -l
修改上面,将a1前的#号去掉,即时生效,然后实施sudo时会成功。
[root@localhost pam.d]# visudo
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
#a1 ALL=/bin/df -h,/sbin/fdisk
passwd的pam日志,操作为普通用户登录,然后passwd改自身的密码,第1条日志是方今密码输入错误,第①条是因为太复杂密码分歧盟,最后一条是设置成功
Dec 9 11:50:22 localhost passwd: pam_unix(passwd:chauthtok):
authentication failure; logname=a1 uid=500 euid=0 tty=pts/0 ruser=
rhost= user=a1
Dec 9 11:55:44 localhost passwd: pam_cracklib(passwd:chauthtok):
pam_get_authtok_verify returned error: Failed preliminary check by
password service
Dec 9 11:57:30 localhost passwd: pam_unix(passwd:chauthtok): password
changed for a1