Linux服务器创建信任关系可以解决远程执行命令、远程传输文件多次手工输入的麻烦。可以实现环境一键打包备份。

测试环境

SuSE

手工创建

假设服务器A与B间要建立信任关系。用户想从服务器A免密码登录服务器B执行命令或者上传文件到服务器B。

1、登录服务器A,执行ssh-keygen -t rsa。按照提示默认操作即可(按enter)。在~/.ssh目录下会生成私钥文件id_rsa和公钥文件id_rsa.pub。

2、scp id_rsa.pub ${user}@${serverB}:~。将公钥文件id_rsa.pub上传到服务器B的的服务器家目录下。

3、登录服务器B,执行cat id_rsa.pub >> ~/.ssh/authorized_keys。将公钥文件内容添加到authorized_keys文件中。如果没有.ssh目录,可以手工创建。

4、登录服务器A,执行ssh ${user}@${serverB}测试,如果不出现提示密码输入直接登录成功,表示ssh信任关系建立成功。后续在服务器用户${user}下可以免密码操作。

设计思路

1、利用expect命令,参考手工创建步骤完成程序设计

使用方法

1、下载代码:createSSH.sh,上传到任一用户的指定目录下。

2、执行chmod +x createSSH.sh,赋可执行权限。

3、执行如命令:./createSSH oracle@192.168.0.1 oracle 。表示为./createSSH 远程用户@远程服务器IP 远程用户密码

参考资料

1、在linux环境上面,建立双机信任关系

Linux创建SSH信任关系的更多相关文章

  1. linux建立ssh信任关系

    一.建立SSH信任将A主机做为客户端(发起SSH请求 ip:192.168.200.170)将B主机作为服务器端(接收ssh请求   ip:192.168.200.149)以上以主动发起SSH登录请求 ...

  2. 批量部署ssh信任关系

    要求1:大批量部署SSH信任关系,在A文件分发服务器上大批量部署WEB层面信任关系文件分发服务器为:10.0.3.9 登录用户为:zhangsan WEB层IP段:10.0.3.10~10.0.3.6 ...

  3. 两台linux之间建立信任关系,实现免密码ssh远程登录或scp数据上传

    两台linux之间建立信任关系,实现免密码远程登录或数据上传 1.执行ssh-keygen命令,生成建立安全信任关系的证书: linux1上:执行命令  ssh-keygen  -t rsa 在程序提 ...

  4. linux机器间建立信任关系

    linux机器间建立信任关系 如何建立信任关系 在shell脚本中,需要使用scp命令将本地的文件复制到另一台机器中备份.但通常执行scp命令后都需要输入用户密码,这样在定时自动执行shell脚本中就 ...

  5. ssh 信任关系无密码登陆,清除公钥,批量脚本

    实验机器: 主机a:192.168.2.128 主机b:192.168.2.130 实验目标: 手动建立a到b的信任关系,实现在主机a通过 ssh 192.168.2.130不用输入密码远程登陆b主机 ...

  6. Linux 批量建立信任关系,实现ssh无password登陆的脚本

    作用: 把当前机器的ssh公钥拷贝到其它机器.以实现从当前机器能够ssh无password登陆到其它机器 用法: 1)把要加入的ip地址写入到一个文件里.比方host 2)把脚本保存为sh文件,如 i ...

  7. 【ssh信任关系】解决信任关系不生效问题

    配置的时候遇见点问题,发现即便将id_rsa.pub拷贝到了另一台机器上,信任也没有建立起来. 原因是另外一台机器上目录权限不对,可以通过su root后观察/var/log/message里的日志信 ...

  8. 快速创建SSH信任实现无密码登录

    1. 生成本机的公私钥匙对[oracle@Oracle11_2 scripts]$ -t rsa Generating public/private rsa key pair. Enter file ...

  9. SSH 信任关系建立

    需求hostA通过ssh登陆到hostB,实现免密登陆,以及SCP的免密传送文件 由于hostA要登陆到hostB 首先需要在hostA上生成密钥,使用以下命令 ssh-keygen -t rsa 按 ...

随机推荐

  1. sqlserver创建数据库

    --指向当前要使用的master数据库,向master数据库中注册创建信息 use master go --创建数据库 create database StudentManageDB on prima ...

  2. C# 公共类

    https://github.com/Jimmey-Jiang/Common.Utility/tree/master/Utility%E5%9F%BA%E7%A1%80%E7%B1%BB%E5%A4% ...

  3. Android 硬编码

    public class TextViewActivity extends Activity { // 声明TextView对象 private TextView textView; @Overrid ...

  4. PHP:引用PhpExcel导出数据到excel表格

    我使用的是tp3.2框架(下载地址:http://www.thinkphp.cn/topic/38123.html) 1.首先要下载PhpExcel类库,放在如下图目录下 2.调用方法 public ...

  5. Can't use Subversion command line client***Probably the path to Subversion executable is wrong. Fix

    新同事要入职,赶紧收拾一下电脑:再使用SVNupdate代码时,显示Nothing to show.androidstudio不能使用svn了: 是这样婶滴,报错信息 什么情况: 好了:问题叙述完毕开 ...

  6. alias with parameter,linux

    alias demoAlias1='_(){ git checkout -b $1; command2;}; _'

  7. day7--面向对象进阶(内含反射和item系列)

    一面向对象的结构和成员 1.1面向对象的结构 class A: company_name = '老男孩教育' # 静态变量(静态字段) __iphone = '1353333xxxx' # 私有静态变 ...

  8. uva-519-拼图

    给你N*M个碎片,问能否用他们拼成一个矩形,矩形的边缘要全是F,除外界边缘的边要么是I,要么O,不能是F1.碎片会重复出现,所以同样的碎片在同一个位置,如果已经不能放,直接跳过就行2.矩形的边缘要全是 ...

  9. Java 日期与数字转换

    package com.test; import org.apache.commons.lang.StringUtils; import org.junit.Test; import java.tex ...

  10. 白鹭引擎 - 碰撞检测 ( hitTestPoint )

    1, 矩形碰撞检测 class Main extends egret.DisplayObjectContainer { /** * Main 类构造器, 初始化的时候自动执行, ( 子类的构造函数必须 ...