教你 Linux 免密登录配置

时间:2022-07-25
本文章向大家介绍教你 Linux 免密登录配置,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

内容 :

这篇再来一个实战内容 - 免密登录,配置ok后,就可以直接通过 ssh+服务器名 就能连接到我们远程服务器了。

内容主要分为俩个部分:基本配置 、进阶配置

基本配置:

1、生成秘钥

cd ~/.ssh/
ssh-keygen -t rsa -C "my_name" -f "my_key"
# 这一步会生成 my_key.pub(公钥) my_key(私钥)

2、将公钥放在目标服务器上

scp ./my_key.pub root@192.168.1.1:/root/.ssh/
# 这里使用 scp 命令远程复制公钥
# 注意要存放在登录用户所在目录的 .ssh 文件夹里,
# 这里使用 root 用户登录,故存在 root 用户的用户目录

3、将公钥存放进目标服务器 authorized_keys 里

cat my_key.pub >> authorized_keys

4、使用免密登录

ssh -i ~/.ssh/my_key root@192.168.1.1
# -i 指定私钥的路径

Q:基本配置已经完成了,但每次连接都得手动指定本机的私钥地址,能不能省略这一步?

A:可以的,查看下面进阶配置。

进阶配置:

在进阶配置中,我们要配置本地的 .ssh 下的 config 文件,实现自动登录,而不需要手动指定私钥的地址。

1、进入 config配置文件

cd ~/.ssh/
vi config

2、编辑 config配置文件

User root
Host aliyun
HostName 192.168.1.1
Port 22
StrictHostKeyChecking no
IdentityFile ~/.ssh/my_key
IdentitiesOnly yes
Protocol 2
Compression yes
ServerAliveInterval 60
ServerAliveCountMax 20
LogLevel INFO

3、配置完成、体验一下吧~~~

ssh aliyun

4、配置多个服务器登录


Host aliyun
    User root
    HostName 192.192.192.22
    Port 22
    StrictHostKeyChecking no
    IdentityFile ~/.ssh/my_key
    IdentitiesOnly yes
    Protocol 2
    Compression yes
    ServerAliveInterval 60
    ServerAliveCountMax 20
    LogLevel INFO

Host fanqiang
    User root
    HostName 192.192.192.23
    Port 22
    StrictHostKeyChecking no
    IdentityFile ~/.ssh/my_key
    IdentitiesOnly yes
    Protocol 2
    Compression yes
    ServerAliveInterval 60
    ServerAliveCountMax 20
    LogLevel INFO

5、使用免密登录

ssh aliyun
ssh fanqiang

注意:文章中的 IP地址是为了演示,具体的 IP 需要根据服务器真实 IP来定。

总结:

恭喜你、又读完了一篇文章,通过手把手的教程,教会你如何通过 ssh+服务器名 进行登录,学会了么~~~想了解什么欢迎留言。