点击关注上方“知了小巷”,
设为“置顶或星标”,第一时间送达干货。

Linux中的SSH协议
内容提纲:
1. SSH协议介绍
2. SSH协议具体配置
3. 一张图来看SSH协议原理
SSH协议介绍
SSH为Secure Shell(安全外壳协议)的缩写,简单说,SSH只是一种网络协议,用于计算机之间的加密登录,很多ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而SSH就是专为远程登录会话和其他网络服务提供安全性的协议。ftp,有安全的sftp协议。
SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。
SSH是由客户端和服务端的软件组成的;服务端是一个守护进程(sshd),他在后台运行并响应来自客户端的连接请求。客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。
首先确保服务器是否安装了ssh服务:[root@mycentos7 ~]# yum list installed | grep openssh-server 正常情况下,CentOS7是安装了的。或者只要能使用SecureCRT、Xshell等工具连接,那都是正常的。
$ yum list installed | grep openssh-server
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
openssh-server.x86_64 6.6.1p1-25.el7_2 @updates
SSH协议具体配置
准备两台虚拟机:A和B,假如A要安全地登录或访问B。
首先各自生成密钥对,生成过程中,直接三次回车即可。会在当前用户的home目录中生成一个.ssh隐藏文件夹。公钥是id_rsa.pub,私钥是id_rsa。
# ssh-keygen 或者 ssh-keygen -t rsa
# ls ~/.ssh/ 能够看到相应的文件
将A自己的公钥放置到授权列表文件authorized_keys中。
# cat id_rsa.pub > authorized_keys
将得到的authorized_keys发送给B机器对应的文件夹下,就相当于把自己的公钥发给对方,这里要使用具体的密码
# scp -r authorized_keys root@192.168.188.188:$PWD
这样,A就能访问机器B了;首次登录会被问一下,然后选择yes即可。 如果是自己访问自己的时候,也是需要把自己的公钥放在authorized_keys文件中。
一张图来看SSH协议原理






