总结Centos7系统加固知识点
注意:此教程的云服务器以centos7以上为例,云服务器于阿里云购买
其他服务商的云服务器配置大同小异
建议:linux的服务器不建议安装图形化工具,因为占内存,占带宽,占资源,弊远大于利
手动更新系统:
yum-yupdate
防火墙配置:
servicefirewalldstart//启动防火墙
systemctlenablefirewalld.service//开机自启
selinux配置:
vim/etc/selinux/config
修改:
SELINUX=enforcing//设置强制模式
reboot//重启生效
ssh配置:(防暴力破解)
useraddnormal//创建一个系统用户,设置只能通过这个用户远程登录系统
vim/etc/ssh/sshd_config
修改:
Port2000//端口必须大于1024
Protocol2//没有的话就添加,有就不用
PermitEmptyPasswordsno//禁止空密码登录
X11Forwardingno//禁止端口转发
PermitRootLoginno//禁止root用户登录
MaxAuthTries3//允许三次尝试
LoginGraceTime20//在20秒内不能完成登录,则断开连接
AllowUsersnormal//添加,只允许这个用户远程登录
保存退出,重启ssh
servicesshdrestart
防火墙开启ssh端口
firewall-cmd--zone=public--add-port=2000/tcp--permanent
firewall-cmd--reload
selinux开启ssh端口
yum-yinstallpolicycoreutils-python//安装selinux端口管理工具
semanageport-a-tssh_port_t-ptcp2000//添加端口
semanageport-l|grepssh//查看selinux开启的ssh端口
servicesshdrestart
防止IPSPOOF攻击
vim/etc/host.conf
末尾添加
nospoofon
禁止被ping
vim/etc/sysctl.conf
有则修改,无则添加
net.ipv4.icmp_echo_ignore_all=0
保存配置
sysctl-p
防火墙禁止被ping
firewall-cmd--permanent--add-rich-rule='ruleprotocolvalue=icmpdrop'
firewall-cmd--reload
注意:也可以在阿里云控制台的安全组规则,删除允许ICMP协议的规则
每十多天更新一次系统,删除没有用到的软件,清除yum缓存
crontab-e
以下内容按需修改
00*/10**yumupdate-y
00*/11**yumautoremove-y
00*/12**yumcleanall
防火墙禁止端口扫描(centos7无效,端口还是被扫描出来了,不知道centos7以下是否生效)
iptables-F#清除防火墙策略
iptables-AINPUT-ptcp--tcp-flagsALLFIN,URG,PSH-jDrop
iptables-AINPUT-ptcp--tcp-flagsSYN,RSTSYN,RST-jDrop
iptables-AINPUT-ptcp--tcp-flagsSYN,FINSYN,FIN-jDrop
iptables-AINPUT-ptcp--tcp-flagsSYN,SYN--dport80-jDrop
卸载阿里云的云盾(安骑士),因为服务器本来就内存紧张,云盾弊大于利,卸载
wgethttp://update.aegis.aliyun.com/download/uninstall.sh
chmod+xuninstall.sh
./uninstall.sh
wgethttp://update.aegis.aliyun.com/download/quartz_uninstall.sh
chmod+xquartz_uninstall.sh
./quartz_uninstall.sh
pkillaliyun-service
rm-fr/etc/init.d/agentwatch/usr/sbin/aliyun-service
rm-rf/usr/local/aegis*
注意:卸载完成后,可以删除以上两个脚本文件。如果无法wget到文件,请联系站长索要!
屏蔽云盾IP,云盾会定期扫描服务器模拟黑客攻击
vimshield_ip.sh
添加如下内容:
#!/bin/bash
echo"开始屏蔽云盾扫描云服务器的IP"
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.201.0/28"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.201.16/29"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.201.32/28"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.225.192/29"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.225.200/30"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.225.184/29"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.225.183/32"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.225.206/32"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.225.205/32"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.225.195/32"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="140.205.225.204/32"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="106.11.224.0/26"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="106.11.224.64/26"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="106.11.224.128/26"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="106.11.224.192/26"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="106.11.222.64/26"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="106.11.222.128/26"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="106.11.222.192/26"drop'
firewall-cmd--permanent--add-rich-rule='rulefamily=ipv4sourceaddress="106.11.223.0/26"drop'
firewall-cmd--reload
保存退出
chmod+xshield_ip.sh
./shield_ip.sh
注意:这些IP地址段来源于阿里云官方给的云盾服务器IP,来源:(https://help.aliyun.com/knowledge_detail/37436.html)
编码设置:
vim/etc/locale.conf
删除原有,添加如下内容:
LANG=zh_CN.utf8//中文界面
LC_MESSAGES=en_US.utf8//英文提示reboot//重启生效
进入阿里云控制台,云服务器ECS–>安全组–>配置规则–>添加安全组规则
安全组添加ssh端口,否则外网是无法进入的,包括ftp和apache的端口不在安全组开放的话
下载xshell远程登录软件,normal用户远程登录至linux系统,xshell的使用不再赘述,登录成功后
su-root//提权
注意:在阿里云控制台远程连接登录系统后,不能以任何用户一直处于登录状态,使用系统完后,必须退出用户登录,界面保持在需要输入用户名的界面
如:在阿里云控制台登录(而不是xshell登录),退出用户登录命令
logout//exit也可以
注意:root用户的话必须退出两次才可以
最后:在阿里云控制台–>安全(云盾)–>态势感知–>开启态势感知服务–>设置邮箱或短信提醒