账号安全基本措施

目录

一、系统账号清理

 二、密码安全控制

三、命令历史限制

四、使用su命令切换用户

五、限制使用su命令的用户

 六、使用sudo机制提升权限3-1


一、系统账号清理

1 )将非登录用户的 Shell 设为 /sbin/nologin
2)  锁定长期不使用的账号
3 )删除无用的账号
4 )锁定账号文件 passwd shadow
[root@localhost ~]# chattr +i /etc/passwd /etc/shadow ( 锁定文件并查看状态,解锁是 -i)
[root@localhost ~]# Isattr /etc/passwd /etc/shadow
----i----------- letc/passwd
-----i----- /etc/shadow
锁定 /etc/passwd 后无法创建用户

 

解锁

 锁定/etc/shadow后则无法修改用户账户密码

 二、密码安全控制

设置密码有效期
要求用户下次登录时修改密码
适用于新建用户
[root@localhost ~]# vim /etc/login.defs (只能限制新用户)
PASS MAXDAYS 30
适用于已有用户
[root@localhost ~]# chage -M 30 lisi
强制在下次登录时更改密码
[root@localhost ~]# chage -d 0 zhangsan
history 命令可以查之前所输入的命令

 

三、命令历史限制

减少记录的命令条数
注销时自动清空命令历史
终端自动注销
闲置 600 秒后自动注销
[root@localhost ~]# vim ~/.bash_profifile
export TMOUT=600( 这个是命令切换时开始算 )
[root@localhost ~]# vim /etc/profifile (存在设置 history 的命令条数)
HISTSIZE=200 (设置存 200 , 永久性的)
[root@Yocalhost ~]# vim ~/.bash_logout( 一登出就自动清空 )
history -c (清空所有历史记录)
clear
都是刷新命令

 

 清空记录(临时)

 这是永久性的清空(包括清除其.bash_history中的缓存记录,退出重登后则无历史记录了)

 

 

退出后会清除历史记录,但无法清除 .bash_history 中的缓存记录,所以在输 history 时还是会有记

 

 

60 秒无操作则自动关机

 

四、使用su命令切换用户

用途及用法
用途 :Substitute User ,切换用户 格式: su- 目标用户
密码验证
root 任意用户,不验证密码
普通用户 其他用户,验证目标用户的密码
[jerry@localhost ~]$ su - root (带 - 选项表示将使用目标用户的登录 Shell 环境)
口令 :
[root@localhost ~]# whoami
root
su - 用户:进入到宿主目录,拥有读写运行的权利
su 用户:当前目录,很多权限是没有的

五、限制使用su命令的用户

 

 

将允许使用 su 命令的用户加入 wheel
启用 pam_wheel 认证模块
[root@localhost ~]# gpasswd -a tsengyia wheel
tsengyia
正在将用户 “tsengyia" 加入到 "wheel" 组中
默认情况下,任何用户都允许使用 su 命令,从而有机会反复尝试其他用户 ( root) 的登录密码,这
样带来了安全风险。为了加强 su 命令的使用控制,可以借助于 pam_wheel 认证模块,只允许极个
别用
户使用 su 命令进行切换。实现过程如下 : 将授权使用 su 命令的用户添加到 wheel 组,修改 /etc/pam.d/su
认证配置以启用 pam_wheel 认证。
/etc/pam.d/su 文件里设置禁止用户使用 su 命令
vim /etc/pam.d/su
2 # auth suffiffifficient pam_rootok.so
6 #auth required pam_ wheel.so use_ _ uid
a) 以上两行是默认状态 ( 即开启第一行,注释第二行 ) ,这种状态下是允许所有用户间使用 su 命进行切换 的。
b) 两行都注释也是运行所有用户都能使用 su 命令,但 root' 下使用 su 切换到其他普通用户需要输入密码 ;

 

如果第一行不注释,则 root 使用 su 切换普通用户就不需要输入密码 (pam rootok.so 模块的主要作用
是使 uid 0 的用户,即 root 用户能够直接通过认证而不用输入密码。 )
c) 如果开启第二行,表示只有 root 用户和 wheel 组内的用户才可以使用 su 命令 ( 组内人才可用 )

 

 因为zhangliu用户在wheel组中所以可以切换root用户

 

lisi 不在 wheel 组中所以不能切换

 

d) 如果注释第一行,开启第二行,表示只有 whee1 组内的用户才能使用 su 命令, root 用户也被禁用
su 命令

 

[root@localhost ~]# gpasswd -a zhangsan wheel # 添加授权用户 zhangsan
正在将用广 "zhangsan" 加入到 "wheel" 组中
[ root@localhost ~] # grep wheel /etc/group # 确认 wheel 组成员
wheel:x :10 : zhangsan
[ root@localhost ~]# vim /etc/pam.d/su
#%PAM-1.0
auth suffiffifficient pam_ rootok.so
auth required pam_wheel.so use_uid
# 去掉此行开头的 #
启用 pam wheel 认证以后,未加入到 wheel 组内的其他用户将无法使用 su 命令 , 尝试进行切换时将
提示 " 拒绝权限 ,从而将切换用户的权限控制在最小范围内。
普通用户切换登录测试验证
使用 su 命令切换用户的操作将会记录到安全日志 /var/log/secure (只有 root 才能看)文件中 ,可以根 据需要进行查看。

 六、使用sudo机制提升权限3-1

重点:
su 命令的缺点
sudo 命令的用途及用法
用途 : 以其他用户身份 ( root) 执行授权的命令
用法: sudo 授权命令
配置 sudo 授权
visudo 或者 vim /etc/sudoers
记录格式 : 用户 主机名列表 = 命令程序列表
[root@localhost ~]# visudo
...................................................( 可以使用通配符 * 、取反符号 !)
%wheel ALL=NOPASSWD:ALL
jerry localhost=/sbin/ifconfifig
syrianer localhost=/sbin/* ,!/sbin/ifconfifig,!/sbin/route
Cmnd_Alias PKGTOOLS=/bin/rpm,/usr/bin/yum( 类似别名还包括 :User_Alias( 用户 )
Host_Aififia (主机) )
mike localhost=PKGTOOLs 查看 sudo 操作记录
需启用 Defaults logfifile 配置
默认日志文件 : /var/log/sudo
[root@localhost ~]# visudo
Defaults logfifile = "/var/log/sudo"
补充:
sudo 机制提升权限
使用 sudo 机制提升
visudo vi /etc/sudoers ( 此文件的默认权限为 440 ,保存退出时必须执行 ":wq !" 命令来强制操作
语法格式 :
用户 主机名 = 命令程序列表
用户 主机名 =( 用户 ) 命令程序列表
用户 : 直接授权指定的用户名,或采用 "% 组名 " 的形式 ( 授权一个组的所有用户 )
主机名 : 使用此规则的主机名。没配置过主机名时可用 localhost ,有配过主机名则用实际的主机
名, ALL 则代表所有主机。
( 用户 ): 用户能够以何种身份来执行命令。此项可省略,缺省时以 root 用户的身份来运行命令。
命令程序列表 : 允许授权的用户通过 sudo 方式执行的特权命令,需填写命令程序的完整路径,多个命令
之间以逗号 " " 进行分隔。 ALL 则代表系统中的所有命令。
示例:
Tom ALL=/sbin/ifconfifig
Tom 可用 ifconfifig
Jerry localhost=/sbin/* ! /sbin/reboot, ! /sbin/poweroffff Jerry 可用 /sbin/ * 所有,除了 reboot
poweroffff 不能用) # 通配符 "*" 表示所有、取反符号 "!" 表示排除
%wheel ALL=NOPASSWD: ALL # 表示 wheel 组成员 无需验证密码 即可使用 sudo 执行任何
命令
Mike ALL= (root) NOPASSWD: /bin/kill /usr/bin/killall
gpasswd -M lisi wheel # 李四加入 wheel
sudo [ 参数选项 ] 命令
-l :列出用户在主机上可用的和被禁止的命令 : 一般配置好 /etc/sudoers 后,要用这个命令来查看和测试
是不是配置正确的 ;
-v :验证用户的时间戳 : 如果用户运行 sudo 后,输入用户的密码后,在短时间内可以不用输入口令来直
接进行 sudo 操作 : -v 可以跟踪最新的时间戳;
-u :指定以以某个用户执行特定操作 ;
-k :删除时间戳,下一个 sudo 命令要求用求提供密码 ;
案列一
wangliu 用户可以使用 useradd usermod
需求 : wangliu root 用户下的权限 useradd usermod
配置
visudo
wangliu ALL=(root) /usr/sbin/useradd,/usr/sbin/usermod

未给wangliu root权限时是无法创建账号的 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值