ssh-keygen 基本用法
生成ssh key的时候,可以通过 -f 选项指定生成文件的文件名,如下
[root@a]$ ssh-keygen -f test -C "test key"
~~文件名 ~~~~ 备注
如果没有指定文件名,会询问你输入文件名:
[ root@a]$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/evan/.ssh/id_rsa):
你可以输入你想要的文件名,这里我们输入test。
密码 私key 文件的密码
之后,会询问你是否需要输入密码。输入密码之后,以后每次都要输入密码。请根据你的安全需要决定是否需要密码,如果不需要,直接回车:
#这种办法更加方便
或者 -t type 指定要创建的密钥类型。可以使用:”rsa1″(SSH-1) “rsa”(SSH-2) “dsa”(SSH-2)
[root@a]$ ssh-keygen -t rsa -f test -C "test key"
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
结果
如果文件名是test,结果是:
[root@a]$ ll test*
-rw——- 1 huqiu huqiu 1675 Sep 15 13:24 test
-rw-r–r– 1 huqiu huqiu 390 Sep 15 13:24 test.pub
备注
上面生成的命令中,-C选项是公钥文件中的备注:
[root@a]$ cat test.pub
ssh-rsa
AAAAB3NzaC1yc2EAAAABIwAAAQEAlgjiMw7AskxbvpQY9rmZPQxQBzh9laxFvbaini2EgmQkNsXBA9WJOXn2YBJauoiVsdUKBWA97avjsobrTxsCYvFr1yQQvTfTlbqlqGNIhQc/3HjTl2pIkClpDWvBrRN+jpyESS4MNbfOL1qjT4c/QhGvj6U6HrN6kUyn58oyyJpTzOLG74AZELJ2Led57QvTw1yJXZuAMWioR0A3BGd25fdocLX3ebux6ya8AsloOVYfsAqGlggrARe6FXjLfMH4a/nxaAdiDYVXU/Vr1ybK9P7SfyEDGJi3JtgiPUlA6vPxUC
E+9IJPQaqqeqCGzrJ6G/XO7om1v9YLLG/H/ZN2tQ== test key
~~~~备注
文件的权限
为了让私钥文件和公钥文件能够在认证中起作用,请确保权限正确。
对于.ssh 以及父文件夹,当前用户用户一定要有执行权限,其他用户最多只能有执行权限。
对于公钥和私钥文件也是: 当前用户一定要有执行权限,其他用户最多只能有执行权限。
对于利用公钥登录,对其他用户配置执行权限是没有问题的。但是对于git,公钥和私钥, 以及config等相关文件的权限,其他用户不可有任何权限。
authorized_keys
ssh-keygen 基本用法
https://wiki.archlinux.org/index.php/SSH_keys_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
ssh-keygen 中文手册