通过 ssh-keygen命令创建认证文件

http://blog.chinaunix.net/uid-20548989-id-1667463.html

一、通过 ssh-keygen命令创建认证文件


# ssh-keygen -b 1024 -t dsa



Generating public/private dsa key pair.

Enter file in which to save the key (/root/.ssh/id_dsa): 

Enter passphrase (empty for no passphrase): 

Enter same passphrase again: 

Your identification has been saved in /root/.ssh/id_dsa.

Your public key has been saved in /root/.ssh/id_dsa.pub.

The key fingerprint is:

...............................

The key's randomart image is:

.............................

如果没有更改路径的话,会在/.ssh/目录下产生:id_dsa和id_dsa.pub两个文件。其中id_dsa是要加载到ssh客户端的,id_dsa.pub是服务器端的匹配文件。

二、使用ssh-copy-id命令将生成服务器端认证文件加载到对应服务器

# ssh-copy-id -i <认证文件保存的目录>/id_dsa.pub @


The authenticity of host '192.168.1.202 (192.168.1.202)' can't be established.
RSA key fingerprint is 46:8f:d3:43:db:52:b1:c2:16:99:cd:03:9b:3f:0c:e8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '
192.168.1.202' (RSA) to the list of known hosts.
@'
s password:  <服务器口令>
Now try logging into the machine, with "ssh '@'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.


三、修改服务器的ssh配置文件

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys


四、将id_dsa加载到客户端
ssh客户端很多,这里只介绍Xshell(免费的为啥不用啊,\(^o^)/~)
properties -> Authentication -> method改成“Public key”,在Userkey中载入对应的认证文件

ok啦~不必再用用户名、口令登录了,方便了不少,安全了不少~
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用:ssh-keygen 用于为 ssh(1)生成、管理和转换认证密钥,包括 RSA 和 DSA 两种密钥。 密钥类型可以用 -t 选项指定。如果没有指定则默认生成用于SSH-2的RSA密钥。 ssh-keygen 还可以用来产生 Diffie-Hellman group exchange (DH-GEX) 中使用的素数模数。 通常,这个程序产生一个密钥对,并要求指定一个文件存放私钥,同时将公钥存放在附加了".pub"后缀的同名文件中。 程序同时要求输入一个密语字符串(passphrase),空表示没有密语(主机密钥的密语必须为空)。 密语和口令(password)非常相似,但是密语可以是一句话,里面有单词、标点符号、数字、空格或任何你想要的字符。 好的密语要30个以上的字符,难以猜出,由大小写字母、数字、非字母混合组成。密语可以用 -p 选项修改。 丢失的密语不可恢复。如果丢失或忘记了密语,用户必须产生新的密钥,然后把相应的公钥分发到其他机器上去。RSA1的密钥文件中有一个"注释"字段,可以方便用户标识这个密钥,指出密钥的用途或其他有用的信息。创建密钥的时候,注释域初始化为"user@host",以后可以用 -c 选项修改。密钥产生后,下面的命令描述了怎样处置和激活密钥。 根据引用的内容,ssh-keygen -z命令ssh-keygen中不存在。请注意,ssh-keygen命令用于生成、管理和转换认证密钥,包括RSA和DSA两种密钥。你可以使用-t选项来指定密钥类型,默认为生成SSH-2的RSA密钥。该命令还可以用于生成用于Diffie-Hellman group exchange(DH-GEX)的素数模数。在生成密钥对时,你需要指定一个文件来存储私钥,并将公钥存储在同名文件的末尾添加了".pub"后缀的位置。你还可以输入一个密语字符串作为密钥的保护密码。密语应该是由大小写字母、数字和非字母字符组成的30个以上的字符。请注意,如果你丢失或忘记了密语,你将需要生成新的密钥并将相应的公钥分发到其他机器上。此外,RSA1密钥文件中有一个"注释"字段,可以用来标识密钥的用途或其他有用的信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值