大家好,又见面了,我是全栈君。
简介
在 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
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/112125.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...