Linux系统安全设置
- 锁定zhangsan用户
passwd -l zhangsan
或者在张三用户的密码字符串前添加“!”
- 将用户密码的最大有效天数限制为30天
vi /etc/login.defs
PASS_MAX_DAYS 30或者 chage -M 30 zhangsan
- 指定下次登录需更改密码
chage -d 0 zhangsan
或者将shadow文件中张三LAST DAY域(冒号:分割的第三列)值设为0 - 限制用户密码的最小长度 在linux中,主要基于cracklib模块检查用户密码的复杂性和安全性。
vi /etc/pam.d/system-auth
password required pam_cracklib.so try_first_pass retry=3 minlen=2
- 历史命令
vi /etc/profile
HISTSIZE=100
- 超时配置
vi /etc/profile
export TMOUT=600
- 编写shell脚本,检查系统中新增加的带有suid或者sgid位权限的程序文件。 1)在系统处于干净状态时,建立合法suid/sgid文件的列表,作为是否有新增可疑suid文件的比较依据。
find / -type f -perm +600 > /etc/sfilelist
chmod 600 /etc/sfilelist
2)建立chksfile文件,与sfilelist比较,输出新增的suid/sgid属性的文件。
vi /usr/local/chksfile
#!/bin/bash
OLD_LIST=/etc/sfilelist
for i in find / type f – perm +600
do
grep -F “$i” $OLD_LIST > /dev/null
[ $? -ne 0 ] && ls -lh $i
done
其中,grep命令的“-F”选项表示在查找时将一整行内容作为字符串进行匹配;find命令添加的-perm +600,表示查找设置的set-uid(权限数为4)或者set-gid(权限数为6)位的文件。 8. grub引导菜单加密
vi /boot/grub/grub.conf
password 123456
若添加在第一个title。。。之前,则在仅需要变更grub引导参数时才需要密码;若添加在root(hd0,0)行之前,则进入该系统是否即需提供密码。 加密 grub-md5-crypt
- 通过nologin文件禁止普通用户登录系统
touch /etc/nologin
- 更改系统登录提示,隐藏内核版本信息。
vi /etc/issue //修改为以下内容
Welcome to Server.
cp -f /etc/issue /etc/issue.net
- 使用pam_access认证控制用户登录地点 使用pam_access模块,可以按具体的用户名、登录地点进行控制,认证读取/etc/security/access.conf配置文件,该文件的配置行依次由权限、用户、来源组成,冒号分割。 权限部分 + 、 – ,分别表示允许,拒绝。 用户部分为用户名,若为多个用户则使用空格分开,若为一个组的用户,则使用@组名的形式。ALL表示所有用户。 来源表示用户从哪个终端或远程主机登录,可以使用tty1、127.0.0.1、192.168.1.0、24等形式表示,多个来源地点之间使用空格分开。 禁止除了root以外的用户从tty1终端登录
vi /etc/pam.d/login
account required pam_access.so
vi /etc/security/access.conf
– : ALL EXCEPT root : tty1
禁止root用户从192.168.1.0/24、172.0.0.0/8网络中远程登录。
vi /etc/pam.d/sshd
account required pam_access.so
vi /etc/security/access.conf
– : root : 192.168.1.0/24 172.0.0.0/8