添加别名_ssh别名免密登陆服务器
介绍:
做开发时常常需要登陆远程服务器执行一些操作,以前每次都是使用 ssh userName@ip
来登陆,然而ip地址很难记,每次都需要查找下,导致效率太低下,使用ssh别名可以做到仅输入 cloud
登陆,连密码都不用输入,Windows用户请绕行...
操作步骤:
1 在主机A创建密钥对
ssh-keygen #创建证书,然后均回车(选择默认)
2 将公钥文件上传至远程主机
ssh-copy-id -i ~/.ssh/id_rsa.pub root@123.45.67.89 #根据提示输入密码
此步的目的是将公钥拷贝到服务器的 authorized_keys 文件中, 也可以用
cat ~/.ssh/id_rsa.pub | ssh user@123.45.67.89 "cat >> ~/.ssh/authorized_keys"
3 设置登录别名
3.1 在 ~/.ssh/ 目录下新建 config 文件
$ vim ~/.ssh/config
内容如下:
Host cloudHostName 123.45.67.89User root
Host cloud1HostName 123.45.67.90User root...
配置完成后 就可以使用 ssh cloud
命令登陆该远程服务器
3.2 也可以修改 .bash_profile 文件
$ vim ~/.bash_profile
添加如下内容:
alias cloud='ssh root@123.45.67.89'
配置完成后执行
source .bash_profile
使得.bash_profile立即生效,就可以使用 cloud
命令登陆该远程服务器
是不是感觉这样更加方便呢?
原理:
- 在客户端使用
ssh-keygen
生成一对密钥:公钥+私钥 - 将客户端公钥追加到服务端的
authorized_key
文件中,完成公钥认证操作 - 认证完成后,客户端向服务端发起登录请求,并传递公钥到服务端
- 服务端检索
authorized_key
文件,确认该公钥是否存在 - 如果存在该公钥,则生成随机数
R
,并用公钥来进行加密,生成公钥加密字符串pubKey(R)
- 将公钥加密字符串传递给客户端
- 客户端使用私钥解密公钥加密字符串,得到
R
- 服务端和客户端通信时会产生一个会话
ID(sessionKey)
,用MD5
对R和SessionKey
进行加密,生成摘要(即MD5
加密字符串) - 客户端将生成的
MD5
加密字符串传给服务端 - 服务端同样生成
MD5(R,SessionKey)
加密字符串 - 如果客户端传来的加密字符串等于服务端自身生成的加密字符串,则认证成功
- 此时不用输入密码,即完成建连,可以开始远程执行
shell
命令了
添加别名_ssh别名免密登陆服务器相关推荐
- 【生成密钥免密登陆服务器】
解决VScode+remote SSH免密登录服务器. 首先,先在Windows的powershell里面输入以下命令: ssh-keygen -t rsa -C "your_email@e ...
- 免秘登陆linux_linux 免密登陆(超简单)
一.客户端生产公钥 在windwos上 生成公钥私钥前,先下载git哦 ssh-keygen -t rsa # 记住下方方框内公钥保存地址, 二.查看自己用户的登录地址 cat /etc/passwd ...
- 多台Linux服务器之间互相免密登陆
多台Linux服务器之间互相免密登陆 例如我们有三台Linux 服务器: 192.168.0.1 192.168.0.2 192.168.0.3 1.1 首先配置服务器 1 面密令登录2 和 3 1. ...
- linux100台服务器免密,多台Linux服务器之间互相免密登陆,脚本同步免密
多台Linux服务器之间互相免密登陆,脚本同步免密 环境: 三台Linux 服务器 IP Release ...
- ssh免密登陆远程linux服务器
在工作的时候需要经常连接各个远程服务器,正常情况下每次连接远端服务器时都需要输入登陆账户的密码,每次输入都比较麻烦,希望走一个免登陆的效果. 1.生成公私钥 ssh-keygen -t rsa -C ...
- linux ssh免密登陆远程服务器
10.170.1.18服务器免密登录到10.170.1.16服务器 首先登入一台linux服务器(10.170.1.18),此台做为母机(即登入其他linux系统用这台做为入口):执行一行命令生成ke ...
- mac、Linux SSH 阿里云 vultr免密登录服务器
mac.Linux SSH 阿里云 vultr免密登录服务器 当你拥有了自己云服务器的时候,一定为了每次登录服务器输入密码特别痛苦. 那么福利来了,简单配置一下,免密登录你的服务器,希望能帮到大家 注 ...
- vscode ssh免密登陆设置
步骤很简单: 1 生成公钥,在本地机器上执行ssh-keygen. 2 将本地的公钥拷贝到远端机器上,在本地机器上执行ssh-copy-id -i ~/.ssh/id_rsa.pub usrname@ ...
- linux设置免密ssh,Linux终端设置免密登陆ssh(以 XShell 为例)
1.打开Xshell 2.在终端里生成免密登陆需要的密钥 2.导出公钥,存为来保存公钥.需要进一步把保存的公钥copy到远程服务器 3.Windows下可使用winscp工具或使用远程服务器的lszs ...
最新文章
- swoole学习(一)----linux安装swoole
- UVA 1156 - Pixel Shuffle(模拟+置换)
- QT子线程与主线程的信号槽通信
- C语言多项式乘法模拟,急!!!!c语言:求n次多项式的加法和乘法
- svg mysql_SVG 实例
- python接口自动化(四十四)- 公共模块configparser读取ini数据库、邮箱配置文件(单独说明)
- echarts 引用地图的json
- webots自学笔记(七)通过定义顶点构件3D形状(IndexedFaceSet节点)
- Activity、View、Window的理解一篇文章就够了
- mysql交互式创建表_MySQL 必知必会 创建和操纵表
- Spark学习笔记:Spark Streaming与Spark SQL协同工作
- python_lintcode_52翻转字符串_128哈希函数
- python实验--文字小游戏(小黑屋)
- react起步,冲冲冲
- 文件丢失了怎么能复原
- 颜色的识别方法和探索 基于matlab
- bitset的使用方法
- 三峡大学计算机与信息工程学院,三峡大学计算机与信息学院.doc
- 谁是第一个计算机系?
- element tab选项卡标签样式
热门文章
- wxWidgets:源代码概览
- boost::test模块命名函数参数框架的单元测试
- boost::pfr模块ops相关的测试程序
- boost::outcome模块containers相关的测试程序
- GDCM:gdcm::StringFilter的测试程序
- GDCM:DICOM PS 3.10文件格式的测试程序
- boost::convert模块实现默认转换器的测试程序
- ITK:详尽的优化器
- ITK:基本区域增长
- ITK:计算矢量图像中每个像素的大小以生成大小图像