ssh密钥登录(两种方法)

方法一:

使用下例中ssky-keygen和ssh-copy-id,仅需通过3个步骤的简单设置而无需输入密码就能登录远程Linux主机。
ssh-keygen 创建公钥和密钥。
ssh-copy-id 把本地主机的公钥复制到远程主机的authorized_keys文件上。
ssh-copy-id 也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys设置合适的权限 。

步骤1: 用 ssh-key-gen 在本地主机上创建公钥和密钥
ligh@local-host$ ssh-keygen -t  rsa
Enter file in which to save the key (/home/jsmith/.ssh/id_rsa):[Enter key]
Enter passphrase (empty for no passphrase): [Press enter key]
Enter same passphrase again: [Pess enter key]
Your identification has been saved in /home/jsmith/.ssh/id_rsa.
Your public key has been saved in /home/jsmith/.ssh/id_rsa.pub.
The key fingerprint is: 33:b3:fe:af:95:95:18:11:31:d5:de:96:2f:f2:35:f9
ligh@local-host

步骤2: 用 ssh-copy-id 把公钥复制到远程主机上
ligh@local-host$ ssh-copy-id -i ~/.ssh/id_rsa.pub  root@192.168.0.3
ligh@remote-host‘s password:
Now try logging into the machine, with ―ssh ?remote-host‘‖, and check in:
.ssh/authorized_keys to make sure we haven‘t added extra keys that you weren‘t expecting.
[注: ssh-copy-id 把密钥追加到远程主机的 .ssh/authorized_key 上.]

步骤3: 直接登录远程主机
ligh@local-host$ ssh remote-host
Last login: Sun Nov 16 17:22:33 2008 from 192.168.1.2
[注: SSH 不会询问密码.]
ligh@remote-host$
[注: 你现在已经登录到了远程主机上]

http://blog.163.com/lgh_2002/blog/static/44017526201011333227161/

方法二

一、概述

1、就是为了让两个linux机器之间使用ssh不需要用户名和密码。采用了数字签名RSA或者DSA来完成这个操作

2、模型分析

假设 A (192.168.20.59)为客户机器,B(192.168.20.60)为目标机;

要达到的目的:
A机器ssh登录B机器无需输入密码;
加密方式选 rsa|dsa均可以,默认dsa

 

二、具体操作流程

 

单向登陆的操作过程(能满足上边的目的):
1、登录A机器
2、ssh-keygen -t [rsa|dsa],将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub
3、将 .pub 文件复制到B机器的 .ssh 目录, 并 cat id_rsa.pub >> ~/.ssh/authorized_keys
4、大功告成,从A机器登录B机器的目标账户,不再需要密码了;(直接运行 #ssh 192.168.20.60

http://blog.csdn.net/kongqz/article/details/6338690

  • 9
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
SSH(Secure Shell)是一种网络协议,用于在不安全的网络中建立安全的远程连接。SSH实现session免密登录的原理主要涉及公钥加密和身份验证两个方面。 1. 公钥加密: 在SSH中,使用公钥加密算法来实现安全通信。在免密登录中,首先需要生成一对密钥,包括公钥和私钥。用户将公钥保存在远程服务器上,而私钥则保存在本地。当用户发起SSH连接请求时,远程服务器会向用户发送一个随机数(称为challenge)。用户使用私钥对challenge进行加密,并将加密后的结果发送给服务器。服务器使用之前保存的公钥对加密结果进行解密,如果解密成功,则说明用户拥有对应的私钥,可以被认证通过。 2. 身份验证: 在公钥加密的基础上,SSH还需要进行身份验证来确保连接的安全性。常见的身份验证方式有两种:密码身份验证和公钥身份验证。 - 密码身份验证:用户在连接时需要输入密码进行身份验证。但是,在免密登录中,我们希望避免每次都输入密码,因此需要使用公钥身份验证。 - 公钥身份验证:在免密登录中,用户将自己的公钥保存在远程服务器上。当用户发起SSH连接请求时,服务器会将保存的公钥与用户发送的加密结果进行比对,如果匹配成功,则认为用户身份验证通过。 综上所述,SSH实现session免密登录的原理是通过公钥加密和身份验证来确保连接的安全性和免去密码输入的步骤。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值