1.1 锁定系统多余自建账号
锁定系统自带多余账号,执行:
passwd -l bin
passwd -l sys
passwd -l adm
passwd -l uucp
passwd -l lp
passwd -l nuucp
passwd -l hpdb
passwd -l www
passwd -l daemon
passwd -l amandabackup
passwd -l postgres
通过cat /etc/passwd查看
1.2 账号设置口令策略
编辑login.defs文件
vi /etc/login.defs
PASS_MAX_DAYS 90 新建用户密码最长使用天数
PASS_MIN_DAYS 0 新建用户密码最短使用天数
PASS_WARN_AGE 7 新建用户密码到期提前提醒天数
PASS_MIN_LEN 8 最小密码长度8
1.3 禁用root以外的超级用户
cat /etc/passwd 查看UID=0的用户,执行passwd -l 锁定超级账户。
1.4 用户远程登录限制
限制终端连接数
vi /etc/securetty
注释掉4vc/5vc/6vc/7vc/8vc/9vc/10vc/11vc/tty7tty8tty9tty10tty11
执行chkconfig --list,关闭不需要要的服务:
chkconfig --level 2345 avahi-daemon off
chkconfig --level 2345 bluetooth off
chkconfig --level 2345 cpuspeed off
chkconfig --level 2345 cups off
chkconfig --level 2345 firstboot off
chkconfig --level 2345 hidd off
chkconfig --level 2345 pcscd off
chkconfig --level 2345 restorecond off
chkconfig --level 2345 saslauthd off
chkconfig --level 2345 setroubleshoot off
chkconfig --level 2345 xfs off
使用SSH 进行管理
ps -aef|grep grep sshd检查ssh登陆服务是否开启。
开启服务service sshd start
限制root用户直接ssh登陆
禁止普通用户su到root用户的方法:
1. 只允许wheel组用户和root可以使用su到root
# usermod -g wheel user01
# vim /etc/pam.d/su
auth           required        pam_wheel.so use_uid
systemctl restart sshd
配置系统日志策略配置文件
ps-ef |grep syslog 确认 syslog 是否启用
cat /etc/syslog.conf 查看 syslogd 的配置 并确认日志文件是否存在
5、主机加固文档
一、windows系统加固配置内容
| 
 编号  | 
 检查点  | 
 安全配置信息  | 
 备注  | 
| 
 1  | 
 配置BIOS管理员密码  | 
 加固方式: 建议设置BIOS开机密码 参考操作: 首先在开机时进入BIOS,按“F2”进入BIOS界面,选择“security”菜单下的“Set AdministratorPassword”设置开启密码(此密码需满足复杂度要求,10位以上,字母+数字组合);按“F10”保存重启  | 
 
  | 
| 
 2  | 
 使用用户名/密码对登陆用户进行身份鉴别  | 
 加固方式: 建议设置登陆操作系统的账号/密码 参考操作: 设置登陆操作系统的账号/密码(此密码需满足复杂度要求,10位以上,字母+数字组合)  | 
 
  | 
| 
 3  | 
 主机开启“密码必须符合复杂性要求”  | 
 加固方式: 建议开启密码复杂度要求,至少10个字符,包括大小写字母,保存周期为180天 参考操作: 运行“gpeit.msc”计算机配置->windows设置->安全设置->账户策略->密码策略: 密码必须符合复杂性要求->启用 密码长度最小值->10 密码最长使用期限(可选)->180天 密码最短使用期限->1天 强制密码历史->5次  | 
 
  | 
| 
 4  | 
 主机开启登陆失败处理功能  | 
 加固方式: 建议开启登陆失败处理功能 参考操作: 运行“gpeit.msc”计算机配置->windows配置->安全设置->账户策略->账户锁定策略: 复位账户锁定计数器->3分钟 账户锁定时间->5分钟 账户锁定阀值->5次无效登陆  | 
 
  | 
| 
 5  | 
 禁止开启默认共享及禁用多余的服务  | 
 加固方式: 建议禁止开启C、D等默认共享,禁用系统多余服务Alerter、Clipbook、Computer Browser、Terminal Service(若不需要远程桌面进行管理) 参考操作: 运行“compmgmt.msc”在计算机管理->服务和应用程序->找到相关服务->将服务停止,并将启动类型设置为“禁止”  | 
 
  | 
| 
 6  | 
 应用及删除多余的、过期的账户,避免共享账户的存在  | 
 加固方式: 建议删除或禁用系统多余的、过期的账户 参考操作: 运行“compmgmt.msc”在计算机管理->本地用户和组->用户:禁用guest、internet来宾账户等多余账户  | 
 
  | 
| 
 7  | 
 主机审计记录用户登录行为,对系统相关安全进行审计  | 
 加固方式: 建议开启全部审计日志功能,包括成功失败的审计 参考操作: 运行“gpedit.msc”在计算机配置->windows设置->安全设置->本地策略->审核策略,建议至少配置为: 审核账号登陆事件(成功,失败) 审核账号管理(成功,失败) 审核目录服务访问(没有定义) 审核登录事件(成功,失败) 审核对象访问(成功,失败) 审核策略更改(成功) 审核特权使用(成功,失败) 审核过程跟踪(成功,失败) 审核系统事件(成功)  | 
 
  | 
| 
 8  | 
 应保护审计记录,避免受到未预期的删除、修改或覆盖等  | 
 加固方式: 建议日志最大容量满足要求:应用日志50M-1024M、安全日志50M-1024M、系统日志50M-1024M;日志要求保存2个月以上 参考操作: 运行“compmgmt.msc”在计算机管理->事件查看器->windowns日志:打开应用程序、安全、系统日志的属性->日志最大大小设置为:50-100M,选择“俺需要覆盖事件”  | 
 
  | 
| 
 9  | 
 根据安策略设置登录终端的操作超时锁定  | 
 加固方式: 建立设置操作超时锁定时间,及屏保时间 参考操作: 运行“gpedit.msc”检查计算机配置->管理模板->windows组件->终端服务->会话,开启“为断开的会话设置时间限制”;屏幕保护时间为5-10分钟  | 
 
  | 
二、linux系统加固配置内容
| 
 编号  | 
 检查点  | 
 安全配置信息  | 
 备注  | 
| 
 1  | 
 禁止转发ICMP重定向报文  | 
 加固建议: 执行sysctl -w net.ipv4.conf.all.send_redirects=0,再查看/etc/sysctl.conf中是否存在net.ipv4.conf.all.send_redirects=0,不存在则添加 执行sysctl -w net.ipv4.conf.default.send_redirects=0,再查看/etc/sysctl.conf中是否存在net.ipv4.conf.default.send_redirects=0,不存在则添加  | 
 
  | 
| 
 2  | 
 禁止包含源路由的ip包  | 
 加固建议: 执行sysctl -w net.ipv4.conf.all.accept_redirects=0,再查看/etc/sysctl.conf中是否存在net.ipv4.conf.all.accept_redirects=0,不存在则添加 执行sysctl -w net.ipv4.conf.default.accept_redirects=0,再查看/etc/sysctl.conf中是否存在net.ipv4.conf.default.accept_redirects=0,不存在则添加  | 
 
  | 
| 
 3  | 
 禁止转发安全ICMP重定向报文  | 
 执行sysctl -w net.ipv4.conf.all.secure_redirects=0,再查看/etc/sysctl.conf中是否存在net.ipv4.conf.all.secure_redirects=0,不存在则添加 执行sysctl -w net.ipv4.conf.default.secure_redirects=0,再查看/etc/sysctl.conf中是否存在net.ipv4.conf.default.secure_redirects=0,不存在则添加  | 
 
  | 
| 
 4  | 
 启用反转地址路径过滤  | 
 加固建议: 执行sysctl -w net.ipv4.conf.all.rp_filter=1,再查看/etc/sysctl.conf中是否存在net.ipv4.conf.all.rp_filter=1,不存在则添加 执行sysctl -w net.ipv4.conf.default.rp_filter=1,再查看/etc/sysctl.conf中是否存在net.ipv4.conf.default.rp_filter=1,不存在则添加  | 
 
  | 
| 
 5  | 
 禁止ipv6路由广播  | 
 加固建议: 执行sysctl -w net.ipv6.conf.all.accept_ra=0,再查看/etc/sysctl.conf中是否存在net.ipv6.conf.all.accept_ra=0,不存在则添加 执行sysctl -w net.ipv6.conf.default.accept_ra=0,再查看/etc/sysctl.conf中是否存在net.ipv6.conf.default.accept_ra=0,不存在则添加  | 
 
  | 
| 
 6  | 
 禁止ipv6路由重定向  | 
 加固建议: 执行sysctl -w net.ipv6.conf.all.accept_redirects=0,再查看/etc/sysctl.conf中是否存在net.ipv6.conf.all.accept_redirects=0,不存在则添加 执行sysctl -w net.ipv6.conf.default.accept_redirects=0,再查看/etc/sysctl.conf中是否存在net.ipv6.conf.default.accept_redirects=0,不存在则添加  | 
 
  | 
| 
 7  | 
 密码授权新密码与老密码不能重复  | 
 加固建议: 在/etc/pam.d/password-auth中添加:password sufficient pam_unix.so remember=3 ,remember的值表示此次设置密码与过去3次不同 在/etc/pam.d/system-auth中添加:password sufficient pam_unix.so remember=3 ,remember的值表示此次设置密码与过去3次不同  | 
 
  | 
| 
 8  | 
 rsyslog日志文件权限配置  | 
 加固建议: 在/etc/rsyslog.conf中添加:  | 
 
  | 
| 
 9  | 
 禁止root直接登录  | 
 加固建议: 注意:在修改此项之前,请务必创建一个可登陆账号;在/etc/ssh/sshd_config中PermitRootLogin的值:yes设置为no  | 
 
  | 
| 
 10  | 
 默认登录端口检测  | 
 加固建议: 在/etc/ssh/sshd_config中取消Port 22注释符号#,并修改22为其它值  | 
 
  | 
| 
 11  | 
 SSHD强制使用V2安全协议  | 
 加固建议: 在/etc/ssh/sshd_config中取消Protocol注释符号#  | 
 
  | 
| 
 12  | 
 SSHD仅记录ssh用户登录活动  | 
 加固建议: 在/etc/ssh/sshd_config中取消LogLevel INFO注释符号# 在/etc/ssh/sshd_config中取消MaxAuthTries注释符号#,设置自定义最大密码尝试失败次数  | 
 
  | 
| 
 13  | 
 清理主机远程登录历史主机记录  | 
 加固建议: 在/etc/ssh/sshd_config中取消IgnoreRhosts yes注释符号#  | 
 
  | 
| 
 14  | 
 禁止主机认证登录  | 
 加固建议: 在/etc/ssh/sshd_config中取消HostbasedAuthentication no注释符号#  | 
 
  | 
| 
 15  | 
 禁止空密码用户登录  | 
 加固建议: 在/etc/ssh/sshd_config中取消PermitEmptyPasswords no注释符号#  | 
 
  | 
| 
 16  | 
 禁止用户修改环境变量  | 
 加固建议: 在/etc/ssh/sshd_config中取消PermitUserEnvironment no注释符号#  | 
 
  | 
| 
 17  | 
 设置输入密码间隔时间  | 
 加固建议: 在/etc/ssh/sshd_config中取消LoginGraceTime前注释符,同时设置输入密码时间间隔秒数  | 
 
  | 
| 
 18  | 
 设置用户密码最小长度  | 
 加固建议: 在/etc/security/pwquality.conf中取消minlen注释符号#,同时设置最小密码长度建议10位以上  | 
 
  | 
| 
 19  | 
 设置用户密码数字位数  | 
 加固建议: 在/etc/security/pwquality.conf中取消dcredit注释符号#,同时设置为负数建议-1最少包含1位数字  | 
 
  | 
| 
 20  | 
 设置用户密码大写字母位数  | 
 加固建议: 在/etc/security/pwquality.conf中取消ucredit注释符号#,同时设置为负数建议-1最少包含1位大写字母  | 
 
  | 
| 
 21  | 
 设置用户密码小写字母位数  | 
 加固建议: 在/etc/security/pwquality.conf中取消lcredit注释符号#,同时设置为负数建议-1最少包含1位小写字母  | 
 
  | 
| 
 22  | 
 设置用户密码特殊字符位数  | 
 加固建议: 在/etc/security/pwquality.conf中取消ocredit注释符号#,同时设置为负数建议-1最少包含1位特殊字符  | 
 
  | 
| 
 23  | 
 强制密码失效时间  | 
 加固建议: 在/etc/login.defs 设置强制密码失效时间,建议值365  | 
 
  | 
| 
 24  | 
 密码修改最小间隔时间  | 
 加固建议: 在/etc/login.defs 设置密码修改最小间隔时间,建议值7  | 
 
  | 
| 
 25  | 
 检查/boot/grub2/grub.cfg文件ACL属性  | 
 加固建议: 执行:chmod 0600 /boot/grub2/grub.cfg  | 
 
  | 
| 
 26  | 
 检查/etc/crontab文件ACL属性  | 
 加固建议: 执行:chmod 0600 /etc/crontab  | 
 
  | 
| 
 27  | 
 检查/etc/cron.hourly文件ACL属性  | 
 加固建议: 执行:chmod 0600 /etc/cron.hourly  | 
 
  | 
| 
 28  | 
 检查/etc/cron.daily文件ACL属性  | 
 加固建议: 执行:chmod 0600 /etc/cron.daily  | 
 
  | 
| 
 29  | 
 检查/etc/cron.weekly 文件ACL属性  | 
 加固建议: 执行:chmod 0600 /etc/cron.weekly  | 
 
  | 
| 
 30  | 
 检查/etc/cron.monthly 文件ACL属性  | 
 加固建议: 执行:chmod 0600 /etc/cron.monthly  | 
 
  | 
| 
 31  | 
 检查/etc/cron.d 文件ACL属性  | 
 加固建议: 执行:chmod 0600 /etc/cron.d  | 
 
  | 
原文:https://www.cnblogs.com/guoyabin/p/13084238.html