首页服务器教程CentOS 7上创建SSH密钥的详细教程

CentOS 7上创建SSH密钥的详细教程

2024-02-28 50

SSH(Secure Shell)是一种安全的加密协议,它广泛应用于服务器的管理和维护通信。当使用CentOS服务器时,管理工作通常主要通过SSH进行的远程终端会话来完成。本文将详细介绍如何在CentOS 7上创建一个新的SSH密钥对,并将其公钥复制到远程服务器。

1、检查现有的SSH密钥

在生成新的SSH密钥对之前,最好先检查CentOS客户端计算机上是否存在现有的SSH密钥。请运行以下命令,该命令将列出所有公钥:

ls -l ~/.ssh/id_*.pub

如果命令输出提示类似于”cannot access /root/.ssh/id_*.pub: No such file or directory”,则说明你的客户端计算机上没有SSH密钥,可以继续执行下一步并生成SSH密钥对。

2、生成新的SSH密钥对

首先需要生成一个新的4096位SSH密钥对,并将你的电子邮件地址作为注释。在终端中输入以下命令:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

系统将提示指定文件名:

Enter file in which to save the key (/root/.ssh/id_rsa):

按Enter键接受默认文件位置和文件名。接下来,系统会要求输入安全密码。如果你选择使用密码短语,将获得额外的安全层。输入以下命令:

Enter passphrase (empty for no passphrase):

如果不想使用密码短语,请按Enter键。

CentOS 7上创建SSH密钥的详细教程

3、查看生成的SSH密钥

现在可以查看生成的SSH密钥。在终端中输入以下命令:

cat /root/.ssh/id_rsa

4、将公钥复制到远程服务器

既然已生成SSH密钥对,下一步是将公钥复制到要管理的服务器。最简单的方法是使用名为ssh-copy-id的实用程序。在本地机器终端中输入以下命令:

[root@liulihui /]# ssh-copy-id root@192.168.133.128
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.133.128's password: 
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'root@192.168.133.128'"
and check to make sure that only the key(s) you wanted were added.

如果本地计算机上没有ssh-copy-id实用程序,请使用以下命令复制公钥:

cat ~/.ssh/id_rsa.pub | ssh your_username@remote_server_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

5、使用SSH密钥登录服务器

完成上述步骤后,应该能够登录到远程服务器而不会被提示输入密码。要验证它,请尝试通过SSH登录到服务器:

ssh root@192.168.133.128

如果没有为私钥设置密码,则会立即登录,否则,系统将提示输入密码。

# 测试
[root@liulihui ~]# ssh root@192.168.133.128
Last login: Thu Jan 5 00:56:46 2023 from 192.168.133.128
[root@liulihui ~]#

通过以上步骤,你现在应该已经成功生成了新的SSH密钥对并将公钥复制到远程服务器。可以通过SSH密钥登录服务器,并且无需输入密码。

  • 广告合作

  • QQ群号:707632017

温馨提示:
1、本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。邮箱:2942802716#qq.com(#改为@)。 2、本站原创内容未经允许不得转裁,转载请注明出处“站长百科”和原文地址。

相关文章