背景:使用git,远程版本库用github,涉及到ssh方式连接github,对ssh怎么运行一直不明了,OK就它了
摘要:Linux环境,ssh-kengen命令参数,过程,详解
1. 要了解ssh协议是什么,有什么用?
从客户端来看,SSH提供两种级别的安全验证。
第一种级别(基于口令的安全验证)
第二种级别(基于密匙的安全验证)
有两个不兼容的版本分别是:1.x和2.x
OpenSSH 2.x同时支持SSH 1.x和2.x。
服务端是一个守护进程(daemon),他在后台运行并响应来自客户端的连接请求。服务端一般是sshd进程,提供了对远程连接的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接。
客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。
sshd运行起来并在默认的22端口进行监听
可以用 # ps -waux | grep sshd 来查看sshd是否已经被正确的运行了
SSH 为 Secure Shell 的缩写
2. 在Linux环境下,生成ssh协议要用的秘钥(简单)
ssh-keygen description:
ssh秘钥生成器,ssh-keygen可以产生RSA秘钥为SSH协议版本1,和DSA/ECDSA/RSA秘钥为ssh协议版本2,产生秘钥的类型通过指定-t参数来实现,如果没有任何参数,ssh-keygen将产生一个RSA秘钥用于SSH协议版本2的连接;
ssh-keygen 命令参数:
eg:
$ ssh-keygen -t rsa -C “yjicfdx@gmail.com”
-t type 指定产生key的类型,’rsa1’用于协议版本1,’dsa’/’ecdsa’/’rsa’用于版本2
-C comment 提供新的评论
命令行输入:
$ ssh-keygen -t rsa -C ‘mika@sina.cn’
然后一路回车就可以了,会在:
/home/pi/.ssh/
下面产生公钥和私钥文件