我这里有2台机器,一台装了Teradata数据库,ip是192.168.184.128,称它为teradata-pc;另一台装了Oracle数据库,ip地址是192.168.184.129,称它为oracle-pc。有时需要从oracle-pc访问teradata-pc,每次都需要输入密码,比较麻烦。通过设置ssh免密码登陆可以解决这个问题。(更多的时候是——某个server上跑的程序需要ssh到另一个server,而又不能把密码hardcode在程序里。所以采用ssh的方式就比较安全和方便。)
 
实验目的:从oracle-pc连接teradata-pc时不需要输入密码(用root连接)。
 
步骤:
1、若之前没有设置过ssh的话,需要在主目录下建立.ssh文件夹;
2、在oracle-pc主目录下的.ssh文件夹上生成密钥对,并copy公钥为authorized_keys;
3、把生成的authorized_keys文件copy到teradata-pc的.ssh目录下;
4、ssh到teradata-pc时已经不需要输入密码了;
 
 
1、登陆到teradata-pc,在用户主目录(我们这里用root测试)下创建.ssh目录,用于存放authorized_keys文件。
 
TDExpress14.0.3_Sles10:~ # cd ~
 
TDExpress14.0.3_Sles10:~ # mkdir .ssh
 
 
 
2、登陆到oracle-pc,创建.ssh目录,生成密钥对文件,并copy公钥为authorized_keys
 
 
[root@ora11g ~]# cd ~
 
[root@ora11g ~]# mkdir .ssh
[root@ora11g ~]# cd .ssh
 
 
//生成密钥对文件
 
[root@ora11g .ssh]# ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
5e:e1:73:ea:c8:c7:bd:57:02:68:9b:ac:20:73:ff:55 root@ora11g.oracle.com

[root@ora11g .ssh]# ll
total 8
-rw------- 1 root root 1679 May 14 17:45 id_rsa
-rw-r--r-- 1 root root  404 May 14 17:45 id_rsa.pub

 
 
//copy公钥文件id_rsa.pub为authorized_keys
 
[root@ora11g .ssh]# cp id_rsa.pub authorized_keys
 
 
 
3、把生成的authorized_keys文件copy到teradata-pc的.ssh目录下
 
[root@ora11g .ssh]# scp ~/.ssh/authorized_keys root@192.168.184.128:/root/.ssh/

The authenticity of host '192.168.184.128 (192.168.184.128)' can't be established.
RSA key fingerprint is fc:a7:63:38:85:4f:f9:bb:1c:81:5e:53:fc:ec:4f:28.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.184.128' (RSA) to the list of known hosts.
Password:
authorized_keys                    100%  404     0.4KB/s   00:00 
  
 

4、从oracle-pc通过ssh连接到teradata-pc时已经不需要输入密码了
 
[root@ora11g .ssh]# ssh 192.168.184.128
Last login: Wed May 14 05:39:08 2014 from 192.168.184.1
Your use is subject to the terms and conditions of
            the click through agreement that brought you to this
            screen ("TERADATA EXPRESS") EVALUATION AND DEVELOPMENT
            LICENSE AGREEMENT), including the restriction that this
            evaluation copy is not for production use.
 
 
//成功连接到teradata-pc
 
TDExpress14.0.3_Sles10:~ # hostname
TDExpress1403_Sles10
 
 

SSH时不需输入密码的更多相关文章

  1. 如何通过linux ssh远程linux不用输入密码登入

    如何通过一台linux ssh远程其他linux服务器时,不要输入密码,可以自动登入.提高远程效率,不用记忆各台服务器的密码. 工具/原料   ssh,ssh-keygen,scp 方法/步骤   首 ...

  2. [MacOS] 终端使用ssh时,中文乱码问题处理

    终端显示中文问题处理: vim ~/.inputrc 加入以下代码 set meta-flag on set convert-meta off set input-meta on set output ...

  3. ESXi6.5上的Ubuntu虚机在远程SSH时宕机

    情况是这样的, 有一个ESXi6.5上跑的Ubuntu虚机, 版本是18.04.1, 今天升级成18.04.2后, 就发现远程连接SSH不对劲, 在本地登录和操作都好好的, 只要远程SSH一连接, 服 ...

  4. TortoiseSVN使用svn+ssh协议连接服务器时重复提示输入密码

    当使用svn+ssh协议连接svn服务器时,ssh会提示请求认证,由于不是svn客户端程序来完成ssh的认证,所以不会缓存密码. 而svn客户端通常会建立多个版本库的连接,当密码没有缓存的时候,就会重 ...

  5. ssh复制公钥成功后仍需输入密码

    1,网上说权限问题 登录流程: 被登录机器的文件权限: //用户权限 chmod 700 /home/username //.ssh文件夹权限 chmod 700 ~/.ssh/ // ~/.ssh/ ...

  6. SSH 在ssh-copy-id 之后仍需输入密码的问题

    最近在使用Ansible,基于SSH. 远程服务器IP: 192.168.200.193 以下提及的远程服务器都为该服务器. 远程用户: ansible_user 在本地服务器中,ssh-keygen ...

  7. 如何在ssh远程linux服务器时不需要输入密码

    目的: 期望A服务器在对B服务器执行ssh或者scp等命令的时候不需要输入密码 实现方法: 1.通过安装sshpass服务 2.通过密钥验证的方式 操作过程: 一.通过sshpass的方式达到密码非交 ...

  8. Java 加密Excel文件(打开时需输入密码)

    收集:author: lifq package com.XXX.XXX.utils; import java.io.IOException; import com.jxcell.CellExcepti ...

  9. 通过scp拷贝文件时无需交互输入密码

    工作中经常需要把一些文件从一个服务器传输到另一台服务器,linux环境下最习惯的方式当然是scp,但是scp需要交互输入密码有时候觉得麻烦,记录几种无需手动输入密码的方法. 方法一:建立SSH互信 此 ...

随机推荐

  1. vb6如何将MSHFlexGrid控件中的内容导出为Excel

    首先的是是准备工作 需要引用 Microsoft Excel 11.0 Object Library 需要添加控件Mircrosoft Hierarchical FlexGrid Control 6. ...

  2. jQuery中json对象的复制(数组及对象) .

    1.jQuery自带的$.map方式: $.map(json, function (n) { return n; }); 这种方式原来用于复制数组还可以,今天用它复制数组中的某一条记录,发现字段名称丢 ...

  3. (转)JavaScript 中对变量和函数声明的“提前(hoist)”

    变量声明“被提前” JavaScript 的语法和 C .Java.C# 类似,统称为 C 类语法.有过 C 或 Java 编程经验的同学应该对“先声明.后使用”的规则很熟悉,如果使用未经声明的变量或 ...

  4. 20145102 《Java程序设计》第4周学习总结

    20145102 <Java程序设计>第4周学习总结 教材学习内容总结 面向对象中,子类继承父类,避免重复的行为定义,不过并非为了避免重复定义行为就使用继承.如果正确判断使用继承的时机,以 ...

  5. angularJs中图表功能(有集成框架)-angular-flot

    1.柱状图和折线图的数据格式: $scope.Chart.data = [ { label: "离线", data: [[0, 2]] }, { label: "在线&q ...

  6. Umbraco(2) - Creating Your First Template and Content Node(翻译文档)

    创建(编辑)你的第一个模板(Template) 展开 Settings > Templates文件夹 - 然后你应该看到子节点名为"Homepage" - 这是我们在创建Do ...

  7. 转: Android基于HLS和RTMP协议的第三方SDK选择

    转自: http://isunxu.xyz/android/between-rtmp-and-hls-third-party-choice/ 协议的详解网上资料都太多了,我就不赘述了.Android上 ...

  8. 转: 视频相关的协议族介绍(rtsp, hls, rtmp)

    转自: http://www.zhihu.com/question/20621558   作者:杨华链接:http://www.zhihu.com/question/20621558/answer/1 ...

  9. 初识 Asp.Net内置对象之Request对象

    Request对象 Request对象用于检索从浏览器向服务器所发送的请求信息.它提供对当前页请求的访问,包括标题,Cookie,客户端证书等等.它也与HTTP协议的请求消息对应. Request对象 ...

  10. Page.ClientScript.RegisterStartupScript

    Page.ClientScript.RegisterStartupScript方法最初可用的选项之一就是使用一个可实现此功能的 .NET 类来注册脚本块. 第一个是 RegisterStartupSc ...