OPENSSH服务器(ssh-keygen的使用方法)

一·相关概念

1. OPENSSH概念
OpenSSH是SSH(Secure Shell) 协议的免费开源实现。SSH协议族可以用来进行远程控制, 或在计算机之间传送文件。而实现此功能的传统方式,如telnet、 rcp ftp、 rlogin、rsh都是极为不安全的,并且会使用明文传送密码。OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的据由此来代替原来的类似服务。

2. OPENSSH工作原理
服务器端开启SSH服务,在端口22监听客户端请求;
客户端发出请求,如果是第一次与服务器建立连接,服务器端会向客户端发送一个rsa key;
客户端接收到服务器端发送过来的rsa key后,就会采用与服务器端协商好的加密算法,生成会话密钥(此会话密钥用于加密客户端与服务器端之间的会话),并用rsa key加密会话密钥,并发送给服务器端;
服务器端就用对应的私钥解密已加密的会话密钥,然后用此会话密钥加密确认信息,发送给客户端。客户端用会话密钥解密加密的确认信息,到此,密钥交换成功和服务器认证成功。

3. OPENSSH协议
SSH是一种协议标准,其目的是实现安全远程登录以及其它安全网络服务
SSH1协议:由单个协议提供密钥交换、身份认证与加密的功能
SSH2协议:
传输层协议(主要提供密钥交换与服务器端认证功能)
认证协议 (主要提供密钥交换与服务器端认证功能)
连接协议 (主要提供远程执行命令功能)

4. OPENSSH端口
TCP 22

5. OPENSSH常用客户端工具
SecureCRT
Xshell
Xmanager
MobaXterm

6. DROPBEAR
Dropbear是一个相对较小的SSH服务器和客户端。是另一款ssh协议的开源实现类似SSH,实现完整的SSH客户端和服务器版本2协议。但它不支持SSH版本1,以节省空间和资源,并避免在SSH版本1的固有的安全漏洞。支持scp

二 .OPENSSH服务安装配置

(一)概述

1、为了让两个linux机器之间使用ssh免密码,采用了数字签名RSA或者DSA来完成这个操作。

2、模型分析

假设 A (192.168.11.142)为客户机,B(192.168.11.143)为目标机;

要达到的目的:
A机器ssh登录B机器无需输入密码

(二)具体操作流程

1、登录A机器
2、ssh-keygen ,将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub
3、将 .pub 文件复制到B机器的 .ssh 目录, 并 cat id_dsa.pub >> ~/.ssh/authorized_keys
4、大功告成,从A机器登录B机器的目标账户,不再需要密码了;

1.关闭防火墙&Selinux
systemctl stop firewalld
setenforce 0

2.安装OPENSSH服务器及客户端
yum install openssh-server -y (服务端)
yum install openssh-clients -y (客户端)

3.OPENSSH服务器、客户端的配置文件
/etc/ssh/sshd_config #服务端配置文件
/etc/ssh/ssh_config #客户端配置文件

4.OPENSSH基于密钥的认证 #限于客户机是管理员

客户端(192.168.11.142):
ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 回车
Created directory ‘/root/.ssh’.
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:
SHA256:45k2d8myM9cjh/Gty2p+gk5SdUqUsSy/ynfqpQWIx2E root@localhost.localdomain
The key’s randomart image is:
±–[RSA 2048]----+
| oo |
| o… |
| E = . |
| + B o |
| S = + |
| . * …+ |
| B +.==o. |
| . +=B=B .|
| .=O
O++ |
±—[SHA256]-----+
ls -a
.ssh
cd .ssh
ls
id_rsa id_rsa.pub
cat id_rsa.pub > authorized_keys #文件名必须为authorized_keys
scp authorized_keys 192.168.11.143:/home/liuyao/
The authenticity of host ‘192.168.11.143 (192.168.11.143)’ can’t be established.
ECDSA key fingerprint is SHA256:3uu+Zjhss20Lsp5s8RLdK4tmKwkfJurWGHNa5SC08qw.
ECDSA key fingerprint is MD5:7a:3e:52:d1:82:79:a8:f7:b3:5b:be:e8:2b:8a:48:98.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘192.168.11.143’ (ECDSA) to the list of known hosts.
root@192.168.11.143’s password:
authorized_keys 100% 408 349.8KB/s 00:00
目标机(192.168.11.143):
cd /home/liuyao/
ls
authorized_keys #会发现有这个文件
mkdir .ssh
mv authorized_keys .ssh/ #authorized_keys文件必须放到.ssh目录下
cd .ssh/
ls
authorized_keys
这时回到客户机(192.168.11.142):
ssh liuyao@192.168.11.143
[liuyao@localhost ~]$ #免密码登录到了目标机

5.OPENSSH基于口令的认证 #基于普通用户实现免密码登录

客户机操作:
useradd user1
passwd user1 #设置密码
su - user1
ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user1/.ssh/id_rsa):回车
Created directory ‘/home/user1/.ssh’.
Enter passphrase (empty for no passphrase): 回车
Enter same passphrase again: 回车
Your identification has been saved in /home/user1/.ssh/id_rsa.
Your public key has been saved in /home/user1/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:7WlqvS+scDTeLA/j6s2Aflv/xov+3NPydH4vfGz0NWw user1@localhost.localdomain
The key’s randomart image is:
±–[RSA 2048]----+
| |
| |
| |
| . |
| S . . |
| . o = . Eo|
| . o Bo*. …+|
| . .O.O+oo.=oO|
| .o++oB
…B*|
±—[SHA256]-----+
ssh-copy-id user2@192.168.11.143
/bin/ssh-copy-id: INFO: Source of key(s) to be installed: “/home/user1/.ssh/id_rsa.pub”
The authenticity of host ‘192.168.11.143 (192.168.11.143)’ can’t be established.
ECDSA key fingerprint is SHA256:mGgEV4do2moDpLIwzcBUGDDfLfOyu6pAuEMPY3unHJI.
ECDSA key fingerprint is MD5:1b:68:37:09:dd:03:bb:fc:f4:bb:be:ac:53:af:5c:11.
Are you sure you want to continue connecting (yes/no)? yes
/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed – if you are prompted now it is to install the new keys
user2@192.168.11.143’s password:
Number of key(s) added: 1
Now try logging into the machine, with: “ssh ‘user2@192.168.11.143’”
and check to make sure that only the key(s) you wanted were added.
目标机操作:
useradd user2
passwd user2
再回到客户端user1:
ssh user2@192.168.11.145 #免密码登录成功
Last login: Thu Dec 6 20:30:33 2018

`

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值