Linux的ssh端口和密钥登录以及禁用密码登录
本文阅读大约需要1分钟。
前言
又入手了一台云服务器,手上已经五台小鸡了。
有时候会忘记改小鸡端口和登录方式,就导致很多人在默认的22端口不停爆破。
虽然都是强密码,但是架不住有时候1C1G的小鸡被占着资源爆破。
所以为了方便以后修改,就写篇教程记录
感觉有点玩鸡丧志了都…
生成密钥
# 生成密钥
ssh-keygen
# 出现以下提示时 如果没有特殊要求 一路回车即可
# Generating public/private rsa key pair.
# Enter file in which to save the key (/root/.ssh/id_rsa):(回车)
# Enter passphrase (empty for no passphrase):(回车)
# Enter same passphrase again:(回车)
# 运行结束以后, 默认在 ~/.ssh目录生成两个文件:
# id_rsa :私钥
# id_rsa.pub :公钥
# 切换到文件所在目录:
cd ~/.ssh/
# 将公钥写入authorized_keys文件,执行命令:
cat id_rsa.pub >> authorized_keys
# 如果是在其他端生成,则将公钥传上来改名为authorized_keys即可,如果是在目标小鸡上则需要建议手动下载备份到本地之后,删除公钥和私钥
# 还有就是权限问题 记得检查权限
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
自定义ssh端口
建议选择端口范围,避免冲突
1024-32767
32768-60999
49152-65535
# 修改ssh配置文件
vim /etc/ssh/sshd_config
# 找到Port 如果没有打开 则打开注释 修改Port之后的数字端口为自定义端口即可 否则直接修改即可
# Port 22
# 注意 记得提前安全组开放端口
登录方式修改
# 修改ssh配置文件
vim /etc/ssh/sshd_config
# 禁用密码验证 修改或者打开注释
PasswordAuthentication no
# 启用密钥验证 修改或者打开注释
PubkeyAuthentication yes
# 允许root用户远程登录 如果没有设置的话 修改或者打开注释
PermitRootLogin yes
重启ssh
#centos系统
service sshd restart
#ubuntu系统
service ssh restart
#debian系统
/etc/init.d/ssh restart
# 注:如果出现提示:Redirecting to /bin/systemctl restart sshd.service
# 执行命令,重启sshd服务:
systemctl start sshd.service
防止爆破
安装fail2ban,自动封禁多次尝试失败的 IP
sudo apt install fail2ban # Debian/Ubuntu
sudo yum install fail2ban # CentOS/RHEL
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
sudo systemctl staus fail2ban
如果没有正常运行,需要排查配置
默认监控的日志文件是 /var/log/auth.log(Ubuntu/Debian)或 /var/log/secure(CentOS/RHEL)
如果没有找到或者路径不同需要进行配置
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
# 然后再.local配置中修改
所属分类:
运维
文章标签:
#linux
#ssh