ssh远程管理

2009-05-13 10:44:35来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

我们使用*nix系统,为了方便管理,大部分情况下会使用到ssh这种方式进行远程管理.那么什么是ssh呢 下面是在维基百科中对ssh的一部份解释
SSH是指Secure Shell,SSH协议族由IETF(Internet Engineering Task Force)的Network Working Group制定,SSH协议的内容SSH协议是建立在应用层和传输层基础上的安全协议.
传统的网络服务程序,如FTP,Pop和Telnet其本质上都是不安全的;因为它们在网络上用明文传送数据,用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击.就是存在另一个人或者一台机器冒充真正的服务器接收用户传给服务器的数据,然后再冒充用户把数据传给真正的服务器.
SSH(Secure Shell)是目前比较可靠的为远程登录会话和其他网络服务提供安全性的协议.利用SSH协议可以有效防止远程管理过程中的信息泄露问题.通过SSH,可以把所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗.
SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度.SSH有很多功能,它既可以代替Telnet,又可以为FTP,Pop,甚至为PPP提供一个安全的"通道".
Ssh的安全验证方法:
在客户端来看,SSH提供两种级别的安全验证.
第一种级别(基于口令的安全验证),知道帐号和口令,就可以登录到远程主机,并且所有传输的数据都会被加密.但是,可能会有别的服务器在冒充真正的服务器,无法避免被'中间人'攻击.
第二种级别(基于密匙的安全验证),需要依靠密匙,也就是你必须为自己创建一对密匙,并把公有密匙放在需要访问的服务器上.客户端软件会向服务器发出请 求,请求用你的密匙进行安全验证.服务器收到请求之后,先在你在该服务器的用户根目录下寻找你的公有密匙,然后把它和你发送过来的公有密匙进行比较.如果 两个密匙一致,服务器就用公有密匙加密"质询"(challenge)并把它发送给客户端软件.从而避免被'中间人'攻击.
在服务器端,SSH也提供安全验证.
在第一种方案中,主机将自己的公用密钥分发给相关的客户机,客户机在访问主机时则使用该主机的公开密钥来加密数据,主机则使用自己的私有密钥来解密数据,从而实现主机密钥认证,确定客户机的可靠身份.
在第二种方案中,存在一个密钥认证中心,所有提供服务的主机都将自己的公开密钥提交给认证中心,而任何作为客户机的主机则只要保存一份认证中心的公开密钥就可以了.在这种模式下,客户机必须访问认证中心然后才能访问服务器主机
了解了这么多,我们接下来讲一下,如何在FreeBSD下实现ssh的密匙安全验证.
首先安装ssh
#cd /usr/port/security/ssh2-nox11
#make install clean
安装完成后,启动sshd服务
#/usr/local/etc/rc.d/sshd2.sh start
编辑/etc/rc.conf,使系统启动时自动启动sshd.
sshd2_enable="YES"
接下来我们用F-Secure SSH Client先登陆至服务器.
选中F-Secure SSH Client中的Edit(编辑)—setting(设置);在出现的界面中选中User Keys(用户密钥)—点击Generate New Keypair(生成新的密钥对)
在进入的画面直接点击下一步,进入key properties界面.
在上图2048的那个位置是为了设置一个证书的密钥的长度,下边那个DSA是密钥的算法.这个可以根据自己的需要进入设置.在我这里我按照默认的选项,点击下一步进入generation界面.这一步是为了生成一个证书的随机数.
随机数产生过程需要等等数秒中,生成完成后点击下一步,进入Enter Passphrase界面.
这一步是为了你生成的证书设置一个口令短语,即一个使用密码.设置好后,点击下一步.进入Finish界面.点击Upload Public key上传刚生成的证书
出现Upload Public Key的界面
Public Key即为你的公钥名称
Destination 你上传至服务器的路径

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:电信技术名词解释

下一篇:设定IPFW防火墙