Mac使用秘钥登录Linux服务器

简介

在 Mac 上配置 SSH 密钥登录远程的 Linux

相关配置

1.创建本地的 SSH 密钥

本地 生成秘钥对

ssh-keygen -t rsa -C 'youxiang@aliyun.com'
-t 指定密钥类型,默认即 rsa
-C 设置注释文字,比如你的邮箱

可以设置 私钥密码,我这里设置的密码为 12345

生成的密钥默认在 家目录 下的 .ssh 目录下

2.上传 公钥到远程 Linux 服务器

使用 scp 复制公钥到远程服务器

scp -P <端口号> ~/.ssh/id_rsa.pub <用户名>@<ip地址>:/home/id_rsa.pub

我这里使用的 root 用户上传,需要输入登录密码

配置远程 Linux 的私钥

3.登录 远程 Linux 服务器,把公钥追加到服务器 ssh 认证文件中:

cat /home/id_rsa.pub >> ~/.ssh/authorized_keys

如果在 家目录 没有 .ssh 目录或 authorized_keys 文件,可以创建一下,并授予 authorized_keys 文件 600 权限

然后在执行 

cat /home/id_rsa.pub >> ~/.ssh/authorized_keys

4.本地 ssh 连接

ssh -p <端口号> <用户名>@<ip地址>

5.如果没有修改默认端口,可以忽略端口号

ssh root@114.11.11.111

创建配置文件快速登录

每次登录都需要输入用户和 ip 地址,这样也是太麻烦,可以添加配置文件,使用 别名 来登录

vi ~/.ssh/config
Host            alias            #自定义别名
HostName        114.11.11.110         #替换为你的ssh服务器ip或domain
Port            22             #ssh服务器端口,默认为22
User            root             #ssh服务器用户名
IdentityFile    ~/.ssh/id_rsa    #第一个步骤生成的公钥文件对应的私钥文件

此时就可以使用 ssh jd 进行登录

禁止 Linux 使用账号密码登录

1.

cd /etc/ssh/

2.修改 SSH 的配置文件 vi sshd_config

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys
#AuthorizedKeysCommand none
#AuthorizedKeysCommandRunAs nobody
#默认PasswordAuthentication 为yes,即允许密码登录,改为no后,禁止密码登录
PasswordAuthentication no

3.重启 ssh 服务

systemctl restart sshd.service
原文地址:https://www.cnblogs.com/lxwphp/p/15453167.html