ssh 讲解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssh 讲解相关的知识,希望对你有一定的参考价值。

ssh

ssh: secure shell, protocol, 22/tcp, 安全的远程登录

OpenSSH: ssh协议的开源实现

dropbear:另一个开源实现

SSH协议版本

  • v1: 基于CRC-32做MAC,不安全;man-in-middle

  • v2:双方主机协议选择安全的MAC方式

  • 基于DH算法做密钥交换,基于RSA或DSA实现身份认证

两种方式的用户登录认证:

  • 基于password

  • 基于key

OpenSSH:

C/S

C: ssh, scp, sftp
Windows客户端:
xshell, putty, securecrt, sshsecureshellclient

S: sshd

客户端组件:

ssh, 配置文件:/etc/ssh/ssh_config

Host PATTERN
StrictHostKeyChecking no 首次登录不显示检查提示

格式:ssh [[email protected]]host [COMMAND]

   ssh [-l user] host [COMMAND]

  • -p port:远程服务器监听的端口(指明端口)

  • -b:指定连接的源IP(两个及以上IP时要指明就用到这个选项)

  • -v:调试模式(用来排错)

  • -C:压缩方式

  • -X: 支持x11转发(如果想用图形方式用)

  • -Y:支持信任x11转发

    • ForwardX11Trusted yes

  • -t:  强制伪tty分配
     ssh -t remoteserver1 ssh remoteserver2
     (用来通过 1 去连接 2 不加 -t会报错)

注意:默认是以连接主机的用户名去连接!就是当前以root身份登录就会以root身份去连接那个ip的主机!第一次会有确认通知!!!

1.支持连接后执行一条命令并退回
技术分享

改ssh的端口号
技术分享
不过改了端口以前连接的用户不受影响!
改了端口如果想默认连接这个端口就要把客户端的配置文件改变!

允许实现对远程系统经验证地加密安全访问

当用户远程连接ssh服务器时,会复制ssh服务器
/etc/ssh/ssh_host*key.pub(centos7.0默认是ssh_host_ecdsa_key.pub)文件中的公钥到客户机的 ~./ssh/know_hosts中。下次连接时,会比较两处是否有不同。

技术分享

技术分享

基于密钥的认证:

1 、在客户端生成密钥对

ssh-keygen -t rsa [-P ‘‘] [-f “/root/.ssh/id_rsa"]

#ssh-keygen –t rsa –P ‘‘  -f "/root/.ssh/id_rsa"

技术分享

2、 把公钥文件传输至远程服务器对应用户的家目录(会自动生成 authorized_keys )

ssh-copy-id [-i [identity_file]] [[email protected]]host

技术分享

authorized_keys此文件就是自动登录用到的文件

3、 测试

技术分享

注意:生成的这两个ssh密钥对要保护好,如果被盗走就会让别的机器也能不用密码就连上了!!

4、 在SecureCRT,Xshell或实现基于key验证

在SecureCRT工具—>创建公钥—>生成Identity.pub文件转化为openssh兼容格式(适合SecureCRT,Xshell不需要转化格式),并复制到需登录主机上相应文件 authorized_keys 中,注意权限必须为600,在需登录的ssh主机上执行:
ssh-keygen  -i -f Identity.pub >> .ssh authorized_keys (SecureCRT 上要转换一下)

技术分享

技术分享

技术分享

技术分享

5、重设私钥口令:#ssh-keygen –p

6、验证代理(authentication agent)保密解密后的密钥

这样口令就只需要输入一次
在GNOME中,代理被自动提供(不需要执行这个 bash)
否则运行ssh-agent bash

7、钥匙通过命令添加给代理

ssh-add
然后再去连接就会把密码保存


以上是关于ssh 讲解的主要内容,如果未能解决你的问题,请参考以下文章

图文讲解MAC和windows如何SSH连接服务器!

SSH连接原理及ssh-key讲解

软件工程实践--SSH架构

ssh密钥讲解

SSH连接原理及ssh-key讲解

ssh 讲解