一、什么是SSH?
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基本用法
ssh命令用于远程登录上Linux主机。
常用格式:ssh [-l login_name][-p port] [user@]hostname
更详细参数配置的可以用ssh -h查看
不指定用户,默认使用root账户登录
1 | ssh 192.168.29.129 |
指定用户:
1 | ssh root@192.168.29.129 |
生成 SSH 公钥
如前所述,许多 Git 服务器都使用 SSH 公钥进行认证。 为了向 Git 服务器提供 SSH 公钥,如果某系统用户尚未拥有密钥,必须事先为其生成一份。 这个过程在所有操作系统上都是相似的。 首先,你需要确认自己是否已经拥有密钥。 默认情况下,用户的 SSH 密钥存储在其 ~/.ssh
目录下。 进入该目录并列出其中内容,你便可以快速确认自己是否已拥有密钥:
1 | $ cd ~/.ssh |
如有以下文件说明你已经有了ssh公私钥
1 | id_dsa id_dsa.pub |
生成公钥
首先你得安装git!!!
在本机Git Bash Here中
1 | ssh-keygen # 生成公私钥的命令 |
1 | Generating public/private rsa key pair. |
使用邮箱生成生成公私钥
1 | $ ssh-keygen -t rsa -C "邮件地址@youremail.com" |
ssh-keygen是SSH服务下的一个生成、管理和转换认证密钥的命令工具。包括两种密钥类型DSA和RSA
通过公私钥的验证可以使服务器与服务器之间实现无密码通讯。
ssh-keygen常用参数
1 | -t:指定生成密钥的类型,默认使用SSH2d的rsa |
ssh-keygen详情 <——