SSH使用技巧

ssh服务器配置文件是/etc/ssh/sshd_conf
1 port 22     修改ssh监听端口
2 protocol 2  仅允许ssh协议版本2
3 permitrootlogin no   不允许root用户通过ssh登录同时创建一个没有实际权限的虚拟用户natasha并确保属于wheel组用作ssh登录
4 allowusers  natasha  仅允许用户natasha通过ssh登录
5 ssh-keygen -t dsa  创建dsa密钥对  私钥位置 ~/.ssh/id_dsa 公钥位置 ~/.ssh/id_dsa.pub 拷贝公钥中的内容到另一台机器的~/ssh/authorized_keys文件中
  chmod 600 ~/.ssh/authorized_keys   修改该文件的权限
  去掉下面3行的注释
  RSAAuthentition  yes
  PubkeyAuthentication no   只允许dsa认证登录
  AuthorizedKeysFile %h/.ssh/authorized_keys
6 tcp wrappers仅允许指定的主机连接
  在/etc/hosts.deny   添加sshd:all  所有主机拒绝ssh服务
  在/etc/hosts.allow  添加sshd:192.168.1 192.180.177.13 允许192.168.1.0网段和192.168.177.13使用ssh服务 

网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了绥芬河免费建站欢迎大家使用!

7 使用iptables允许特定的主机连接
  iptables -A INPUT -p tcp -m state --state NEW --source 193.180.177.13 --dport 22 -j ACCEPT  允许一个特定的主机连接到你的ssh服务
  iptables -A INPUT -p tcp --dport 22 -j DROP    确保没有其他的主机可以访问ssh服务
8 ssh时间锁定
  第一个例子,如果一个用户输入了错误的密码,锁定一分钟内不允许在访问SSH服务,这样每个用户在一分钟内只能尝试一次登陆:

~# iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -m limit --limit 1/minute --limit-burst 1 -j ACCEPT
~# iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -j DROP

第二个例子,设置iptables只允许主机193.180.177.13连接到SSH服务,在尝试三次失败登陆后,iptables允许该主机每分钟尝试一次登陆:
~# iptables -A INPUT -p tcp -s 193.180.177.13 -m state --syn --state NEW --dport 22 -m limit --limit 1/minute --limit-burst 1 -j ACCEPT
~# iptables -A INPUT -p tcp -s 193.180.177.13 -m state --syn --state NEW --dport 22 -j DROP

 


本文名称:SSH使用技巧
文章地址:http://pwwzsj.com/article/ghpgeh.html