我们已经准备好了,你呢?

2023我们与您携手共赢,为您的企业形象保驾护航!


喜讯:国内、香港、海外云服务器租用特惠活动,2核/4G/10M仅需31元每月,点击抢购>>>

点击这里点击这里注册天翼云VIP帐号,立即体验云服务器>>>

SSH是远程登录Linux服务器的主要方式,但它也是黑客进行暴力破解和恶意攻击的主要入口之一。为了加强Linux云主机的SSH登录安全,您可以采用以下方式进行安全加固

  • 修改默认端口

  • 禁止root用户直接登录

  • 添加安全组规则

  • 采用密钥登录

  • 配置SSH登录限制

我们以centos为例为大家介绍如何进行安全加固。

修改默认端口

  1. 远程登录弹性云主机。

  2. 打开 sshd 配置文件 /etc/ssh/sshd_config,可以使用编辑器打开该文件,例如使用 vi 命令:

vi /etc/ssh/sshd_config
  1. 找到以下代码行:

#Port 22

将该行代码的注释符号 # 去掉,并将 22 修改为想要设置的端口号,例如 2222:

Port 2222
  1. 按ESC键,输入:wq保存修改并退出编辑器。

  2. 重启 sshd 服务,使配置生效。可以使用以下命令重启 sshd 服务:

systemctl restart sshd
  1. 确认修改是否生效。可以使用以下命令检查 sshd 服务是否在新端口上监听:

netstat -tnl | grep 2222

如果输出类似于以下内容,则表示 sshd 服务已经在新端口 2222 上监听:

tcp        0      0 0.0.0.0:2222            0.0.0.0:*               LISTEN
  1. 完成以上步骤后,就成功将 CentOS 系统的 SSH 默认端口号修改为了 2222。注意,在修改 SSH 默认端口号之后,需要使用新的端口号来进行 SSH 连接,例如:

ssh username@hostname -p 2222

其中,username 和 hostname 分别是 SSH 登录的用户名和远程主机名或 IP 地址。

禁用root用户直接登录

Linux的默认管理员名即是root,只需要知道ROOT密码即可直接登录SSH。禁止Root从SSH直接登录可以提高服务器安全性。经过以下操作后即可实现。

  1. 新建用户

useradd test
  1. 配置密码

#使用passwd命令即可给相应帐户设置或修改密码。
passwd test
#根据图示,设置或修改密码需要填写两次,第二次为效验密码,输入完毕后请回车确认。
Changing password for user test.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
  1. 配置不允许root用户直接登录,修改相关文件

vi /etc/ssh/sshd_config
查找 #PermitRootLogin yes” 默认为132行
将“#”去掉,末尾“Yes”改为“No”
并:wq保存
  1. 重启SSHD服务

systemctl restart sshd
  1. 测试连接,可以看到 直接使用root 连接服务器 ssh会直接拒绝:

image.png

添加安全组规则

安全组中的入方向规则默认开启了22端口,当云服务器的SSH登录端口修改为2222时,需要为安全组新加一条规则。

登录管理控制台。

  1. 选择“计算 > 弹性云主机”,进入云主机控制台。

  2. 单击云服务器名称进入详情页面。

  3. 选择“安全组”页签,单击展开安全组规则详情,单击列表右上角的“更改安全组规则”。

  4. 添加一条入方向规则。

image.png

采用密钥登录

密钥对登录比起密码登录更加安全,因此在创建弹性云主机时您可以选择密钥对登录的方式。

  1. 新建密钥对,或者选择已有的密钥对,并下载至本地。

image.png

  1. 创建云主机时,登录方式选择密钥对。

image.png

  1. 使用xshell登录弹性云主机

通过弹性公网IP,执行以下命令,SSH远程连接弹性云主机。

ssh 用户名@弹性公网IP

选择“Public Key”,并单击“用户密钥(K)”栏的“浏览”。

在“用户密钥”窗口中,单击“导入”。

选择本地保存的密钥文件,并单击“打开”。

单击“确定”,登录弹性云主机。

配置SSH登录限制

“/etc/hosts.allow”和“/etc/hosts.deny”是控制远程访问的文件,通过配置该文件可以允许或者拒绝某个IP或者IP段的客户访问Linux云服务器的某项服务。

比如SSH服务,通常只对管理员开放,那我们就可以禁用不必要的IP,而只开放管理员可能使用到的IP段。

因为云主机需要在不同地点登录,建议编辑“/etc/hosts.allow”允许所有IP地址登录,这样不会影响正常使用。

vim /etc/hosts.allow

在最后一行增加“sshd:ALL”。

image.png

也可以通过一些方法识别云主机的安全风险,使用tail -f /var/log/secure打开SSH日志,查看疑似恶意登录的IP。

图片10.png

然后在“/etc/hosts.deny”中将这些地址禁止。

图片11.png




推荐:TOP云智能建站优惠活动,仅880元即可搭建一个后台管理五端合一的智能网站(PC网站、手机网站、百度智能小程序、微信小程序、支付宝小程序),独享百度搜索SEO优势资源,让你的网站不仅有颜值有排面,更有排名,可以实实在在为您带来效益,请点击进入TOP云智能建站>>>,或咨询在线客服了解详情。


我们已经准备好了,你呢?

2023我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

131-3501-0006

上班时间

周一到周五

公司电话

130-0743-9476

二维码
线