如果采用传统密码登录的话,每次登录都会弹出大量的非法登录警告:
grep "Failed password for invalid user" /var/log/secure | awk '{print $13}' | sort | uniq -c | sort -nr | more
采用 ssh key 登录后,安全性提高了。 其次,不用再输入密码,方便。
ssh-keygen -t rsa
此命令在 /root/.ssh 生成了 2 个文件:id_rsa 为私钥,id_rsa.pub 为公钥,此处如果是普通用户的话,则目录是 /home/用户名 /.ssh
cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
chown -R 0700 ~/.ssh
chown -R 0644 ~/.ssh/authorized_keys
chown -R root:root /root
修改 ssh 配置文件:
nano /etc/ssh/sshd_config
修改这几个地方:
RSAAuthentication yes
StrictModes no
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication yes
PuTTY 是一个很常见的 SSH 客户端,PuTTY Key Generator 是其附属的专门用于生成密钥的工具(注意这是两个独立的软件)
与 PuTTY 不同,Bitvise 的私钥生成并不像 PuTTY 那样需要一个独立的程序,设置上要简单一些。
当我们确认 SSH KEY 登录没有任何问题后,就可以将密码登录取消了:
还是修改 ssh 配置文件:
nano /etc/ssh/sshd_config
修改这个地方:
PasswordAuthentication no
答:有可能是把 PubkeyAuthentication no 证书登录,和 PasswordAuthentication no 密码登录都设成了 no ,这样无论是采用公钥登录还是密码登录都会被拒绝,这就比较麻烦了,需要接上显示器键盘本地登录。(这也是为什么在 SSH KEY 登录没有完全测试成功之前,不能轻易将密码登录取消的原因)
答:一般来说是目录权限问题,仔细检查 chmod 那几个命令是否成功执行。
1
oneisall8955 2022-06-06 19:39:34 +08:00 via Android
客户端在~/.ssh/.config 写 host 和 key 位置,可以直接 ssh xxx 登录主机
|
2
czwstc 2022-06-06 20:28:18 +08:00 via iPhone 1
可以试试 ssh-copy-id user@server 一键推送公钥
|
3
lcvs 2022-06-06 21:08:43 +08:00
平常都用 Mac 自带终端进行 ssh 连接,基本不用 ssh 客户端
可以百度下“.ssh/config”,写法和用法跟 1 楼一样,但不是.config |
4
oneisall8955 2022-06-06 21:48:39 +08:00 via Android
@lcvs 谢谢纠正,你说的才是正确的,后面打多了.
|
5
Macv1994 2022-06-07 12:26:06 +08:00
@oneisall8955 再到.bashrc 中配置一个 alias 都不用 ssh 命令了,直接用配置的 alias 名即可。
|
6
MX123 2022-06-07 15:41:16 +08:00
学习了
|
7
fateofheart 2022-06-07 17:50:42 +08:00 via Android
即使是 key 登录,也要使用密码
|
8
julyclyde 2022-06-07 18:07:00 +08:00
所以,你写了这么长,到底想表达什么?
|
9
lion 2022-06-13 01:28:55 +08:00
使用私钥登录后,爆破基本无效,安全系数提升很高
|
11
spediacn 2022-07-26 09:45:53 +08:00 via iPad
常用地区的 CIDR 配置上去,防火墙上只能用这个 ip 段登录,一样美滋滋
|