备忘:Linux服务器安全加固手册
Posted 信安旅途
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了备忘:Linux服务器安全加固手册相关的知识,希望对你有一定的参考价值。
有人说Linux的安全性本来就很高
不用加固都可以
事实真的是这样吗?
我就说近些年Linux爆出的漏洞
19年有sudo提权漏洞
18年有kernel内核提权漏洞
17年有kernel本地内存破坏漏洞
16年有影响极其广泛的脏牛漏洞
当然,相比Windows系统之下
Linux系统安全性确实要高很多
为什么大家都这么说呢?
接下来进入正文,本文是当初学习时的一个备忘笔记分享,有不足之处望师傅们在下方留言。
———— / BEGIN / ————
下面是Linux服务器安全加固的9个方法
0x01 禁止Root用户直接登陆
编辑配置文件
vim /etc/ssh/sshd_config
修改 PermitRootLogin 后面的 yes 为 no , 并且去掉前面的注释符。
编辑账户登录文件
vim /etc/pam.d/login
配置auth required pam_securetty.so
编辑账户信息文件
vim /etc/passwd
使账户信息的shell为/sbin/nologin的为禁止远程登陆,如要允许,则改成可以登陆的shell即可,如/sbin/bash。
然后重启sshd服务 service sshd restart
0x02 设置用户密码复杂度和过期时间
修改/etc/login.defs文件
PASS_MAX_DAYS 90 #密码最长过期天数
PASS_MIN_DAYS 80 #密码最小过期天数
PASS_MIN_LEN 10 #密码最小长度
PASS_WARN_AGE 7 #密码过期警告天数
0x03 登陆超时设置
vim /etc/profile
// 在最后一行加入 TMOUT=300
0x04 系统关键文件权限设置
通过chmod命令对目录的权限进行实际设置
/etc/passwd -- 必须所有用户都可读,Root用户可写 –rw-r--r--
/etc/shadow -- 只有Root可读 –r--------
/etc/group -- 须所有用户都可读,Root用户可写 –rw-r--r--
使用如下命令设置:
chmod 644 /etc/passwd
chmod 600 /etc/shadow
chmod 644 /etc/group
0x05 设置文件与目录缺省权限
在文件 /etc/profile 中设置 umask 027 或 UMASK 027
设置默认权限:
vim /etc/login.defs
在末尾增加 umask 027 或 UMASK 027,将缺省访问权限设置为750。
0x06 设置ssh登录前警告Banner
1) 执行如下命令创建ssh banner信息文件:(使用Root权限执行)
touch /etc/ssh_banner #chown bin:bin /etc/ssh_banner #chmod 644 /etc/ssh_banner
echo " Authorized only. All activity will be monitored and reported "> /etc/ssh_banner
可根据实际需要修改该文件的内容。
2) 修改 /etc/ssh/sshd_config 文件,添加如下行:
Banner /etc/ssh_banner
3) 重启sshd服务:
restart
service sshd restart
0x07 修改ssh默认端口
vi /etc/ssh/sshd_config
// 修改Port 17382
// 重启sshd服务
service sshd restart
0x08 限制用户su到Root
编辑su文件
vim /etc/pam.d/su
// 在开头添加下面两行:
auth sufficient pam_rootok.so
auth required pam_wheel.so group=wheel
// 这表明只有wheel组的成员可以使用su命令成为Root用户。
你可以把用户添加到wheel组,以使它可以使用su命令成为Root用户。
添加方法为:usermod –G wheel username
备注:双方共同运维服务器,且Root密码为我方知晓时设置。
0x09 检查拥有suid和sgid权限的文件
执行命令:
find /usr/bin/chage /usr/bin/gpasswd /usr/bin/wall /usr/bin/chfn /usr/bin/chsh /usr/bin/newgrp /usr/bin/write /usr/sbin/usernetctl /usr/sbin/traceroute /bin/mount /bin/umount /bin/ping /sbin/netreport -type f -perm -04000 -o -perm -02000 -type f -xdev 2 > /dev/null
如果存在输出结果,则使用 chmod 755 文件名 命令修改文件的权限。
例如:chmod a-s /usr/bin/chage
注1:所有软件最好用最新版本。
注2:本文是在当初学习过程中,浏览了各文章总结而出,肯定有摘录的问题,如有冒犯/侵权请联系作者,我们立即删除。
■ Over ■
以上是关于备忘:Linux服务器安全加固手册的主要内容,如果未能解决你的问题,请参考以下文章