增强 SSH 安全性的 7 条技巧

2011年5月26日 | 分类: 乱七八糟 | 标签: ,

在绝大部分的 Linux 服务器上都使用 OpenSSH 作为 SSH server,所以这篇文章只针对 OpenSSH。其实这些技巧都是很基础的,但如果你能好好使用它们的话,一定程度上确实可以有效提升 SSH 的安全性.

#以下配置项都是在 /etc/ssh/sshd_config 文件中修改。

1. 禁止 root 登录
PermitRootLogin no

当你启用这一选项后,你只能用普通用户登录,然后再用 su 或 sudo 切换到 root 帐户。

2. 仅允许指定用户和组登录
指定用户

AllowUsers ramesh john jason

指定组

AllowGroups sysadmin dba

3. 禁止指定的用户或组登录
指定用户

DenyUsers cvs apache jane

指定组

DenyGroups developers qa

注:Allow 和 Deny 可以组合使用,它们的处理顺序是:DenyUsers, AllowUsers, DenyGroups, AllowGroups

4. 修改 SSH 监听端口
把 SSH 监听端口改为 222

Port 222

5. 修改默认登录时间
当你连接到 SSH 后,默认是提供 2 分钟的时间让你输入帐户和密码来进行登录,你可以修改这个时间为 1 分钟或 30 秒。

LoginGraceTime 1m

6. 限制监听 IP
如果你的服务器上有多个网卡及 IP ,那么你可以限制某些 IP 不监听 SSH,只允许通过某些 IP 来登录。

比如你有四个网卡

eth0 – 192.168.10.200
eth1 – 192.168.10.201
eth2 – 192.168.10.202
eth3 – 192.168.10.203

你只想让用户通过 202, 203 这两个 IP 来登录,那么做以下设定

ListenAddress 192.168.10.200
ListenAddress 192.168.10.202

7. 当用户处于非活动时断线
当用户在 10 分钟内处于非活动状态的话,就自动断线。

ClientAliveInterval 600
ClientAliveCountMax 0

ClientAliveCountMax:默认为 3 ,表示当 SSH 没有任何活动时, SSH Server 会发送三次检查是否在线(checkalive)的消息。
ClientAliveCountMax:默认为 0,表示当过了几秒后,SSH Server 会发送消息要求用户响应(0 的话表示永远不发送),否则就断线。

原文http://www.linuxidc.com/Linux/2011-05/36353.htm

  1. iGFW
    2011年5月27日16:45

    win7默认已经配置好了IPv6隧道,所以不用做任何设置就可以打开IPv6的IP。
    你可以在hosts里修改也可以直接在GAE翻墙的软件里修改(具体看官方说明)。
    ipv6一直以来都是可以被封锁IP的只是由于其默认加密所以可以过GFW的关键词过滤,对于GFW来说关键词检测非常重要,因为一些网站不可以完全封锁,GFW的一些技术也依赖关键词检测。

    • 匿名
      2011年5月27日23:07

      唉 ip原来是可以被xx掉的 还以为全面ipv6就可以高枕无忧了 这样的话以后youtube 的ipv6地址估计也要被啬 我不认为它会为了天朝用户常换ip (虽然数量多得一比) 现在用ipv6开youtube的视频速度嗖嗖的 爽到家了..

      • iGFW
        2011年5月27日23:09

        网线他都能拔,何况IP能,墙不能靠翻要去推。

  2. 匿名
    2011年5月26日18:55

    现在教程说的连ssh 好像都是基于plink的 这样的转发传输的数据真的完全加密不可控么? 怎么常常有的要连接的ip 会连不上呢? 感觉既然加密了连接的时候应该不会连接失败啊..

    • iGFW
      2011年5月26日20:44

      或者IP被墙了,无论你使用什么加密技术IP被墙了你就连接不上了,还有封端口你就连不上了。
      连ssh不是都是基于plink的Windows上还有Tunnelier使用的也比较广,Linux自带的用的也不少。
      plink是开源的安全性应该没问题,ssh的加密也比较安全即使数据被拦截也不至于被分析监控,就是使用用户名和密码登录存在被攻击的危险改由私钥认证登录就比较安全了。

      • 匿名
        2011年5月27日12:03

        大概可以理解了..门都关上了不论有没有包装, 什么东西都不能从门里走了
        那如果用gae 应用的话是什么原理? 是用appspot.com 还是appEngine.google.com中转?
        觉得如果是用这两个中转应该可以在host里怎么设置一下让线路走ipv6 这样不是当前还封不掉么

        • iGFW
          2011年5月27日12:26

          .appspot.com被墙了,现在GAE翻墙一般是把appspot.com解析到未受GFW干扰的国外Google的IP上然后使用https连接(http连接会被GFW干扰,不过https连接可能会降低速度),或者把appspot.com解析到谷歌北京的IP上使用http连接(国内IP不受GFW干扰,不过这样做可能不安全);也可以解析到Google的ipv6地址上(教育网可以用这种方法免费上外网),不过ipv6的ip地址也是会被GFW封锁的,只是目前不会受关键词检测的威胁。

          • 匿名
            2011年5月27日16:38

            如果想解析到谷歌的ipv6上有哪个工具可以容易点实现啊? 因为我发现我这的电信在host里修改youtube的ipv6绑定以后也可以打开 ,其他的设置我也没有作 win7
            原来ipv6地址现在可以封锁..还以为ipv6似乎复杂点可以大作为..万能的啬..只是在数据上啬无法监控了吧?