RHEL5.4学习总结——SSH服务器的搭建与应用
SSH简介:很多设备,如路由器、防火墙等等,都提供了一种远程访问与管理的接口.如Windows服务器可以利用Telnet协议进行远程管理等等.但是,Telnet不怎么安全.其在传输过程中,帐户与密码都是明文传输的.在网络传输过程中,这是非常危险的.
针对Telnet协议不安全这种情况,有人开发出了一个SSH协议.其原理跟Telnet类似,只是其具有更高的安全性.SSH是一个运行在传输控制层上的应用程序.他跟Telnet相比,提供了强大的认证与加密性能.他可以保证在我们连接到网络设备的过程中,其传输的数据是加密处理过的.这么做,就是为了保障帐户与口令的安全.
SSH原理:简单的说SSH是secure shell protocol的简写,它通过对联机数据包的加密技术进行数据的传输,加密技术是通过一对公钥和私钥(public key and private key)组合成的密钥进行加密与解密的操作,如下图所示:
当SSH服务激活之后,会产生一支公钥和私钥,当数据由Client端传送到 Server端时,这些数据会先经过公钥(,Public Key)来进行加密,那么等这些经过公钥加密的数据传送到 Client 端之后,就可以由私钥(Private Key)来进行解密.需要注意的是,这些公钥与私钥在每一部计算机上面都不一样,,你与 Server 的联机对其他人来说,都是很难去破解!
拥有帝国一切,皆有可能。欢迎访问phome.net
SSH服务器的启动及应用:
[root@redfeng1 ~]#server sshd start
[root@redfeng1 ~]netstat -ltp
直接登录到对方主机的方法:
[root@redfeng1 ~]ssh 192.168.1.240
The authenticity of host ''192.168.1.240 (192.168.1.240)'' can''t be established.
RSA key fingerprint is 5b:48:e7:c0:38:22:cd:cd:2c:85:c9:34:c1:c5:c9:72.
Are you sure you want to continue connecting (yes/no)? yes //输入yes
Warning: Permanently added ''192.168.1.240'' (RSA) to the list of known hosts.
root@192.168.1.240''s password: //这里输入对方主机的密码,屏幕不会显示信息
Last login: Sun Mar 7 21:00:29 2010 from 192.168.1.241
SSH服务器的配置(无密码记问):
Server部分为redhat1,IP为192.168.1.240的主机使用Root这个帐号
Client部分为redhat2,IP为192.168.1.241的主机使用Root 这个帐号
注:这里主要是为了学习,用Root进行试验,实际需禁用Root的远程登录
SSH所有的设置都在/etc/ssh/sshd_config里,有关它的详细解释可以谷歌一下,以下主要是对不用密码进行远程登录的配置,即然SSH可以使用KEY来比对数据进行数据的加密,因此我们可以将client端产生的密钥复制到server中,以后从client端登录server时,两者在SSH要联机的信号传递中已经比对过KEY了,不需要输入密码就可登录远程主机,具体步骤如下:
拥有帝国一切,皆有可能。欢迎访问phome.net
1. 先在client端建立public key and private key两个密钥,利用的命令是:ssh-keygen.
[root@redfeng1 ~]# ssh-keygen -t rsa//这个步骤会产生一个Key pair使用RSA加密
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa)://这里回车
/root/.ssh/id_rsa already exists.//我以前做过试验已经存在那个文件,覆盖即可
Overwrite (y/n)? y //输入y
Enter passphrase (empty for no passphrase): //这里回车
Enter same passphrase again: //再回车
Your identification has been saved in /root/.ssh/id_rsa. //这是私钥
Your public key has been saved in /root/.ssh/id_rsa.pub. //这是公钥
The key fingerprint is:
07:67:b2:10:38:7f:2f:23:b4:8a:07:7e:38:fe:0e:7c root@redfeng1
2. 以上建立的public key and private key都存放在默认目录中即:$home/.ssh/并修改权限为仅该用户可读的状态.
[root@redfeng1 ~]# ll ~/.ssh/
|