linux学习-centos7系统安装加固

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

在日常linux安全检查中,收集了一些linux系统安装加固的检查项,可以作为参考

用户账号和环境

检查项

注释:


1

清除了operator、lp、shutdown、halt、games、gopher 帐号 删除的用户组有: lp、uucp、games、dip 其它系统伪帐号均处于锁定SHELL登录的状态

2

验证是否有账号存在空口令的情况: awk -F: ‘($2 == “”) { print $1 }’ /etc/shadow

3

检查除了root以外是否还有其它账号的UID为0: awk -F: ‘($3 == 0) { print $1 }’ /etc/passwd

任何UID为0的账号在系统上都具有超级用户权限.

4

检查root用户的$PATH中是否有’.’或者所有用户/组用户可写的目录

超级用户的$PATH设置中如果存在这些目录可能会导致超级用户误执行一个特洛伊木马

5

用户的home目录许可权限设置为700

用户home目录的许可权限限制不严可能会导致恶意用户读/修改/删除其它用户的数据或取得其它用户的系统权限

6

是否有用户的点文件是所有用户可读写的: for dir in \ `awk -F: ‘($3 >= 500) { print $6 }’ /etc/passwd` do for file in $dir/.[A-Za-z0-9]* do if [ -f $file ]; then chmod o-w $file fi done done

Unix/Linux下通常以”.”开头的文件是用户的配置文件,如果存在所有用户可读/写的配置文件可能会使恶意用户能读/写其它用户的数据或取得其它用户的系统权限

7

为用户设置合适的缺省umask值: cd /etc for file in profile csh.login csh.cshrc bashrc do if [ `grep -c umask $file` -eq 0 ]; then echo “umask 022” >> $file fi chown root:root $file chmod 444 $file done

为用户设置缺省的umask值有助于防止用户建立所有用户可写的文件而危及用户的数据.

8

设备系统口令策略:修改/etc/login.defs文件 将PASS_MIN_LEN最小密码长度设置为12位。

10

限制能够su为root 的用户:#vi /etc/pam.d/su 在文件头部添加下面这样的一行 auth required pam_wheel.so use_uid

这样,只有wheel组的用户可以su到root 操作样例: #usermod -G10 test 将test用户加入到wheel组

11

修改别名文件/etc/aliases:#vi /etc/aliases 注释掉不要的 #games: root #ingres: root #system: root #toor: root #uucp: root #manager: root #dumper: root #operator: root #decode: root #root: marc 修改后执行/usr/bin/newaliases

13

修改帐户TMOUT值,设置自动注销时间 vi /etc/profile 增加TMOUT=600

无操作600秒后自动退出

14

设置Bash保留历史命令的条数 #vi /etc/profile 修改HISTSIZE=5

即只保留最新执行的5条命令

16

防止IP SPOOF: #vi /etc/host.conf 添加:nospoof on

不允许服务器对IP地址进行欺骗

17

使用日志服务器: #vi /etc/rsyslog.conf 照以下样式修改 *.info;mail.none;authpriv.none;cron.none ​​@192​​.168.10.199

这里只是作为参考,需要根据实际决定怎么配置参数

系统访问认证和授权

检查项

注释:

1

限制 at/cron给授权的用户: cd /etc/ rm -f cron.deny at.deny echo root >cron.allow echo root >at.allow chown root:root cron.allow at.allow chmod 400 cron.allow at.allow

Cron.allow和at.allow文件列出了允许允许crontab和at命令的用户名单, 在多数系统上通常只有系统管理员才需要运行这些命令

5

Crontab文件限制访问权限: chown root:root /etc/crontab chmod 400 /etc/crontab chown -R root:root /var/spool/cron chmod -R go-rwx /var/spool/cron chown -R root:root /etc/cron.* chmod -R go-rwx /etc/cron.*

系统的crontab文件应该只能被cron守护进程(它以超级用户身份运行)来访问,一个普通用户可以修改crontab文件会导致他可以以超级用户身份执行任意程序

6

建立恰当的警告banner: echo “Authorized uses only. All activity may be \ monitored and reported.” >>/etc/motd chown root:root /etc/motd chmod 644 /etc/motd echo “Authorized uses only. All activity may be \ monitored and reported.” >> /etc/issue echo “Authorized uses only. All activity may be \ monitored and reported.” >> /etc/issue.net

改变登录banner可以隐藏操作系统类型和版本号和其它系统信息,这些信息可以会对攻击者有用.

7

限制root登录到系统控制台: cat </etc/securetty tty1 tty2 tty3 tty4 tty5 tty6 END_FILE chown root:root /etc/securetty chmod 400 /etc/securetty

通常应该以普通用户身份访问系统,然后通过其它授权机制(比如su命令和sudo)来获得更高权限,这样做至少可以对登录事件进行跟踪

8

设置守护进程掩码 vi /etc/rc.d/init.d/functions 设置为 umask 022

系统缺省的umask 值应该设定为022以避免守护进程创建所有用户可写的文件

SSH安全配置

设置项

注释:

1

配置空闲登出的超时间隔: ClientAliveInterval 300 ClientAliveCountMax 0

Vi /etc/ssh/sshd_config

2

禁用 .rhosts 文件 IgnoreRhosts yes

Vi /etc/ssh/sshd_config

3

禁用基于主机的认证 HostbasedAuthentication no

Vi /etc/ssh/sshd_config

4

禁止 root 帐号通过 SSH 登录 PermitRootLogin no

Vi /etc/ssh/sshd_config

5

用警告的 Banner Banner /etc/issue

Vi /etc/ssh/sshd_config

6

iptables防火墙处理 SSH 端口 # 64906 -A INPUT -s 192.168.1.0/24 -m state –state NEW -p tcp –dport 64906 -j ACCEPT -A INPUT -s 202.54.1.5/29 -m state –state NEW -p tcp –dport 64906 -j ACCEPT

这里仅作为参考,需根据实际需要调整参数

7

修改 SSH 端口和限制 IP 绑定: Port 64906 安装selinux管理命令 yum -y install policycoreutils-python 修改 port contexts(关键),需要对context进行修改 semanage port -a -t ssh_port_t -p tcp 64906 semanage port -l | grep ssh —-查看当前SElinux 允许的ssh端口

Vi /etc/ssh/sshd_config 仅作为参考,需根据实际需要调整参数。

8

禁用空密码: PermitEmptyPasswords no

禁止帐号使用空密码进行远程登录SSH

9

记录日志: LogLevel INFO

确保在 sshd_config 中将日志级别 LogLevel 设置为 INFO 或者 DEBUG,可通过 ​​logwatch​​ or logcheck 来阅读日志。

10

重启SSH systemctl restart sshd.service

重启ssh

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: linuxcentos