首页 > 系统相关 >linux服务器互信配置

linux服务器互信配置

时间:2022-11-21 23:26:31浏览次数:42  
标签:文件 公钥 SSH linux 服务器 ssh 互信

假设有AB两台服务器
目标:

  • A可以通过命令ssh B即可登录到B服务器进行操作
  • B可以通过命令ssh A即可登录到A服务器进行操作

一、简介

Secure Shell(缩写为SSH),由IETF的网络工作小组(Network Working Group)所制定;SSH为一项创建在应用层和传输层基础上的安全协议,为计算机上的Shell(壳层)提供安全的传输和使用环境。

传统的网络服务程序,如rsh、FTP、POP和Telnet其本质上都是不安全的;因为它们在网络上用明文传送数据、用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击。就是存在另一个人或者一台机器冒充真正的服务器接收用户传给服务器的数据,然后再冒充用户把数据传给真正的服务器。而SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。通过SSH可以对所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。

SSH之另一项优点为其传输的数据可以是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、POP、甚至为PPP提供一个安全的“通道”。

二、建立互信

  • 建立服务器A->B的互信为例

1. 各个服务器生成证书

  • A服务器生成证书, -t:选择一种加密方式,证书生成的过程中一路回车即可。
ssh-keygen -t rsa
  • 经过以上命令,会在目录~/.ssh/下生成文件,各个文件作用:
    • id_rsa,私匙
    • id_rsa.pub,公匙
    • known_hosts,A通过ssh首次连接到B,B会将公钥1(host key)传递给A,A将公钥1存入known_hosts文件中,以后A再连接B时,B依然会传递给A一个公钥2,OpenSSH会核对公钥,通过对比公钥1与公钥2 是否相同来进行简单的验证,如果公钥不同,OpenSSH会发出警告, 避免你受到DNS Hijack之类的攻击。

2. 将证书公匙发送到对方

  • 要想A可以ssh到B,需要将A的公匙放到B服务器某用户的家目录~/.ssh/authorized_keys文件中,此处分为两种办法
  • 如果你知道B服务器的密码,则可以直接执行命令即可,将你的公共密钥填充到一个远程机器上的authorized_keys文件中,没有这个文件会自动创建,这是比较推荐的方法。
  • B可以是ip地址,亦可以是主机名,注意如果是主机名,请确认/etc/hosts文件中配置了域名地址
ssh-copy-id  B
  • 如果你不知道密码,那就手动拷贝公匙id_rsa.pub的内容到B服务器的~/.ssh/authorized_keys文件中吧,一般需要你手动创建文件authorized_keys,至此,服务器A到B的互信就已经开通了。

3. 验证互信

  • A服务器执行以下命令,一路回车,如果是第一次登录会有警告,填写y通过即可
ssh B
  • 如果登录了B服务器,则表明成功,否则再好好检查以上步骤!肯定有哪操作不当的。
  • 如果想B可以sshA,按上述步骤执行一遍即可。

三、注意点

1. 用户的问题

  • 建立互信时,是以当前登录用户建立的互信,所以如果你以非root用户登录,建立的互信可能权限较低。

2. 升级openssh后,可能提示warning信息

image

  • 将文件 known_hosts文件内容清空即可。

标签:文件,公钥,SSH,linux,服务器,ssh,互信
From: https://www.cnblogs.com/yangche/p/16913765.html

相关文章

  • Linux保持SSH连接时间设置
    连接SSH服务器刚刚离开一会就断开,不得不需要反复连接服务器,为了使SSH服务器可以保持足够的连接时间,大家可以按以下方法设置:基于安全的理由,如果用户连线到SSHServer后闲......
  • linux .的用处
    相当于source命令,把文件当作脚本执行。准备一个文本文件:newtext文本内容ifconfigsource执行.执行两者的区别.执行的文件必须接相对完整的文件路径,source则没有......
  • Linux系列---【如何通过登录账号查看服务器是否被黑客入侵?】
    如何通过登录账号查看服务器是否被黑客入侵?1.问题redis最近不能用了,一看日志和定时任务有关系,第一反应就是服务器被黑了,下面是我的排查思路,记录一下。2.查看最近登......
  • php 在LINUX下创建目录失败的解决方法
    mkdir(APP_PATH.'tempinfo/getport/'.$config_name,0777,true);创建多级目录时使用参考https://jingyan.baidu.com/article/63acb44ac8ec5861fdc17e4d.html......
  • CNETOS LINUX 计划任务详解
    r.sh复制代码tamcdir=HOME/ora/userprojects/domains/tamccd{tamcdir}echorm-f​​​lsheapdump*.phd​​​rm-fheapdump*.phdechorm-f​​​lsjavacore*......
  • Linux下常用的软件安装方式
    Linux下常用的3种软件安装方式一:Linux源码安装  1、解压源码包文件  源码包通常会使用tar工具归档然后使用gunzip或bzip2进行压缩,后缀格式会分别为.tar.gz与.tar......
  • PHP 新特性 linux安装ssh2
    p7新特性p7新特性http://www.aichengxu.com/view/5446277 已经云http://www.lai18.com/content/2442224.html 已经云p7安装ssh2http://www.mobibrw.com/2016/4049//ssh2最......
  • xampp linux 安装
    http://www.111cn.net/sys/linux/65704.htm参考的这个,已经云了.1、查看你linux系统的位数,是32位的还是64位的。使用uname-a命令查看。 uname-a 显示有x86_64则说......
  • linux FHS结构
    什么是FHSFHS(英文:FilesystemHierarchyStandard中文:文件系统层次结构标准),多数Linux版本采用这种文件组织形式,FHS定义了系统中每个区域的用途、所需要的最小构成的文......
  • 关于Linux中网络方面的命令用法(持续更新)
    ifconfig概述ifconfig工具被用来查看和配置网络接口配置信息。用ifconfig命令配置的网卡信息,在网络设备重启后,配置就会还原。要想将修改的配置信息永远的存的电脑里,那就......