系统安全及应用

本文详细介绍了Linux系统的账号安全控制,包括系统账号清理、密码安全控制和PAM安全认证。此外,还讨论了系统引导和登录控制,如BIOS引导设置、终端及登录权限的限制。同时,文章提及了弱口令检测工具John the Ripper和网络扫描工具NMAP的使用,以提升系统安全性。
摘要由CSDN通过智能技术生成

目录

1.账号安全控制

1.1 基本安全措施

1.1.1 系统账号清理

 1.1.2 密码安全控制

1.1.3 命令历史、自动注销

1.2 用户切换与提权

1.2.1 su命令——切换用户

1.2.3 sudo命令——提升执行权限

1.3 PAM安全认证

2.系统引导和登录控制

2.1 开关机安全控制

2.1.1 调整BIOS引导设置

2.1.2 禁止Ctrl+Alt+Del快捷键重启

2.1.3 限制更改GRUB引导参数

2.2 终端及登录控制

2.2.1 减少开放的tty终端个数

2.2.2 禁止root用户登录

2.2.3 禁止普通用户登录

3.弱口令检测、端口扫描

3.1 弱口令检测——John the Ripper

3.2 网络扫描——NMAP

1.账号安全控制

1.1 基本安全措施

1.1.1 系统账号清理

①将非登陆用户的shell设为/sbin/nologin

usermod -s /sbin/nologin

②锁定长期不使用的账号:

usermod -L 用户名

passwd -l 用户名

passwd -S 用户名

③删除无用的账号:userdel 【-r】

④锁定账号文件passwd、shadow

chattr +i /etc/passwd /etc/shadow

lsattr /etc/passwd /etc/shadow

chattr -i /etc/passwd /etc/shadow

常见的非登录用户包括bin、daemon、adm、lp、mail、nobody、apache、mysql、dbus、ftp、gdm、haldaemon等。为了确保系统安全,这些用户的登录shell通常是/sbin/nologin,表示禁止终端登录,应确保不被人为改动。

  

 usermod -L zhangsan //锁定账号

passwd -S zhangsan //查看账号状态

usermod -U zhangsan //解锁账号

 chattr +i /etc/passwd /etc/shadow //锁定文件

lsattr /etc/passwd etc/shadow //查看为锁定状态

chattr -i /etc/passwd /etc/shadow //解锁文件
lsattr /etc/passwd /etc/shadow //查看为解锁状态

在账号文件被锁定的情况下,内容不允许变更,因此无法添加、删除账号,也不能更改用户密码、登录shell、宿主目录等属性信息。


 

 1.1.2 密码安全控制

为了降低密码被破解的风险,应该定期更改密码,避免长期使用同一个密码。管理员可以在服务器端限制用户密码最大有效天数,对于密码已经过期的用户,登录时将被要求重新设置密码,否则拒绝登录。

例:将密码有效期设为30天

[root@localhost ~]#vi /etc/login.defs //适用于新建的用户
PASS_MAX_DAYS 30
[root@localhost ~]#chage -M 30 lisi //适用于已有的lisi用户

例:强制要求用户zhangsan下次登录时重设密码

[root@localhost ~]#chage -d 0 zhangsan
Localhost login:zhangsan
password:
You are required to change your password immediately(root enforced)
Changing password for zhangsan.
(current) UNIX password:
New password:
Retype new password:

1.1.3 命令历史、自动注销

shell环境的命令历史机制为用户提供了极大的便利,但另一方面也给用户带来了潜在的风险。只要获得用户的命令历史文件,该用户的命令操作过程将会一览无余,如果曾经在命令行输入明文的密码,则无意之中服务器的安全壁垒又多了一个缺口。

Bash终端环境中,历史命令的记录条数由变量HISTSIZE控制,默认为1000条。通过修改/etc/profile文件中的HISTSIZE变量值,可以影响系统中的所有用户。

例:设置最多只记录200条历史命令

[root@localhost ~]#vi /etc/profile  //适用于新登录用户
...... //省略部分内容
HISTSIZE=200
[root@localhost ~]#export HISTSIZE=200  //适用于当前用户

还可以修改用户宿主目录中的~ /.bash_logout文件,添加清空历史命令的操作语句。

[root@localhost ~]#vi ~/.bash_logout
history -c
clear

Bash终端中,还可以设置闲置超时时间,由变量TMOUT来控制,默认单位为秒。

[root@localhost ~]#vi /etc/profile  //适用于新登录用户
......  //省略部分内容
export TMOUT=600
[root@localhost ~]#export TMOUT=600  //适用于当前用户

注意:当正在执行程序代码编译、修改系统配置等耗时较长的操作时,应避免设置TMOUT变量。必要时可以执行“unset TMOUT”命令取消TMOUT变量设置。

1.2 用户切换与提权

1.2.1 su命令——切换用户

使用su命令,可以切换为指定的另一个用户,从而具有该用户的所有权限。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值