SSH服务器端:
1.查看系统是否安装了openssh软件包:
#rpm -qa | grep openssh
openssh-公共软件包
openssh-server-SSH服务器软件包
openssh-client-SSH客户端软件包
openssh-askpass 和 openssh-askpass-gnome linux图形界面下使用时用到的组件
2.启动openssh服务,并设置开机自启动:
#/etc/init.d/sshd restart
#chkconfig --level 35 sshd on
注:(openssh服务器 和 客户端的配置文件都被保存在同一目录中--/etc/ssh/
服务器的配置文件名:/etc/ssh/sshd_config.
客户端的配置文件名:/etc/ssh/ssh_config.)
3.在客户端 生成公钥 和 私钥对文件:
#ssh-keygen -t rsa (加密算法有2种:rsa dsa 用-t选项,可以指定)
注:(ssh-keygen -t rsa将在"当前用户"的/.ssh目录下,生成钥匙对,id_rsa为私钥文件(默认权限600),
id_rsa.pub为公钥对文件(任何人可读,公开的).
在ssh-keygen -t rsa生成密钥的过程中,需要用户回答设置信息,一路回车即可。在第2个冒号处,可以给私钥设置
密码,即在登录SSH服务器时,需要输入此密码)
4.把公钥文件id_rsa.pub,发布到SSH服务器root/.ssh目录中,并命名为authorized_keys:
这里可以通过各种网络服务,也可以通过U盘拷;
注:(如果SSH服务器的/root/下,没有.ssh目录,可以手动创建。
这里需要注意的是,用SSH服务器的哪个用户登录时,想用密钥对进行验证,就必须把公钥复制到登录用户的家
目录下的.ssh目录下——授权密钥库,并把id_rsa.pub另存为authorized_keys即可。)
测试SSH客户端是否不用输入密码,即可登录SSH服务器:
不需要再输入用户名 和 密码,即可登录SSH服务器;
密钥认证过程:
使用SSH命令登录SSH服务器时,将使用客户机中的私钥与服务器中的公钥进行认证,认证成功后,将允许用户登录。而不需
要再输入 用户名 和密码。