当前位置:   article > 正文

SSH生成密钥_ssh生成密钥命令

ssh生成密钥命令

生成密钥

ssh-keygen -t rsa -C "xx@alibaba-inc.com"

1.参数解释:
-t 表示ssh的密钥类型,常用的有:rsa、ed25519、dss
-C 注释或称名称标识,此值随意。
注:
①在Linux、macOS系统下直接在命令行中输入上述命令即可。
②在Windows系统下需要安装Linux模拟环境,最简单的方式就是安装Git。Git的如下目录中已经默认安装了文件:usr/bin/ssh-keygen.exe。所以在Git Bash命令行里直接输入上述命令也可以生成密钥。
2.执行上述命令后,根据出现的提示连续按3次回车键即可。
3.在用户根目录下的.ssh目录下可以看到生成2个文件:id_rsa(私钥文件)、id_rsa.pub(公钥文件)。我们需要的是公钥文件。
注:
①私钥和公钥的文件名称是根据命令中输入的密钥类型来命名的,比如类型为ed25519,则会生成id_ed25519和id_ed25519.pub文件。
②在Linux系统下的路径一般是:/home/username/.ssh/id_rsa.pub。
③在macOS系统下的路径一般是:/Users/username/.ssh/id_rsa.pub。
④在Windows系统下的路径一般是:C:/Users/username/.ssh/id_rsa.pub。

生成known_hosts

命令 ssh-keygen -f "/home/wp/.ssh/known_hosts" -R "192.168.1.10" 在 SSH(安全外壳协议)中用于管理已知主机文件。这里具体的命令含义如下:

  • -f "/home/wp/.ssh/known_hosts": 这个参数指定了 known_hosts 文件的路径。known_hosts 文件是SSH客户端存储它之前连接过的远程主机的SSH指纹的地方。SSH客户端利用这个文件来验证未来连接中主机的身份。

  • -R "192.168.1.10": 这个参数告诉 ssh-keygenknown_hosts 文件中删除所有属于指定主机名或者IP地址的密钥。在这个例子中,指定的是IP地址 192.168.1.10

当你连接到SSH服务器时,服务器的主机密钥会被存储在 known_hosts 文件中。如果主机密钥发生变化(这可能发生在服务器重新安装或SSH服务器的密钥重新生成的时候),SSH客户端会警告你存储的密钥与 known_hosts 文件中的密钥不匹配。这是为了防止中间人攻击的安全特性。

如果你知道主机密钥的变化是合法的(例如,服务器被有意重新配置了),你可以使用上面的命令从 known_hosts 文件中删除旧的密钥。删除条目后,当你下次连接到该主机时,SSH客户端会将其视为一个新主机,要求你确认添加新密钥,并且会将新的指纹存储在 known_hosts 文件中。

ssh-keygen -f "/home/wp/.ssh/known_hosts" -R "192.168.1.10"


遇到问题

问题描述:
with **** port 22: no matching host key type found. Their offer: ssh-rsa
具体做法:

到当前用户目录下的.ssh文件中创建config文件(config没有后缀),使用记事本打开添加如下

~/.ssh/config

  1. Host *
  2. HostkeyAlgorithms +ssh-rsa
  3. PubkeyAcceptedKeyTypes +ssh-rsa

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/591075
推荐阅读
相关标签
  

闽ICP备14008679号