|
使用 ssh-keygen 生成密钥
参考资料
https://learn.microsoft.com/zh-cn/azure/virtual-machines/linux/create-ssh-keys-detailed
快速开始
以下 ssh-keygen 命令默认在 ~/.ssh 目录中生成 4096 位 SSH RSA 公钥和私钥文件。 如果当前位置存在 SSH 密钥对,这些文件将被覆盖。- # 生成私钥和公钥
- ssh-keygen -m PEM -t rsa -b 4096
- # 详细生成私钥和公钥
- ssh-keygen -m PEM -t rsa -b 4096 -C "azureuser@myserver" -f ~/.ssh/mykeys/myprivatekey -N mypassphrase
-
- # 用私钥生成公钥
- ssh-keygen -y -f /path/to/id_rsa > /path/to/new_id_rsa.pub
复制代码 命令解释
ssh-keygen = 用于创建密钥的程序
-m PEM = 将密钥的格式设为 PEM
-t rsa = 要创建的密钥类型,本例中为 RSA 格式
-b 4096 = 密钥的位数,本例中为 4096
-C "azureuser@myserver" = 追加到公钥文件末尾以便于识别的注释。 通常以电子邮件地址用作注释,但也可以使用任何最适合你基础结构的事物。
-f ~/.ssh/mykeys/myprivatekey = 私钥文件的文件名(如果选择不使用默认名称)。 追加了 .pub 的相应公钥文件在相同目录中生成。 该目录必须存在。
-N mypassphrase = 用于访问私钥文件的其他密码。
-y 私钥生成公钥
-f 指定私钥路径
用法
服务器配置
私钥用于连接,公钥内容写入放在被连接主机的~/.ssh/authorized_keys文件中,同时确保~/.ssh目录权限是700,~/.ssh/authorized_keys文件权限是600。
配置/etc/ssh/sshd_config以下内容已启用- PubkeyAuthentication yes
- PasswordAuthentication no
- ChallengeResponseAuthentication no
复制代码 客户端连接- ssh -i /path/to/private_key_file username@hostname
复制代码 -i 指定私钥文件路径
/path/to/private_key_file:您要使用的私钥文件的路径。
username:远程服务器上的用户名。
hostname:远程服务器的主机名或IP地址。
来源:https://www.cnblogs.com/DumpInfou/p/17880630.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
|