配置服务器免密登录

一、开启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
相关推荐
uup几秒前
SpringBoot 集成 Redis 分布式锁实战:从手动实现到注解式优雅落地
java·redis
Java陈序员3 分钟前
数据同步神器!一款搞定多种数据源同步的开源中间件!
java·spring boot·mysql
BER_c10 分钟前
Git 提交历史太乱?教你清理并规范 commit message
github
liuhaikang16 分钟前
鸿蒙高性能动画库——lottie-turbo
java·开发语言·nginx
虫小宝18 分钟前
导购APP容器化CI/CD流程:Jenkins在返利系统持续部署中的实践
运维·ci/cd·jenkins
眠りたいです18 分钟前
Docker核心技术和实现原理第一部分-Docker镜像制作
运维·docker·容器·集群·镜像·dockerfile
面对疾风叭!哈撒给20 分钟前
Liunx之Docker 安装启动 influxdb2
java·spring cloud·docker
沛沛老爹22 分钟前
Web开发者快速上手AI Agent:基于Function Calling的提示词应用优化实战
java·人工智能·llm·agent·web·企业开发·function
麦兜*26 分钟前
Spring Boot 启动过程全解析:从main方法到Tomcat启动的魔法之旅
java·spring boot·后端·spring·tomcat·firefox
IT老胡32 分钟前
Docker入门与实操(1):Docker简介
运维·docker·容器