最新消息:

VPS基本安全设置

主机域名 观测者 2581浏览

我们购买VPS后,一般服务商都是直接给你ROOT帐号,这样管理起来最方便,但不安全。如果你不想太麻烦的话,尽可能的设置强密码,数字+字母+大小写+特殊字符是必须的,不给暴力破解任何机会,如果你使用弱密码的话,你的VPS将非常危险。建议还是花上一点时间进行安全设置,能把安全系数大大提高。

总的来说,方法有禁ROOT登陆或禁密码登陆+证书管理。

禁ROOT登陆之前我们要先建一个普通帐户,然后通过这个普通帐户提权进行管理。输入命令:

useradd 用户名
passwd 用户名

输入两遍密码(无提示符),普通帐户建好之后,禁止密码登陆。命令:

vi /etc/ssh/sshd_config

找到PermitRootLogin,改为no

PermitRootLogin no

保存退出,重启ssh,使用刚才建立的普通帐户登陆VPS,再使用su命令提权进行管理。

更安全的做法是使用证书登陆,我们先生成证书公钥和私钥,root登陆之后用ssh-keygen密钥生成工具生成:

root@vps:/home/root# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.

运行ssh-keygen之后一路回车,会在当前用户目录下建立./ssh文件夹(默认为隐藏,可使用ls -a命令查看)放置公钥和私钥,私钥为id_rsa,公钥为id_rsa.pub。公钥放在服务器端,把它重命名为authorized_keys。命令:

cd /root/.ssh
mv id_rsa.pub authorized_keys

设置权限:

cd /home/root/
chmod 700 .ssh
cd /home/root/.ssh
chmod 600 *

私匙使用SFTP工具下载到本地(推荐使用filezilla,开源免费好用!)

之后开始禁用密码登陆:

vi /etc/ssh/sshd_config

找到PasswordAuthentication这一行,把yes改为no,注意前面如果有注释符#的话,记得要去掉。

PasswordAuthentication no

保存退出,重启ssh:

service sshd restart

使用证书登陆一下试试,如果正常的话,就可以关闭刚才的ssh连接。注意在确定证书能正常登陆之前切勿关闭刚才的ssh连接,要不你可能会无法再登陆VPS。

Xshell使用证书登陆的过程:
1.导入私钥:工具-用户密匙管理者-导入,选择你刚才下载到本地的id_rsa文件。
2.新建会话:和我们正常建立会话差不多,用户身份验证方法选Public key,用户密钥选我们刚才导入的id_rsa,密码填你的用户密码,如无密码,留空即可(适用于ubuntu sudo用户)。

连接得上的话,说明你刚才的操作没有错误。

转载请注明:观测者 » VPS基本安全设置