大多数Linux服务器并不建议用户直接以root用户进行登录。一方面可以大大减少因失误操作而导致的破坏,另一方面也降低了特权密码在不安全的网络中被泄露的风险。鉴于这些原因,需要为普通用户提供一种身份切换或权限提升机制,以使在必要的时候执行管理任务。

Linux系统提供了su sudo二种命令,其中su命令用来切换用户,sudo命令用来提升权限。

PAM

在su命令之前,需要先了解pam,Linux系统使用su命令存在安全隐患,默认情况下,任何用户都容许使用su命令,从而有机会反复尝试其他用户的登录密码,带来安全风险。

为了加强su命令的使用控制,可以借助于PAM认证模块,只容许个别用户使用su命令进行切换。

PAM验证顺序:service——PAM(配置文件)——pam_*.so

PAM配置文件位置:/etc/pam.d

PAM认证文件位置:/etc/security

su

su命令用来自由切换用户,为了加强su命令的使用控制,可以接触上文中价绍到的pam认证模块,即pam_wheel。

进入pam配置文件,开启认证模块

Linux用户切换与提权

Linux用户切换与提权

Linux用户切换与提权
Linux用户切换与提权

Linux用户切换与提权

sudo

通过su命令可以非常方便切换另一个用户就,但前提条件是必须知道目标用户的登录密码,对于生产环境中的LInux服务器,每多一个人知道特权密码,其安全风险也就增加一分。

而sudo很好解决了这种问题,既可以让普通用户拥有一部分管理权限,又不需要将root密码告知。

配置sodu授权
visodu或者/etc/sudoers

记录格式:用户 主机名列表=命令程序列表

Linux用户切换与提权

Linux用户切换与提权

Linux用户切换与提权

进入sodu配置文件授权

Linux用户切换与提权

Linux用户切换与提权