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
然后再去连接就会把密码保存

时间: 2024-10-05 04:25:03

ssh 讲解的相关文章

ssh详解

ssh讲解 一.加密.解密 1.数据加密与解密 加密(算法) 解密(算法) 明文                                                                       密文 2.加密算法 (1)对称加密算法:数据发送方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去.接收方收到密文后,需要使用加密及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文.在对称加密算法中,使用的密钥只有一个,发收信双方都使

ssh 配置文件讲解大全 ssh调试模式 sftp scp strace进行调试

ssh 配置文件讲解大全  ssh调试模式  sftp scp strace进行调试 http://blog.chinaunix.net/uid-16728139-id-3265394.html 最近在研究openssh的源代码,不得不折服它代码的精炼和彪悍,即便搞清楚了其架构和思路之后,愣是到头来愣是发现,其实这个小东西还是有很多不为人知却又是研究代码不得不了解的知识,偶然发现如此强悍的介绍, 利索当然地笑纳一下. 一)客户端与服务端的通讯认证流程: 第一阶段: 双方协商SSH版本号和协议,协

ssh远程登录讲解

ssh是什么东西? 在Linux系统中,OpenSSH是目前最流行的远程系统注册与文件传输应用,也是传统的Telnet,ftp的网络应用的换代产品,OpenSSH不仅适用于Linux系统,也可以适合多种Unix系统,而且起ssh与scp等客户端软件也适用于Windows操作系统.如有必要,Windows用户可以采用windows版的scp客户端软件,即winscp,在Windows系统与linux系统之间实现文件的复制. 如何安装ssh? 在Ubuntu Linux系统中,openssh的客户端

20170117老男孩linux实战运维培训-SSH KEY免密码验证分发、管理、备份实战讲解01

这一节说的SSH ssh制造私钥和公钥 私钥是钥匙 公钥是锁 把公钥分发到各个要登录的linux服务器上 #ssh-keygen -t dsa 使用这个命令后将会在本机生成一对密钥 私钥 id_dsa 公钥 id_dsa.pub 把公钥放到要登录的服务器上 用命令 #ssh-copy-id -i id_dsa.pub [email protected] 放到公钥放到服务器上后就要开始验证了 命令 #ssh [email protected] 其实也可以用其它命令登录如 #scp -P22 -r

SSH远程管理、参数讲解、xshell使用、scp,sftp,ssh命令(ssh两种方式的密钥验证方

1.SSH远程管理 SSH(Secure Sheel)是一种安全通道协议,主要用于实现字符界面的远程登录.远程复制等功能.SSH协议对通信双方的数据传输进行了加密处理,其中包括用户的口令.与早期的TELNET(远程登录,tcp23端口).RSH(Remote Sheel,远程执行命令).RCP(Remote File Copy,远程文件复制)等应用想必,SSH协议提供了更好的安全性. 配置OpenSSH服务端(由openssh.openssh-server软件包提供.主配置文件/etc/ssh/

【SSH进阶之路】Spring的IOC逐层深入——为什么要使用IOC[实例讲解](二)

上篇博客[SSH进阶之路]Spring简介,搭建Spring环境--轻量级容器框架(一),我们简单的介绍了Spring的基本概念,并且搭建了两个版本的Spring开发环境,但是我们剩下了Spring最核心的两大技术:IoC和AOP,没有深入介绍.从这篇博文开始,我们开始一一的深入学习Spring的两个核心.Spring目前最引人注目的地方,就是IOC=Inversion  Of Control(控制反转)或者DI=Dependence  Injection(依赖注入)的设计思想. 这篇博客我们使

SSH连接原理及ssh-key讲解

第1章 SSH服务介绍说明 1.1 SSH服务介绍 SSH(22端口)是Secure Shell Protocol的简写,由IETF网络工作小组(Network Working Group)制定:在进行数据传输之前,SSH先对联机数据包通过加密技术进行加密处理,加密后在进行数据传输.确保了传递的数据安全. SSH是专为远程登录会话和其他网络服务提供的安全性协议.利用SSH协议可以有效的防止远程管理过程中的信息泄露问题,在当前的生产环境运维工作中,绝大多数企业普通采用SSH协议服务来代替传统的不安

(精编版)SSH网上商城项目讲解+源码

SSH网上商城(  源  码 密码:fnox) 1.1 前台需求分析: 1.1.1 用户模块: 注册: 1.前台JS校验: 2.使用AJAX完成对用户名异步校验: 3.后台Struts2校验: 4.验证码: 5.发送激活邮件: 6.将用户信息存入到数据库: 激活: 1.点击链接完成激活: * 根据激活码,查询数据库中是否有该用户: * 如果有:激活.(将激活码字段清空.) * 修改用户的状态: 登录: 1.输入用户名和密码:(数据校验.) 2.用户名和密码都正确同时用户状态必须是激活状态: 退出

ssh密钥讲解

我们用ssh连接机器时候需要输用户名.密码,但是直接写账户文件的时候由于用的是明文,就存在安全的问题了.别人一旦截取了数据就获得了隐私了.这时候就用上ssh的密钥. ssh的密钥存是成对出现的,一个叫公钥,一个是私钥.公钥是给别人的,私钥存在自己手里.在连接的时候两把钥匙配对成功,就可以建立数据连接. [[email protected] ~]# ssh-keygen Generating public/private rsa key pair. Enter file in which to s