Linux VPS安全小技巧——防爆破SSH

引子

Linux系统的VPS,主要通过SSH与人进行交互,而SSH的端口是面向所有互联网的,VPS的IP地址基本不会变化,这样我们的SSH端口就好比一个靶子,每天面临着来自全世界的威胁。互联网上各种黑客多了去了,仅爆破SSH的黑客就要多少有多少,因为IP地址的特点,所以一个人很容易就利用工具定位你的IP和端口,然后用密码字典暴力破解密码,我们知道如果root密码被别人知道了,你的所有数据的安全就完全没有保障了,后果极其严重。好在,Linux系统为我们提供了很多好用的工具,仅需简单的几步设置,就可以让你的VPS固若金汤。因为网络安全的范畴太大,今天我们就仅从SSH的安全技巧来展开。

更换端口

SSH的默认端口是22,这基本成为爆破SSH的重灾区,所以我们需要更换另一个端口,增加黑客扫描的难度,更换的方法是:

首先编辑ssh服务的设置文件,以CentOS为例

# vi /etc/ssh/sshd_config

vi编辑器可以换为你熟悉的其他编辑器,例如nano

然后找到Port 22 将22改为其他数字即可(这个数字应当是1000~65535范围内的整数),然后执行# /etc/init.d/sshd restart 让SSH服务的设置改动生效,记得下次登录时使用新的端口数登录,否则会登录失败。

使用RSA密钥替代密码

RSA的算法很复杂,在此就不做展开了,但西蒙宫可以把这个梗概介绍一下,大体就是,一个私钥(一串很长的随机产生的数字)保存在你的客户端机器上,然后用一套算法产生一个公钥(较短的一串数字),然后将这个公钥放到你的VPS服务器上,下回登录就可以不用密码,而用你的私钥登录咯。我们就不追究其原理,例如,大数的因数分解~balabala~NP困难问题~balabala~

实施方法

由于大多数的非专业人员(比如我)都是使用的win系统,今天我就介绍一款好用的win系统SSH客户端——Bitvise SSH client

 

首先点击这里下载client 的Installer文件(Bitvise的官网是全英文的,如有困难,请自备翻译软件),然后安装(与普通软件安装方法是相同的)。

Bitvise界面
Bitvise界面

点击client key manager ,出现下面的界面

点击Generate New ,按照步骤生成一个key,然后点击Export ,选择open ssh format

将生成的public key的内容,保存在服务器的 ~/.ssh/authorized_keys 文件中,

尝试重新登录,这次不用密码,而用publickey登录,如下图所示。在client key选择你刚才创建的密钥

如果能够登录成功,那么可以修改ssh的设置文件,

# vi /etc/ssh/sshd_config

PasswordAuthentication yes 改为PasswordAuthentication no ,之后别忘了重启ssh服务

# /etc/init.d/sshd restart

总结

经过这番折腾,你的VPS在SSH方面安全等级更高了,当然一种更好的方案是禁止root登录,自建一个普通账号,然后用一番设置让普通账号也用publickey登录,如果需要使用root权限,仅需要sudo su 即可。

由于水平有限,该方法的书写可能有疏漏的地方,欢迎在评论区留言交流!

Linux VPS安全小技巧——防爆破SSH》有4个想法

    1. mac 自带openssh client的,就是那个命令行的ssh标准客户端,如果想把公钥登录玩转,可能配合ssh-copy-id更容易,可以搜索ssh-copy-id看看

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据