惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
月光博客
月光博客
The Last Watchdog
The Last Watchdog
T
Tenable Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
Simon Willison's Weblog
Simon Willison's Weblog
V
Vulnerabilities – Threatpost
F
Fortinet All Blogs
Microsoft Security Blog
Microsoft Security Blog
A
Arctic Wolf
云风的 BLOG
云风的 BLOG
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
GbyAI
GbyAI
阮一峰的网络日志
阮一峰的网络日志
The GitHub Blog
The GitHub Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
U
Unit 42
MyScale Blog
MyScale Blog
B
Blog
Spread Privacy
Spread Privacy
S
Schneier on Security
Project Zero
Project Zero
L
LINUX DO - 热门话题
M
MIT News - Artificial intelligence
F
Full Disclosure
WordPress大学
WordPress大学
Apple Machine Learning Research
Apple Machine Learning Research
Cyberwarzone
Cyberwarzone
AWS News Blog
AWS News Blog
aimingoo的专栏
aimingoo的专栏
博客园 - 三生石上(FineUI控件)
C
Cybersecurity and Infrastructure Security Agency CISA
Hugging Face - Blog
Hugging Face - Blog
Security Latest
Security Latest
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Tailwind CSS Blog
K
Kaspersky official blog
Recent Announcements
Recent Announcements
NISL@THU
NISL@THU
Cisco Talos Blog
Cisco Talos Blog
S
Securelist
P
Privacy & Cybersecurity Law Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
The Exploit Database - CXSecurity.com
V
Visual Studio Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Webroot Blog
Webroot Blog

Feel.name

Centos7安装sngrep – Feel.name DNS大全 – Feel.name Linux下转换文件编码 – Feel.name 升级到最新OpenSSH_9.3p1, OpenSSL 3.1.1 – Feel.name centos 7上创建sftp服务 – Feel.name linux清理缓存(cache) – Feel.name 通过yum来下载RPM包的方法 – Feel.name 年末守望新年期盼 – Feel.name message 日志里面的“Created slice User Slice of root.”日志去除方法 – Feel.name
Linux服务器密钥登陆方法 – Feel.name
Feel · 2023-10-16 · via Feel.name

Skip to content

一、生成密钥对

在Linux系统中,使用密钥进行登录需要生成一对公钥和私钥。可以使用ssh-keygen命令来生成密钥对。在终端中输入以下命令:

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

其中,“-t”选项指定要使用的加密算法,“rsa”表示使用RSA算法;“-b”选项指定密钥的长度,4096位的长度足以保证安全性;“-C”选项是可选的,用于添加注释。

执行完命令后,系统会提示输入保存密钥的文件名和路径,以及对私钥设置的密码。设置密码可以提高私钥的安全性。

[root@feel-test ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory ‘/root/.ssh’.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:3xxw3N6oPe1qz9R5Gqfj/BC2XJ7sw4qXxQ9Vv3WvTnA root@feel-test
The key’s randomart image is:
+—[RSA 2048]—-+
| |
| . . .|
| . o . o|
| o . o=|
| S o E.B|
| . o OoX=|
| . + %O| | .==&o| | ..=O*|
+—-[SHA256]—–+

二、将公钥复制到服务器上

生成密钥对后,需要将公钥复制到需要登录的服务器上。可以使用ssh-copy-id命令将公钥复制到服务器上。在终端中输入以下命令:

ssh-copy-id user@server_address

其中,“user”是服务器的用户名,“server_address”是服务器的IP地址或域名。

执行命令后,系统会提示输入服务器密码。输入正确的密码后,系统就会将公钥复制到服务器上,并将其添加到服务器的authorized_keys文件中。

[root@feel-test .ssh]# touch authorized_keys
[root@feel-test .ssh]# cat id_rsa.pub >> authorized_keys
[root@feel-test .ssh]# ls
authorized_keys id_rsa id_rsa.pub
[root@feel-test .ssh]# chmod 700 /root/.ssh
[root@feel-test .ssh]# chmod 600 /root/.ssh/authorized_keys

记住服务器的权限。

[root@feel-test .ssh]# vi /etc/ssh/sshd_config

PubkeyAuthentication yes

PasswordAuthentication no


[root@feel-test .ssh]# systemctl sshd restart

三、使用密钥登录

将公钥复制到服务器上后,就可以使用密钥进行登录了。在终端中输入以下命令:

ssh user@server_address

其中,“user”是服务器的用户名,“server_address”是服务器的IP地址或域名。

如果私钥设置了密码,系统会提示输入密码。输入正确的密码后,系统就会使用私钥进行身份验证,并成功登录到服务器。