一、实验的目的





了解密钥对的创建和使用,掌握免password远程登录和远程操作

二、实验环境

本地主机 rh1: 192.168.233.3/24

远程主机 rh2: 192.168.233.4/24

在putty上。以用户yanji登录rh1。





三、实验过程(写出屏幕上的输出,必要时作出评述或解释)

1、创建密钥对

主机rh1。用户yanji。

$zh

$cd

$mkdir -pm 700 .ssh

$ssh-keygen -f .ssh/id_dsa -t dsa





   [yanji@localhost yanji]$ zh

   [yanji@localhost yanji]$ cd

   [yanji@localhost yanji]$ mkdir -pm 700 .ssh

   [yanji@localhost yanji]$ ssh-keygen -f .ssh/id_dsa -t dsa

   Generating public/private dsa key pair.

   Enter passphrase (empty for no passphrase):

   Enter same passphrase again:

   Your identification has been saved in .ssh/id_dsa.

   Your public key has been saved in .ssh/id_dsa.pub.

   The key fingerprint is:

   19:0a:c1:03:f5:5a:d6:1f:fe:ba:2b:bb:8a:98:a9:2c yanji@localhost.localdomain









口令串passphrase为空。查看产生的密钥对:

私钥:

$cd

$cat .ssh/id_dsa 





   [yanji@localhost yanji]$ cd

   [yanji@localhost yanji]$ cat .ssh/id_dsa

-----BEGIN DSA PRIVATE KEY-----

MIIBuwIBAAKBgQCg2+/fn+RwjHYUDYA0hczgX/dRf0ljszAUeopo4QpF4K+WhmRM

fNsfdigzCA9Y7/aMeZ5olT69KfaKmEGJs2apvpcdtPdazHQgU3CyGneQly5USP0K

xwtrsF6SyllrDzS42JJrEgnTAvn3ix1KSy8mbZjfaCzFD3lDuRrk9kxWTQIVALcY

qQDmMAmq4OgxURdDvIuO0GPzAoGAA0ANpEGkECDi25QENHUSXwLyKEdcCwppE7VT

XgLJ+qZNnLND1xSPuJi4oD1H0XpuG+5tyoTfrizoEOBZfKfSSHwVPnSQKzB11o4r

Nn2H1pj6hX1nvCeNYHVZ/C5Y8XhfLK+CzWZy+avG17PrNHWSPoItMhP0/Oq7HW2T

LyFGWBsCgYBLGHGc7AOIUeuiBNMiQxLX8itbhxGtK2dNWJYb6CL8D2t3j7loEDGY

6y5EXhNcajIEDB7IBf0d7qYiqx8sBcf1+cgNOvJhySSe33XQNeDteJuQoNPOMcYu

uivB5IezWcO08+lfov4RqMdJQpJ+dcRE1i1s5sbxepQGU0jtroDKIAIVAIWu/kwt

gTQnfm3OPTAErqESbbb7

-----END DSA PRIVATE KEY-----









公钥:

$cat .ssh/id_dsa.pub





   [yanji@localhost yanji]$ cat .ssh/id_dsa.pub

ssh-dss AAAAB3NzaC1kc3MAAACBAKDb79+f5HCMdhQNgDSFzOBf91F/SWOzMBR6imjhCkXgr5aGZEx82x92KDMID1jv9ox5nmiVPr0p9oqYQYmzZqm+lx2091rMdCBTcLIad5CXLlRI/QrHC2uwXpLKWWsPNLjYkmsSCdMC+feLHUpLLyZtmN9oLMUPeUO5GuT2TFZNAAAAFQC3GKkA5jAJquDoMVEXQ7yLjtBj8wAAAIADQA2kQaQQIOLblAQ0dRJfAvIoR1wLCmkTtVNeAsn6pk2cs0PXFI+4mLigPUfRem4b7m3KhN+uLOgQ4Fl8p9JIfBU+dJArMHXWjis2fYfWmPqFfWe8J41gdVn8LljxeF8sr4LNZnL5q8bXs+s0dZI+gi0yE/T86rsdbZMvIUZYGwAAAIBLGHGc7AOIUeuiBNMiQxLX8itbhxGtK2dNWJYb6CL8D2t3j7loEDGY6y5EXhNcajIEDB7IBf0d7qYiqx8sBcf1+cgNOvJhySSe33XQNeDteJuQoNPOMcYuuivB5IezWcO08+lfov4RqMdJQpJ+dcRE1i1s5sbxepQGU0jtroDKIA==
yanji@localhost.localdomain

[yanji@localhost yanji]$









2、上传公钥到rh2

主机rh1,用户yanji。

$cd

$scp .ssh/id_dsa.pub root@192.168.233.4:.





   [yanji@localhost yanji]$ scp .ssh/id_dsa.pub root@192.168.233.4:.

   root@192.168.233.4's password:

   id_dsa.pub           100% |*****************************|   617       00:00





3、远程登录rh2

$主机rh1,用户yanji。

$ssh root@192.168.223.4

...

#

   [yanji@localhost yanji]$ ssh root@192.168.233.4

   root@192.168.233.4's password:

   Last login: Fri Jan 30 15:08:33 2015 from 192.168.233.1









如今到了rh2。





4、加入yanji的公钥到授权密钥文件

#mkdir -pm 600 .ssh

#cat id_dsa.pub >> .ssh/authorized_keys

#chmod 600 .ssh/authorized_keys

#exit

$

   [root@localhost root]# mkdir -pm 600 .ssh

   [root@localhost root]# cat id_dsa.pub >> .ssh/authorized_keys                      [root@localhost root]#    chmod 600 .ssh/authorized_keys

   [root@localhost root]# exit

   [yanji@localhost yanji]$









如今回到了rh1。

5、免password远程登录

主机rh1,用户yanji。 

远程登录rh2,创建文件poem1后退出。

$ssh root@192.168.233.4

#zh

#cat > poem1

唧唧复唧唧

木兰当户织

不闻机杼声

惟闻女叹息

#exit

$





    [yanji@localhost yanji]$ ssh root@192.168.233.4

    Last login: Fri Jan 30 15:13:39 2015 from 192.168.233.3

    [root@localhost root]# zh

    [root@localhost root]# cat > poem1

唧唧复唧唧

木兰当户织

不闻机杼声

惟闻女叹息

    [root@localhost root]# exit

logout

Connection to 192.168.233.4 closed.

[yanji@localhost yanji]$









如今又回到了rh1

6、远程复制

主机rh1,用户yanji

$ls

$scp root@192.168.233.4:poem1 .

$ls

$cat poem1









   [yanji@localhost yanji]$ ls

01

   [yanji@localhost yanji]$ scp root@192.168.233.4:poem1 .

poem1                100% |********************************|    64       00:00

   [yanji@localhost yanji]$ ls

01  poem1

   [yanji@localhost yanji]$ cat poem1

唧唧复唧唧

木兰当户织

不闻机杼声

惟闻女叹息









6、远程操作(远程运行命令)

主机rh1,用户yanji。

$ssh root@192.168.233.4 ls -l

$ssh root@192.168.233.4 "echo '(木兰诗片段)' >> poem1"

$ssh root@192.168.233.4 "cat poem1"





     [yanji@localhost yanji]$ ssh root@192.168.233.4 ls -l

total 160

-rw-r--r--    1 root     root         1837 Nov  9 03:51 anaconda-ks.cfg

-rw-r--r--    1 root     root            0 Nov 21 13:41 backup

drwxr-xr-x    2 root     root         4096 Nov 16 01:44 bin

drwxr-xr-x    2 root     root         4096 Nov 21 07:48 c

-rw-r--r--    1 root     root           49 Nov 21 13:52 cron.txt

-rw-r--r--    1 root     root          182 Nov 21 05:53 dd

-rw-r--r--    1 root     root           12 Nov 21 08:01 ee

-rw-r--r--    1 root     root           50 Nov 16 01:41 file

-rw-r--r--    1 root     root            0 Nov 21 01:53 file1

-rw-r--r--    1 root     root            0 Nov 21 01:53 file4

-rw-r--r--    1 root     root            0 Nov 21 01:53 file44

drwxr-xr-x    2 root     root         4096 Nov 21 02:51 file55

drwxr-xr-x    2 root     root         4096 Nov 21 01:57 file554

-rwxr-xr-x    1 root     root        11816 Nov 16 02:09 hexagon

-rw-r--r--    1 root     root          339 Nov 16 02:08 hexagon.c

-rw-r--r--    1 root     root          460 Nov 16 02:10 hexagon.dat

-rw-r--r--    1 root     root         1696 Nov 16 01:52 hexagon.o

-rw-r--r--    1 root     root          151 Nov 16 02:12 hexagon.p

-rw-r--r--    1 root     root          617 Jan 30 15:10 id_dsa.pub

-rw-r--r--    1 root     root           12 Nov 21 08:03 info

-rw-r--r--    1 root     root        19564 Nov  9 03:50 install.log

-rw-r--r--    1 root     root         4268 Nov  9 03:50 install.log.syslog

-rwxr-xr-x    1 root     root          103 Nov 21 15:22 l1

-rwxr-xr-x    1 root     root          137 Nov 21 08:08 let

-rw-r--r--    1 root     root            3 Nov 14 16:15 list.o

-rwxr-xr-x    1 root     root          104 Nov 14 12:10 mean

drwxr-xr-x    2 root     root         4096 Nov 12 08:12 mmmmm

-rw-r--r--    1 root     root          762 Nov 21 07:44 named.conf

-rw-r--r--    1 root     root          104 Nov 11 07:04 nn

drwxr-xr-x    2 root     root         4096 Nov 21 04:01 p

-rw-r--r--    1 root     root           64 Jan 30 15:20 poem1

drwxr-xr-x    2 root     root         4096 Nov 21 04:01 pp

-rwxr-xr-x    1 root     root          133 Nov 21 05:24 shell

-rw-r--r--    1 root     root           29 Nov 21 14:00 time

-rw-r--r--    1 root     root         9767 Nov 21 15:54 xx.tar.gz





[yanji@localhost yanji]$ ssh root@192.168.233.4 "echo '(木兰诗片段)' >> poem1"

[yanji@localhost yanji]$ ssh root@192.168.233.4 "cat poem1"

唧唧复唧唧

木兰当户织

不闻机杼声

惟闻女叹息

(木兰诗片段)









四、实验的体会

知道部分远程操控的操作和免password登录。自己还是那么粗心,一開始就打错一个字母,搞了非常久才发现。

SSH公钥认证的更多相关文章

  1. SSH公钥认证+优化

    一 ssh公钥认证流程: sshclinet机器:产生公私钥(公钥相当于一把锁) sshclient:将公钥发给sshserver(抛出锁子) sshclinet去连sshserver不需要密钥   ...

  2. Linux配置SSH公钥认证与Jenkins远程登录进行自动发布

    公钥认证,是使用一对加密字符串,一个称为公钥(public key), 任何人都可以看到其内容,用于加密:另一个称为密钥(private key),只有拥有者才能看到,用于解密. 在使用jenkins ...

  3. ssh公钥认证原理及设置root外的其他用户登录ssh

    1)创建其他用户 useradd [-d 登录目录] [-G ssh][用户名]  一定要将用户添加到ssh组不然无法没有权限登录ssh 2)设置ssh不允许root登录 vi /etc/ssh/ss ...

  4. [svc][op]SSH公钥认证+优化

    一 ssh公钥认证流程: sshclinet机器:产生公私钥(公钥相当于一把锁) sshclient:将公钥发给sshserver(抛出锁子) sshclinet去连sshserver不需要密钥 二 ...

  5. 转: SSH 公钥认证

    转: http://blog.knownsec.com/2012/05/ssh-%E5%85%AC%E9%92%A5%E8%AE%A4%E8%AF%81/ SSH 公钥认证 2012-05-15 简介 ...

  6. SSH公钥认证(码云)

    开发者向码云版本库写入最常用到的协议是 SSH 协议,因为 SSH 协议使用公钥认证,可以实现无口令访问,而若使用 HTTPS 协议每次身份认证时都需要提供口令.使用 SSH 公钥认证,就涉及到公钥的 ...

  7. SSH公钥认证登录

    概述: SSH登录的认证方式分为两种,一种是使用用户名密码的方式,另一种就是通过公钥认证的方式进行访问, 用户名密码登录的方式没什么好说的,本文主要介绍通过公钥认证的方式进行登录. 思路: 在客户端生 ...

  8. 使用SecureCRT设置linux系统登录的ssh公钥认证

    1.修改ssh配置文件/etc/ssh/sshd_configRSAAuthentication yes                             //使用RSA加密算法PubkeyAu ...

  9. linux配置ssh公钥认证,打通root用户的免密码输入的scp通道

    1.ssh-keygen ssh-keygen是unix-like系统的一个用来生成.管理ssh公钥和私钥的工具. 2.用法 常用的重要的选项有: -b num   指定生成多少比特长度的key,单位 ...

  10. 一次由SELinux引起的ssh公钥认证失败问题

    一直使用CentOS作为服务器系统,平时装完系统以后都是建立publickey认证机制,然后关闭密码认证.原本是一件轻车熟路毫无压力的事情,不想前日新装一台机器按照正常配置以后居然使用publicke ...

随机推荐

  1. 折腾开源WRT的AC无线路由之路-5

    -在Mac上设置无password连接SSH 1. 生成SSH密钥对 <pre name="code" class="html">ssh-keyge ...

  2. 【解决】run-as: Package &#39;&#39; is unknown

    问题: [2014-07-30 20:20:25 - nativeSensorStl] gdbserver output: [2014-07-30 20:20:25 - nativeSensorStl ...

  3. go并发设计模式 --资源生成器模式

    1.简单的生成器 package main import ( "fmt" "math/rand" ) func GenerateIntA()chan int { ...

  4. POJ 2536 匈牙利算法

    思路:最大匹配 (很裸) // by SiriusRen #include <cmath> #include <cstdio> #include <cstring> ...

  5. 主流的Python领域和框架--转

    原文地址:https://www.zhihu.com/question/19899608

  6. Java 系列之spring学习--springmvc注解参数传递(六)

    一.绑定参数注解如下 @RequestParam     绑定单个请求数据,既可以是URL中的参数,也可以是表单提交的参数或上传的文件. 它有三个属性:  value    用于设置参数名. defa ...

  7. Controller总结

    下图显示了组建之间的基本控制流程 1.1控制器工厂.动作调用器 控制器工厂负责创建对请求进行服务的控制器实例 动作调用其负责查找并调用控制器类中的动作方法. 1.2自定义控制器工厂 namespace ...

  8. JS进阶 - 浏览器工作原理

    一.浏览器的结构 浏览器的主要组件为: 用户界面 - 包括地址栏.前进/后退按钮.书签菜单等.除了浏览器主窗口(显示页面),其他部分都属于用户界面. 浏览器引擎 - 在用户界面和渲染引擎之间传送指令. ...

  9. python 3.x 学习笔记16 (队列queue 以及 multiprocessing模块)

    1.队列(queue) 用法: import queue q = queue.Queue() #先进先出模式 q.put(1) #存放数据在q里 作用: 1)解耦    2)提高效率 class qu ...

  10. UWP tips (与wp8.1的不同)

    一.异步调用之后,要更新UI时,代码如下 await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =&g ...