对于云主机的安全性,推荐非22端口+KEY密钥登录+密钥密码,这是最安全的组合。
为了保险起见,我们首先添加一个SSH端口,并添加相应的防火墙规则,然后尝试用这个新端口连接到云主机。如果没有问题,我们会删除默认的22端口(这样做的原因是,如果直接修改端口,有些问题发生后,你可能连不上SSH了,这就惨了)。
添加SSH端口
vi/etc/ssh/sshd_config#vi打开文件后,按I键进入编辑模式,然后按以下要求添加端口配置,最后按ESC键退出编辑模式,进入:wq保存退出vi编辑器。
我们在默认SSH端口配置(如23456)下添加一个要使用的新端口
端口22#是默认的22端口配置。注意,现在不删除这个默认的22端口配置,以免修改后无法链接SSHPORT23456#新增的23456端口配置
然后我们重新启动SSH。
/etc/init.d/ssh restart#如果提示服务不存在,请使用/etc/init.d/sshd restart#CentOS7使用systemctl restart sshd.service
配置防火墙
首先,我们添加防火墙规则(示例端口为23456,自己更改):
iptables-i insert-p tcp--dport 23456-j acceptt
那么大家是否配置了防火墙启动和启动读取防火墙配置文件就不清楚了,所以这里我也把步骤写下来,建议大家都去做,避免重启VPS后,因为SSH端口防火墙未打开而导致无法连接云主机。
配置防火墙引导启动
下面的代码是配置防火墙来启动和保存防火墙规则。启动后,会自动读取保存的防火墙规则。
CentOS系统:
注意:如果是CentOS7系统,则不是iptables防火墙。
ONFIG--级别2345 iptables on
以后,您只需执行以下操作即可保存防火墙规则:
服务iptables保存
Debian/Ubuntu系统:
iptables-save>/etc/iptables。up.rulesecho-e'#!/bin/bashn/sbin/iptables-restore</etc/iptables.up.rules'>/etc/network/if-pre-up.d/iptableschmod+x/etc/network/if-pre-up.d/iptables
以后,您只需执行以下操作即可保存防火墙规则:
iptables-save>/etc/iptables。上升规则
测试它
以上步骤完成后,请断开当前的SSH连接,然后将SSH端口改为新端口(示例端口为23456),尝试链接新端口,如果连接正常,则继续以下步骤,如果连接不正常,则使用旧端口22连接到上面即可排除问题。
取消默认SSH端口22
vi/etc/ssh/sshdconfig
我们再次打开SSH配置文件,删除线路端口22,然后重新启动SSH。
/etc/init.d/ssh restart#如果提示服务不存在,请使用/etc/init.d/sshd restart#CentOS7使用systemctl restart sshd.service