打印本文 打印本文  关闭窗口 关闭窗口  
在Centos5下搭建安全的SSH服务器
作者:陈鹏  文章来源:eNet  点击数  更新时间:2009/9/11 23:22:18  文章录入:陈鹏  责任编辑:陈鹏

其实原始的SSH服务器设置有着很多的漏洞,但一般网络管理员都喜欢这样的默认设置,认为只要保存好root密码就万事OK了。

  以前给保险公司做集成的时候曾经看到他们内部的工程师给系统安装SSH服务器的时候总要在最后导出一个.ppk的文件,最后才知道那就是SSH服务器的密钥,在网上百度一下才知道如果没有这个密钥,就算你在网络环境中知道了root密码也无济于事。不信的话试试看就知道了。

  1、选择平台:公司的很多机器都是使用NT2003和BSD的,为了搞实验我装了一个Centos5.0的在我的测试机上。

  默认安装完以后用VI打开 /etc/ssh/sshd_config 修改几行内容就可以了

  #ServerKeyBits 768 注释取消,将768改为1024

  #PermitRootLogin yes 注释取消,将yes改为no 禁止root登录

  #PermitEmptyPasswords no 取消注释,禁止空密码登录

  #PasswordAuthentication no 取消注释,禁止使用密码方式登录,有密钥谁还用密码啊

  注意一下,在centos5.0之前SSH服务需要指明版本,#Protocol 2,1 把前面的注释取消,选择自己需要的版本就行了。

  保存退出。如果想做到最大化安全链接,可以考虑在配置有双网卡的服务器上设置只允许内网链接SSH,方法很简单,在/etc/hosts.deny文件最后一行添加一句sshd: ALL 然后在/etc/hosts.allow的最后一行加上一句sshd: 192.168.0. 然后保存退出。

  重启一下SSH服务 service sshd restart 就OK了

  2、制作密钥

  先切换进入一个wheel组的普通用户,输入 ssh-keygen -t rsa.

  第一步会让你先确认钥匙的文件名。保持默认就可以了。然后输入这个密钥的口令,再确认一次就可以了。

  然后cd ~/.ssh 查看一下钥匙是不是都已经建立了。将公钥更改名称后删除

  cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

  rm -rf ~/.ssh/id_rsa.pub 别把密钥误删就行了。

  将公钥文件属性更改为400禁止被篡改

  chmod 400 ~/.ssh/authorized_keys

  剩下的就没什么了,把密钥COPY到U盘还是FTP服务器再转移或者是复制到磁盘上就看你自己的需要了。

  测试一下看服务能不能正常连接

  打开puttygen-x86.exe 在程序下面选择SSH-2(RSA)密钥强度改为1024,然后点击"Load"

  选取服务器端生成的私钥(文件类型要选择“All Files”) 如果没有改名字的话我们选的应该是id_rsa这个文件,开始转换私钥,这里需要输入在服务器端建立此私钥时的口令。在文本框中输入口令开始转换,保存转换后的私钥匙到适当的位置(转换后的私钥将做为PuTTY登录到服务器时使用的私钥)。点击“Save private key”,并选择适当的位置保存私钥。

  PUTTY 估计做网管的朋友都很熟悉,下载地址就不废话了,没有可以下载我附件里提供的,我感觉这样的兵器绝对是每人必备一把的,双击启动 PuTTY ,在左侧找到Auth(认证方式)一项,点击Browse,选择刚刚用PuTTYGen转换后的私钥。然后点击左侧的Session,回到主机连接信息的设置。 剩下的我就不罗嗦了,自己试试就行了。

  

热门推荐 巧妙从进程中判断病毒和木马 交换机上配置虚拟局域网的技巧

  

【责任编辑 彭凡】

打印本文 打印本文  关闭窗口 关闭窗口