服务器安全配置
1、设置审计
(1)检查是否安装审计软件,配置审计日志权限
# 检查审计软件是否安装
rpm -qa | grep audit
# 创建审计日志保存位置(自定义)
mkdir -p /data/logs/audit
# 创建审计日志
touch /data/logs/audit/audit.log
# 配置审计日志权限
chown -R root.root /data/logs/audit
chmod 600 /data/logs/audit/audit.log
(2)配置审计软件参数
# 建议修改前先备份
cp /etc/audit/auditd.conf /etc/audit/auditd.conf.default
# 修改参数
# 设置日志文件轮询的数目,如果设置为小于 2,则不会循环日志
sed -i 's#num_logs = 5#num_logs = 10#' /etc/audit/auditd.conf
# 更改审计日志位置
sed -i 's#log_file = /var/log/audit/audit.log#log_file = /data/logs/audit/audit.log#' /etc/audit/auditd.conf
# 设置日志文件大小,以兆字节表示的最大日志文件容量
sed -i 's/max_log_file = 6/max_log_file = 500/' /etc/audit/auditd.conf
(3)设置审计规则
centos7 在 /etc/audit/rules.d/audit.rules 中加入如下内容
-w /etc -p wa -k audit_etc
-w /data/etc -p wa -k audit__data_etc
-w /data/soft/nginx/conf -p wa -k audit_nginx # 审计nginx
-w /data/soft/php/etc -p wa -k audit_php # 审计php
-w /data/soft/redis/etc -p wa -k audit_redis # 审计redis
# 设置完成后,需要重启audit服务 : service auditd restart
(4)审计进程保护
# 安装进程保护程序
yum install monit
# 备份配置文件
cp /etc/monitrc /etc/monitrc.default
# 修改配置文件
sed -i 's/set daemon 30/set daemon 3/' /etc/monitrc
echo "set daemon 3" >> /etc/monit.d/auditd
echo "check process auditd with matching \"[^k]auditd\"" >> /etc/monit.d/auditd
echo " START PROGRAM = \"/usr/sbin/service auditd start \" " >> /etc/monit.d/auditd
echo " STOP PROGRAM = \"/usr/sbin/service auditd stop\" " >> /etc/monit.d/auditd
# 验证配置文件
monit -t
# 启动+开机启动
systemctl enable monit
systemctl start monit
2、无操作自动断开终端配置
vim /etc/profile
# 900秒无操作自动断开终端
export TMOUT=900
3、设置密码复杂度
编辑配置文件
vi /etc/pam.d/system-auth
内容:
# 注释下面数据
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
# 添加下面数据
password requisite pam_cracklib.so try_first_pass minlen=8 difok=5 dcredit=-1 lcredit=-1 ucredit=-1 retry=5 type=
minlen=8:最小长度8位
difok=5:新、旧密码最少5个字符不同
dcredit=-1:最少1个数字
lcredit=-1:最少1个小写字符,(ucredit=-1:最少1个大写字符)
ocredit=-1:最少1个特殊字符
retry=1:1次错误后返回错误信息
type=xxx:此选项用来修改缺省的密码提示文本
4、登录密码错误锁定
(1)本地登录限制
说明:3次密码错误,锁定300秒
vim /etc/pam.d/system-auth
# 增加(建议在文件前面增加)
auth required pam_tally2.so deny=3 unlock_time=300
(2)ssh登录限制
说明:3次密码错误,锁定300秒
vi /etc/pam.d/sshd
# 增加(建议第一条规则)
auth required pam_tally2.so deny=3 unlock_time=300
(3)查看锁定用户和解锁用户
# 查看锁定用户状态
pam_tally2 -u [username]
# 手动解锁用户
pam_tally2 -r -r [username]
5、禁止root用户登录
(1)创建用户并配置密码
# 创建用户
useradd test
# 设置密码
passwd test
(2)配置sudo文件,可以不用密码切换至root用户
# sudoers文件设置权限
chmod u+w /etc/sudoers
# 编辑文件
vim /etc/sudoers
# 找到 root ALL=(ALL),在下方添加
test ALL=(ALL)NOPASSWD: ALL
# 编辑完成后,关闭文件权限
chmod u-w /etc/sudoers
(3)登录用户测试
# 切换test用户
su - test
# 在test用户切换至root用户
sudo su -
(4)切换成功后在修改root禁止ssh登录,不然两个用户都没有权限了
# 编辑ssh文件
vim /etc/ssh/sshd_config
# 修改
PermitRootLogin no
# 重启sshd
systemctl restart sshd
正文到此结束
评论
登录后才能发表评论 登录/注册
0评论