配置服务器免密登录

一、开启ssh登录权限

ssh,secure shell protocol,以更加安全的方式连接远程服务器。

bash 复制代码
# ssh 命令 172.16.3.2 为服务器外网IP
ssh root@172.16.3.2

二、免密登录:public-key 与 ssh-copy-id

如何实现远程服务器的免密登录需要两个条件:

  1. 两个文件:本地环境的 ~/.ssh/id_rsa.pub 与 远程服务器的 ~/.ssh/authorized_keys
  2. 一个动作:把本地文件 ~/.ssh/id_rsa.pub 中内容复制粘贴到远程服务器 ~/.ssh/authorized_keys

「总结成一句话,把自己的公钥放在远程服务器的 authorized_keys 中」

简单来说,就是 Ctrl-CCtrl-V 操作,不过还有一个更加有效率的工具:ssh-copy-id

此时一个解决生产力的命令行工具应运而生:ssh-copy-id

bash 复制代码
ssh-copy-id root@101.200.86.164

配置完成后

bash 复制代码
ssh root@172.16.3.2

三、安全性:禁用密码登录

为了更大保障服务器的安全性,这里禁止密码登录。修改云服务器的 sshd 配置文件:/etc/ssh/sshd_config 。其中 PasswordAuthentication 设置为 no,以此来禁用密码登录。

四、保持连接,防止断掉

除此之外,还可以通过一些配置来更好地优化连接服务器时的体验。

可以通过man ssh-config,找到每一项的详细释义。

bash 复制代码
# 编辑 ~/.ssh/config

Host *
  ServerAliveInterval 30
  TCPKeepAlive yes
  ServerAliveCountMax 6
  Compression yes
相关推荐
东小西4 分钟前
【SAA实战】第 4 篇 · Agent 短期记忆:saver 让 Agent 跨轮记得住(threadId 隔离)
java·后端·spring
许彰午11 分钟前
22-DataCenter报文序列化
java·低代码·架构·状态模式
不怕犯错,就怕不做15 分钟前
git prune 自动删除本地记录中那些远程已经不存在的分支引用
linux·服务器·git
2601_9620652526 分钟前
[MySQL] SQL优化之性能分析
java·sql·mysql
小范同学_40 分钟前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
richdata40 分钟前
商品数字化不是先做大数据,而是先把数据变成可用决策
大数据·运维·数据治理·商品数字化·智能补货·ai商品决策
weixin_416667961 小时前
【无标题】
运维·服务器·网络
予昊2 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
2601_962203512 小时前
【SpringAI入门】初识SpringAI
java
一池秋_2 小时前
arm低配linux设备,桌面应用冷启动提速方法
linux·运维·arm开发