1 在客户端生成公钥和密钥
ssh-keygen
一直回车,在~/.ssh目录下会生成公钥和私钥文件
2 对公钥进行转换
使用命令
ssh-keygen -f .ssh/id_rsa.pub -e -m pem | grep -v '\-\-\-\-' | base64 -d | xxd -p
这个是为了将原本的openssh的公钥转为ssh2.0的公钥,因为貌似现在的Linux发行版默认都是openssh的,但是华为只认识ssh2.0的,所以...
保存生成的公钥(会在终端上直接显示)
交换机上配置如下:
rsa peer-public-key 1
public-key-code begin
30820109
02820100
E58B4DF3 8B1DCFBC 6F376C9C 5F73F18C 44AF4BC7 631CE37C 2288C9F8 38D03C55
796974E8 52934544 42212A72 42E843DB 00BAE582 AF18F671 3906D6A0 F0F5AD37
33228E2E 177606A6 36D48565 35F54D7B E9111FAC 502EDA4F 68E6EABF 4D0404DD
5E0ECDE5 079F0745 0A9B53FF 35C90848 8942124C CA27D83E 8231535C C3D7D154
504D93F4 526B0574 3B4B73DF 842FF1D5 0CBACD96 2A7BE17A 9C4B7555 0CA5192E
B7FC7F69 650F9DC3 17A01B0C 20528AB8 3BCF1738 6FC74FE6 2ABEBB63 63258034
7DB8D1CB 1CE61117 FA9D6F8C 6B738D54 AC939196 E1520FCF C8A3684C 03640057
D4B54BB4 D747335B 747451A4 E86751AB CD31ABF8 C28F2183 FDD7FEEC 69EE1D2B
0203
010001
public-key-code end
peer-public-key end
#
aaa
authentication-scheme default
authorization-scheme default
accounting-scheme default
domain default
domain default_admin
local-user user1 password cipher %@%@_%485)=.31D,kbRl)MaUTF03%@%@
local-user user1 service-type ssh
local-user user2 password cipher %@%@D2x;9a}=y~b1S)J-S8wMTJ!;%@%@
local-user user2 privilege level 15
local-user user2 service-type ssh
undo local-user admin
#
stelnet server enable
ssh user user1
ssh user user1 authentication-type rsa
ssh user user1 assign rsa-key 1
ssh user user1 service-type stelnet
ssh user user2
ssh user user2 authentication-type password
ssh user user2 service-type stelnet
ssh client first-time enable
#
user-interface vty 0 4
authentication-mode aaa
user privilege level 1
protocol inbound ssh
user-interface vty 16 20
#
这样配置完成后,user1拥有查看权限,密钥验证登陆(不用输入密码),user2拥有管理员权限,密码验证。这个是华为5700的交换机,sshkey的权限设置在user-interface vty 里面,而且不能针对某个用户做设置(操作系统没有这个功能),所以目前最好的办法大概就是这个了。