安装CentOS 7后必做的安全加固
刚装好的CentOS 7系统存在很大风险,需要立刻进行安全加固。
1. 用root账号通过SSH登录服务器
通常使用SSH远程登录服务器进行日常维护。在windows系统下可以用PuTTY软件,Linux和MAC系统内置SSH客户端功能直接在终端(terminal)输入相关指令。 SSH首次登录服务器,会提示是否接受该服务器的加密公钥,请选择“是”(yes)。
2. 修改root账号的密码(可选)
如果root的密码是安装时自动生成无法确认安全,则必须立刻修改root密码。指令如下:
passwd root
3. 新增一个普通账号并设定密码
该账号主要用于SSH登录服务器进行管理,root账号通常禁止远程SSH登录。指令如下:
useradd ifshow
ifshow就是普通账号的名称,根据实际情况来取名。随后给该账号设定密码:
passwd ifshow
4. 修改SSH配置文件(改默认端口、禁止root账号登录、指定允许登录账号)
用vi文本编辑器修改SSH配置文件,指令如下:
vi /etc/ssh/sshd\_config
打开配置文件后,查找
#Port 22
修改为
Port 2345
查找#PermitRootLogin yes
修改为
|
|
第一行是禁止root账号通过SSH登录; 第二行是指定允许通过SSH登录的账号ifshow,可以输入多个账号用空格隔开。
然后检查配置文件中,以下字段是否设置为no,字段最前面有#的删除#
|
|
再检查配置文件中,以下字段设置,字段最前面有#的删除#
|
|
修改完成,保存配置文件退出编辑器。重启SSH服务,使得配置文件生效。
systemctl restart sshd.service
4. 启用firewalld防火墙
CentOS 7默认采用firewalld防火墙,firewalld的使用说明请点这里。 因为更改过SSH默认端口,所以先修改firewall中SSH服务配置文件。执行如下指令: cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/ vi /etc/firewalld/services/ssh.xml 查找
<port protocol="tcp" port="22"/>
修改为
修改为
<port protocol="tcp" port="2345"/>
启动firewalld并设为开机自启,执行如下指令:
systemctl start firewalld.service
systemctl enable firewalld.service
在fierwalld中开放ssh服务端口:
firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload
启动firewalld并设为开机自启,执行如下指令: systemctl start firewalld.service systemctl enable firewalld.service 在fierwalld中开放ssh服务端口: firewall-cmd –permanent –add-service=ssh firewall-cmd –reload
5.让系统自动更新
查询当前系统版本
cat /etc/\*release\*
安装EPEL源(可选)
yum -y install epel-release.noarch
手动进行系统更新,安装所需软件cron和yum-cron,执行如下指令:
yum -y update
yum -y install cronie
yum -y install yum-cron
修改yum-cron配置文件
vi /etc/yum/yum-cron.conf
查找
apply_updates = no
修改为
apply_updates = yes
再检查配置文件中,以下字段是否设置为yes
update_messages = yes
download_updates = yes
apply_updates = yes
修改完成,保存配置文件退出编辑器。启动cron和yum-cron并设为开机自启。
systemctl start crond.service
systemctl enable crond.service
systemctl start yum-cron.service
systemctl enable yum-cron.service
如果需要系统定时重启(可选),可添加crontab定时执行任务:
crontab -e
添加一行(每天凌晨5点重启)后保存退出。
0 5 * * * reboot
查看当前的定时执行任务列表:
crontab -l
6. 开启SELinux(可选)
编辑SELinux配置文件
vi /etc/selinux/config
修改SELINUX的值(enforcing为开启,disabled为关闭)
SELINUX=enforcing
注意:别错误修改SELINUXTYPE的值为disabled,误改会导致系统无法启动。
7. 增加swap分区(已有swap分区的跳过)
查看当前分区情况
free -m
增加 swap分区,容量为1GB
dd if=/dev/zero of=/var/swap bs=1024 count=1024000
设置交换文件
mkswap /var/swap
立即激活启用交换分区
swapon /var/swap
添加系统引导时自启动运行
vi /etc/fstab
添加一行
/var/swap swap swap defaults 0 0
如果不需要了,收回 swap 空间
swapoff /var/swap
从文件系统中回收
rm /var/swap
8. 必做的安全加固已经完成,还可以安装fail2ban防止暴力破解密码
- 原文作者:boxwang
- 原文链接:https://www.ifshow.com/after-installing-centos-7-some-security-reinforcement-must-be-done/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。如果特别注明为转载文章,请联系其原始作者。