SSH配置多台服务器之间的免密登陆以及登陆别名

在研究Kafka集群的时候遇到的问题,我想要在集群中的任意节点都可以操作整个集群的服务,比如启动、停止。这里就需要使用到SSH来远程执行目标服务器上面的命令,但是就会遇到一个需要登陆密码的问题,所以研究了一下SSH的免密登陆。

什么是SSH?

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。

简单说,SSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。

关于SSH的基本用法本文不作过多阐述。

SSH配置多台服务器之间的免密登陆

首先登陆到192.168.182.3服务器,进入到用户的~/.ssh目录下。

执行下面的命令后按四个回车。

ssh-keygen -t rsa 

再利用ssh-copy-id命令把生成的公钥copy到需要免密登陆其他的服务节点上。

ssh-copy-id 192.168.182.6
ssh-copy-id 192.168.182.4
ssh-copy-id 192.168.182.5

之后输入密码后就可以使用ssh进行免密登陆了。

SSH配置别名

一般使用SSH访问远程服务器的命令是:ssh username@ip,比如:ssh root@192.168.182.4。这种写法很麻烦,每次都需要手动输入这么一大串信息,这时候我们可以通过配置别名来实现便捷登陆,例如:ssh service1,通过配置,我们这里的service1就是前面的root@192.168.182.4这一大串。

配置别名,我们需要进入到当前用户的.ssh目录下,并且创建config文件。

如果你的.ssh目录不存在的话,你可以使用 ssh xxx 命令初始化一下。

cd ~/.ssh
vim config

将config文件编辑成下面这种格式即可:

Host server1
HostName 192.168.182.4
User root
IdentitiesOnly yes

Host server2
HostName 192.168.182.5
User root
IdentitiesOnly yes

保存之后就可以直接使用ssh 目标服务器别名来实现便捷登陆。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值