MAC下 Centos7 下 免账号免密码便捷登录服务器的正确姿势 实践笔记

时间:2022-07-24
本文章向大家介绍MAC下 Centos7 下 免账号免密码便捷登录服务器的正确姿势 实践笔记,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

MAC下 Centos7 下 免账号免密码便捷登录服务器的正确姿势 实践笔记

我使用macOS Mojava 10.14.6版本

zsh版本 zsh 5.3 (x86_64-apple-darwin18.0)

eg: ssh taiwanji (免账号免密码便捷登录 taiwanji服务器)

登录效果

ssh taiwanji #免账号免密快捷登录

1.客户端操作(自己使用的电脑):

1.1生成密钥

在用户目录中检查是否有 .ssh/id_rsa.pub 文件,如果有的话,可以跳过这一步。 生成密钥输入:ssh-keygen -t rsa -b 4096 -C “your_email@example.com”

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

代码参数含义: -t 指定密钥类型,默认是 rsa ,可以省略。 -C 设置注释文字,比如邮箱。 -f 指定密钥文件存储文件名。 以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,如:

Generating public/private rsa key pair.
# Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]

当然,你也可以不输入文件名,使用默认文件名(推荐),那么就会生成 id_rsa 和 id_rsa.pub 两个秘钥文件。

接着又会提示你输入两次密码 一般,你也可以不输入密码,直接按回车。

Enter passphrase (empty for no passphrase): 
# Enter same passphrase again:

接下来,就会显示如下代码提示,如:

Your identification has been saved in /c/Users/you/.ssh/id_rsa.
# Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub.
# The key fingerprint is:
# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com

当你看到上面这段代码的收,那就说明,你的 SSH key 已经创建成功。

2.服务器配置(被免密登录的服务器)

2.1公钥加到服务器(方式一)

接下来登录到服务器中,同样是在用户目录下的 .ssh 目录,查看是否有 authorized_keys 文件。 如果有,就将刚才自己电脑中 id_rsa.pub 的内容追加到服务器 authorized_keys 文件中;如果没有,创建 authorized_keys 文件后将内容写入。 注意将 authorized_keys 文件权限设置为 600。

cd .ssh/
chmod 600 authorized_keys

2.2公钥加到服务器(方式二)

也可以在自己的电脑远程复制公钥到服务器上

ssh-copy-id root@127.0.0.3 #把公匙存储到服务器上

ssh-copy-id命令的原理就是把客户端生成在 h o m e / . s s h / i d r s a . p u b 里 面 的 文 本 复 制 到 服 务 器 home/.ssh/id_rsa.pub里面的文本复制到服务器 home/.ssh/idr​sa.pub里面的文本复制到服务器home/.ssh/authorized_keys中,当然你直接复制也是一样的,不过就怕少了一个字符,就很难发现错误了

不过有时候服务器是没有authorized_keys这个文件的,需要新建一个,但是记住,一定要给这个文件设置权限

好了,现在我们可以使用ssh root@127.0.0.3无须密码登录了,可以难倒需要我们每次都记住ip吗?

3.免账号便捷登录服务器

检查~/.ssh目录下是否有config文件(如果没有可以新增一个)

cd ~/.ssh
touch config

语法格式

Host taiwanji   #自定义别名
   HostName #ip或者域名
   Port         22 #端口
   User         root #用户名
   IdentityFile /Users/用户/.ssh/id_rsa #私钥

4.登录

ssh taiwanji #免账号免密快捷登录