在Centos5环境下搭建安全的SSH服务
其实原始的SSH服务器设置有着很多的漏洞,但一般网络管理员都喜欢这样的默认设置,认为只要保存好root密码就万事OK了,非也非也。以前给保险公司做集成的时候曾经看到他们内部的工程师给系统安装SSH服务器的时候总要在最后导出一个.ppk的文件,最后才知道那就是SSH服务器的密钥,在网上百度一下才知道如果没有这个密钥,就算你在网络环境中知道了root密码也无济于事。不信的话试试看就知道了。1、选择平台:公司的很多机器都是使用NT2003和BSD的,为了搞实验我装了一个Centos5.0的在我的测试机上。默认安装完以后用VI打开/etc/ssh/sshd_config修改几行内容就可以了#ServerKeyBits768注释取消,将768改为1024#PermitRootLoginyes注释取消,将yes改为no禁止root登录#PermitEmptyPasswordsno取消注释,禁止空密码登录#PasswordAuthenticationno取消注释,禁止使用密码方式登录,有密钥谁还用密码啊注意一下,在centos5.0之前SSH服务需要指明版本,#Protocol2,1把前面的注释取消,选择自己需要的版本就行了。保存退出。如果想做到最大化安全链接,可以考虑在配置有双网卡的服务器上设置只允许内网链接SSH,方法很简单,在/etc/hosts.deny文件最后一行添加一句sshd:ALL然后在/etc/hosts.allow的最后一行加上一句sshd:192.168.0.然后保存退出。重启一下SSH服务servicesshdrestart就OK了。2、制作密钥先切换进入一个wheel组的普通用户,输入ssh-keygen-trsa第一步会让你先确认钥匙的文件名。保持默认就可以了。然后输入这个密钥的口令,再确认一次就可以了。然后cd~/.ssh查看一下钥匙是不是都已经建立了。将公钥更改名称后删除cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keysrm-rf~/.ssh/id_rsa.pub别把密钥误删就行了。将公钥文件属性更改为400禁止被篡改chmod400~/.ssh/authorized_keys剩下的就没什么了,把密钥COPY到U盘还是FTP服务器再转移或者是复制到磁盘上就看你自己的需要了。测试一下看服务能不能正常连接打开puttygen-x86.exe在程序下面选择SSH-2(RSA)密钥强度改为1024,然后点击"Load"选取服务器端生成的私钥(文件类型要选择“AllFiles”)如果没有改名字的话我们选的应该是id_rsa这个文件,开始转换私钥,这里需要输入在服务器端建立此私钥时的口令。在文本框中输入口令开始转换,保存转换后的私钥匙到适当的位置(转换后的私钥将做为PuTTY登录到服务器时使用的私钥)。点击“Saveprivatekey”,并选择适当的位置保存私钥。PUTTY估计做网管的朋友都很熟悉,下载地址就不废话了,没有可以下载我附件里提供的,我感觉这样的兵器绝对是每人必备一把的,双击启动PuTTY,在左侧找到Auth(认证方式)一项,点击Browse,选择刚刚用PuTTYGen转换后的私钥。然后点击左侧的Session,回到主机连接信息的设置。剩下的我就不罗嗦了,自己试试就行了。