使用以下命令,将会以你的邮箱作为标签创建一个新的SSH密钥。
$ ssh-keygen -t rsa -b 4096 -C "注册邮箱,比如:zhansan@xx.com"
>Generating public/private rsa key pair.
当系统提示您“输入要保存密钥的文件”时,按Enter键。将接受默认文件位置。如下:
>Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]
在提示符下,输入安全密码,即可生成一个新的ssh密钥。
>Enter passphrase (empty for no passphrase): [Type a passphrase]
>Enter same passphrase again: [Type passphrase again]
1 。首先用密码登陆centos ,编辑 etc/ssh/sshd_config去掉以下几行的注释
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
AuthorizedKeysCommand none
AuthorizedKeysCommandRunAs nobody
这个意思是开启公钥认证登陆 。
然后service sshd restart ,重启ssh 。
然后添加个用户git ,设置密码 ,我们用用户git测试共钥登陆 。不建议用root测试,以防万一 。
2.生成公钥和私钥
在git bash 里面运行以下命令
ssh-keygen -t rsa -f ~/.ssh/admin
win7会在C:\Users\Administrator\.ssh生成两个文件 admin.pub 和admin两个文件 。admin是私钥文件 ,admin.pub是公钥文件 。
然后建立一个config文件 ,指明登陆某台服务器用哪个私钥文件 。
比如我写入了以下内容:
host 192.168.1.101
user git
hostname 192.168.1.101
port 22
identityfile C:/Users/Administrator/.ssh/admin
指定连接192.168.1.101的服务器时使用admin私钥进行验证 。
3.上传公钥到服务器,我这里的的服务器是局域网内的192.168.1 .101 。
在git bash里面执行以下命令 :
scp ~/.ssh/admin.pubgit@192.168.1.101 : ~/
4.将公钥写入服务器验证文件
以root登陆服务器 ,再切换到git用户 。
在git用户的家目录下面建立 .ssh/authorized_keys文件 。目录和文件都要新建 。
然后执行cat
admin.pub >> ~/.ssh/authorized_keys
写入公钥验证文件 。
这个文件就是服务器和客户端验证公钥是否相同的文件 。
git是分布式的代码管理工具,远程的代码管理是基于ssh的,所以要使用远程的git则需要ssh的配置。github的ssh配置如下:
1
、设置git的user
name和email:
$
git
config
--global
user.name
"xuhaiyan"
$
git
config
--global
user.email
"haiyan.xu.vip@gmail.com"
2、生成ssh密钥过程:
1)查看是否已经有了ssh密钥:cd
~/.ssh
如果没有密钥则不会有此文件夹,有则备份删除
2)生存密钥:
$
ssh-keygen
-t
rsa
-c
“haiyan.xu.vip@gmail.com”
按3个回车,密码为空。
your
identification
has
been
saved
in
/home/tekkub/.ssh/id_rsa.
your
public
key
has
been
saved
in
/home/tekkub/.ssh/id_rsa.pub.
the
key
fingerprint
is:
最后得到了两个文件:id_rsa和id_rsa.pub
3)添加密钥到ssh:ssh-add
文件名
需要之前输入密码。
4)在github上添加ssh密钥,这要添加的是“id_rsa.pub”里面的公钥。
打开https://github.com/
,登陆xuhaiyan825,然后添加ssh。
5)测试:ssh
git@github.com
the
authenticity
of
host
‘github.com
(207.97.227.239)’
can’t
be
established.
rsa
key
fingerprint
is
16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
are
you
sure
you
want
to
continue
connecting
(yes/no)?
yes
warning:
permanently
added
‘github.com,207.97.227.239′
(rsa)
to
the
list
of
known
hosts.
error:
hi
tekkub!
you’ve
successfully
authenticated,
but
github
does
not
provide
shell
access
connection
to
github.com
closed.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)