[转帖]中小企业服务器ssh管理_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3515 | 回复: 0   主题: [转帖]中小企业服务器ssh管理        下一篇 
Leon
注册用户
等级:少校
经验:1436
发帖:116
精华:7
注册:2013-1-4
状态:离线
发送短消息息给Leon 加好友    发送短消息息给Leon 发消息
发表于: IP:您无权察看 2013-1-6 9:42:16 | [全部帖] [楼主帖] 楼主

原创作品,允许转载,转载时请务必以超链接形式标明文章
原始出处 、作者信息和本声明。否则将追究法律责任。

 http://laoguang.blog.51cto.com/6013350/1109021


    今天经理让规划一下公司的ssh管理,已前都是用密码,现在想用密钥,并且要易于管理,安全性高,于是有了以下规划:

1.将一台服务器Pb1的ssh服务暴露到公网作为跳板机,更改ssh的端口为28888

2.Pb1认证方式改为密钥方式,关闭密码认证

3.对于其它服务器如server1来说,除了Pb1服务器ip可以ssh外,其它一律禁止,关闭密码认证,端口用默认22即可

4.Pb1上生成ssh密钥对,将用户公钥传到其它服务器,以后连接其它服务器须先连接到Pb1,然后再跳转过去,见下图

北京联动北方科技有限公司

操作步骤:以用户root为例,假设Pb1: 192.168.12.83  server1:192.168.11.78 ,其它用户操作相同

1.在xshell中生成密钥对

在tools中生成,步骤不再详述,将公钥复制到Pb1 root家目录的.ssh下的authorized_keys中

  1. mkdir ~/.ssh 
  2. vi ~/.ssh/authorized_keys 
  3. ssh-dss AAAAB3NzaC1kc3MAAACBAJzgf3UtrQo8mrP7okdbuOUAojVhD8KAYnzvDkl7b4HcMXmdFnnAjD3J92gBrvh
  4. mZgsz7YeVlL8/SafTyWZgH41gP9U/sFqNSG0n4XrdOHnDa0cGzO/0y0OLP+BoG/g3XfaeBYUrhcoInhJFomIla2bvDP
  5. E+9c8Q0AbuwPmQ04kXAAAAFQDjtjgZn6Lmjh3/IHKjNLSXh9WPtQAAAIAfAAkGfGNJbVXwp/h4lzV4q9pqN3FkyS/
  6. QEWonMlVBfWo0p6q72Z0UwScZ4PPpwVjDjTnGjGyhV/dxU7USUqPLqTwMbFHZvWpnVYwkqopijFjYaC1I4ofsGH9aO5
  7. hOrcbb4qAKCXTf2ljD+iEfw5qawYDG8H1XD2/mEWsDp8SuQAAAIBIUMwx7mkMNSBy+DlQHEv2K2CB51Ziqelrswhx13
  8. NeMcn17xwW5z6So4o2m01omAUcYrqodq+xR9H6WfauqqHbKDJGaZ1JzYWEl9au4an8F04zMKnGhQoXM7NARo82YROwR
  9. fnax8gRkG8Y+3r7+IU3Yvvya0P24TZPNhuiwIlU/w== ##这是xshell生成的,复制过来的

2.编辑Pb1中的/etc/ssh/sshd_config 更改端口为 28888 关闭密在码认证

  1. vi /etc/ssh/sshd_config
  2. Port 28888 
  3. PasswordAuthentication no 
  4. Service sshd restart 

3.连接Pb1测试能否正常连接

  1. ssh 192.168.12.83 

4.Pb1上成生密钥对,并复制到server1中

  1. ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa 
  2. ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.11.78  
  3. ssh-copy-id -i ~/.ssh/id_rsa.pub 其它server IP  

5.在Pb1上连接server1测试能否连接成功

  1. ssh 192.168.11.78 

6.关闭server1 .. serverN中的密码认证,添加iptables,再次测试

  1. vi /etc/ssh/sshd_config 
  2. PasswordAuthentication no 
  3. service sshd restart 
  1. iptables -A INPUT -p tcp -s ! 192.168.12.83 --dport 22 –j DROP 

    或

  1. vi /etc/hosts.allow  
  2. sshd:192.168.1.83  
  3. vi /etc/hosts.deny   
  4. sshd:ALL 

为了防止pb1出现故障后不能正常连接其它服务器,应设置另外一台最好不在同一网络或地区中的服务器做备用。

Pb1脚本:

  1. #!/bin/bash 
  2. # Author: LaoGuang 
  3. # Script Name: Pb.sh 
  4. # 2013/01/05    ibuler@qq.com    
  5. # Description: 
  6. # Set ssh Middle Server 
  7. serverip="192.168.11.78"  ## one or some ip 
  8. port=28888 
  9. #Modify port and Authentication
  10. sed -i 's/#\?Port .*/Port 28888/' /etc/ssh/sshd_config 
  11. sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config 
  12. service sshd restart &>/dev/null 
  13. #Transfer key
  14. if ! [ -e ~/.ssh/id_rsa.pub ] && [ -e ~/.ssh/id_rsa ];then 
  15.         ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa &>/dev/null 
  16. fi 
  17. for i in $serverip 
  18. do 
  19.         ssh-copy-id -i ~/.ssh/id_rsa.pub $i &>/dev/null  ##这里其实写的不好,还有与用户互动
  20.         ssh $i "echo : $i success " 
  21. done 

Server端脚本:

  1. #!/bin/bash 
  2. # Author: LaoGuang 
  3. # Script Name: server.sh 
  4. # 2013/01/05    ibuler@qq.com    
  5. # Description: 
  6. # Set ssh Servers 
  7. sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config 
  8. service sshd restart &>/dev/null 
  9. iptables -A INPUT -p tcp -s ! 192.168.12.83 --dport 22 -j DROP 

你有更好的管理方法吗?欢迎交流!

本文出自 “Free Linux,Share Linux” 博客,请务必保留此出处http://laoguang.blog.51cto.com/6013350/1109021




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论