服务器安全防护新姿势:SSH密钥登录+防爆破,告别裸奔时代!
[0:00] 大家好!今天我们来搞一个大事情!
What's up, guys!我是你们的老朋友eccfy,今天咱们不聊别的,直接上硬核干货!服务器安全,这可是悬在我们每个开发者头上的达摩克利斯之剑啊!尤其是你那台裸奔在公网上的Linux服务器,是不是总担心被黑客盯上?别怕!今天我就手把手教你如何给你的服务器穿上“防弹衣”,告别密码登录,拥抱密钥时代!
你看右上角这个按钮,点赞收藏一键三连走一波,咱们直接开始!
[1:30] 告别密码,SSH密钥登录教程!
OK so,首先第一步,我们得告别那脆弱的密码登录。密码再复杂,也架不住暴力破解啊!所以,SSH密钥登录,必须安排上!
- 生成密钥对: 在你的本地电脑上,打开终端,输入这行命令:
ssh-keygen -t rsa -b 4096 -C "[email protected]"。你看,我这里就用我的邮箱作为注释。一路回车,直到它提示你密钥生成成功。
[弹幕:哇,这么简单?] - 上传公钥到服务器: 接下来,我们需要把生成的公钥(
id_rsa.pub)上传到你的Linux服务器。最简单的方法是使用ssh-copy-id命令:ssh-copy-id -i ~/.ssh/id_rsa.pub user@your_server_ip。输入一次服务器密码,搞定!如果你服务器没装这个命令,那就手动复制粘贴到服务器的~/.ssh/authorized_keys文件里。记住,文件权限一定要是600,目录权限700! - 禁用密码登录: 这步是关键!登录你的服务器,编辑SSH配置文件:
sudo nano /etc/ssh/sshd_config。找到并修改以下两行:PasswordAuthentication noPermitRootLogin no(如果可以,尽量禁用root用户直接SSH登录)
保存并退出,然后重启SSH服务:sudo systemctl restart sshd。现在,你再尝试用密码登录,是不是直接被拒了?爽!
[弹幕:安全感爆棚!]
这样,你的服务器就只认你的专属密钥了,比你用什么“免费VPN”都安全!
[4:45] Fail2Ban:服务器防爆破的“金钟罩”!
光有密钥登录还不够,那些恶意扫描和暴力破解的机器人可不会放过你的SSH端口。这时候,我们的“金钟罩”——Fail2Ban就登场了!它能自动识别并封禁那些反复尝试登录失败的IP地址,保护你的服务器远离骚扰。
- 安装Fail2Ban: 在Debian/Ubuntu系统上,直接运行:
sudo apt update && sudo apt install fail2ban。
CentOS/RHEL上:sudo yum install epel-release && sudo yum install fail2ban。
[弹幕:Fail2Ban怎么用?] - 配置Fail2Ban: 复制默认配置文件:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local。然后编辑jail.local文件:sudo nano /etc/fail2ban/jail.local。
找到[sshd]模块,确保enabled = true。你可以调整bantime(封禁时间,默认10分钟)和maxretry(最大尝试次数,默认5次)。我个人喜欢把bantime调长一点,比如1h,让他们多喝点茶再来。 - 启动并检查状态: 保存文件后,启动Fail2Ban服务:
sudo systemctl start fail2ban。并设置开机自启:sudo systemctl enable fail2ban。你可以用sudo fail2ban-client status sshd来查看当前被封禁的IP地址。
Now watch this!我这里模拟一个暴力破解,连续输错密码。你看,几分钟后,我的IP就被Fail2Ban无情地封禁了!完美!
[弹幕:这比油管怎么看都刺激!]
好了,今天的Linux服务器安全加固与SSH配置教程就到这里。学会了这些,你的服务器就能像开了挂一样安全!记得关注我,一键三连,下期我们搞点更有趣的!