增强SSH安全性的7条技巧

  • 来源: 黑吧安全网 作者: 戴九军   2011-05-30/13:33
  • 在绝大部分的 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 的话表示永远不发送),否则就断线。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多