Vultr 安装centos7 X64必须做的一些安全加固

Vultr 安装centos7 X64必须做的一些安全加固

1.更改root密码

[root@ryan ~]# passwd root

2.新增一个管理员账号并且设定密码

[root@ryan ~]# useradd ryan
[root@ryan ~]# passwd ryan

3.修改SSH配置文件(改默认端口、禁止root账号登录、指定允许登录账号)
用vi文本编辑器修改SSH配置文件,指令如下:

[root@ryan ~]# vi /etc/ssh/sshd_config

打开配置文件后,查找

Port 22

修改为

Port 7777

7777是更改后的端口号,可以是 1024 ~ 65535 之间的任意数字,不要和系统其他服务端口冲突即可。
4.后重启ssh服务
这一步很重要一定要保存之后重启ssh服务。我吃过几次亏。

[root@ryan ~]# systemctl restart sshd.service

5.测试
为防止失误,保持当前窗口连接,新建SSH连接7777端口测试ryan能否登录系统。

RyandeMBP:~ Ryan$ ssh -p 7777 ryan@xx.xx.xx.xxx
ssh_exchange_identification: Connection closed by remote host

6.修改防火墙
使用7777端口登录不上去,我出现这个问题的原因是因为centos 默认防火墙firewalld的问题。
因为更改过SSH默认端口,所以先修改firewall中SSH服务配置文件。执行如下指令:

[root@ryan ~]# cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
[root@ryan ~]# vi /etc/firewalld/services/ssh.xml

查找

<port protocol="tcp" port="22"/>

修改为

<port protocol="tcp" port="7777"/>

启动firewalld并设为开机自启,执行如下指令:

[root@ryan ~]# cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
[root@ryan ~]# vi /etc/firewalld/services/ssh.xml

在fierwalld中开放ssh服务端口:

[root@ryan ~]# firewall-cmd --permanent --add-service=ssh
success
[root@ryan ~]# firewall-cmd --reload
success
[root@ryan ~]# 

完成之后再新建SSH连接7777端口测试ryan能否登录系统。
8.修改SSH配置文件(禁止root账号登录、指定允许登录账号)

vi /etc/ssh/sshd_config

查找

#PermitRootLogin yes

修改为

PermitRootLogin no
AllowUsers ryan

第一行是禁止root账号通过SSH登录;
第二行是指定允许通过SSH登录的账号ifshow,可以输入多个账号用空格隔开。
然后检查配置文件中,以下字段是否设置为no,字段最前面有#的删除#

PermitEmptyPasswords no
UsePAM no
X11Forwarding no
UseDNS no

再检查配置文件中,以下字段设置,字段最前面有#的删除#

Protocol 2
MaxAuthTries 3
MaxSessions 2

修改完成,保存配置文件退出编辑器。重启SSH服务,使得配置文件生效。

systemctl restart sshd.service

9.让系统自动更新
查询当前系统版本

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

10.开启SELinux(可选)
编辑SELinux配置文件

vi /etc/selinux/config

修改SELINUX的值(enforcing为开启,disabled为关闭)

SELINUX=enforcing

注意:别错误修改SELINUXTYPE的值为disabled,误改会导致系统无法启动。
11. 增加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

参考至https://www.ifshow.com/after-installing-centos-7-some-security-reinforcement-must-be-done/

你可能感兴趣的:(Linux)