zoukankan      html  css  js  c++  java
  • Linux ssh安全设置

    本文摘要

    SSH服务器配置文件是/etc/ssh/sshd_conf。在你对它进行每一次改动后都需要重新启动SSH服务,以便让改动生效。

          SSH服务器配置文件是/etc/ssh/sshd_conf。在你对它进行每一次改动后都需要重新启动SSH服务,以便让改动生效。

      1、修改SSH监听端口

      默认情况下,SSH监听连接端口22,攻击者使用端口扫描软件就可以看到主机是否运行有SSH服务,将SSH端口修改为大于1024的端口是一个明智的选择,因为大多数端口扫描软件(包括nmap)默认情况都不扫描高位端口。

      打开/etc/ssh/sshd_config文件并查找下面这样的行:

      Port 22

      修改端口号并重新启动SSH服务:

    以下是代码片段:
    /etc/init.d/ssh restart

      2、仅允许SSH协议版本2

      有两个SSH协议版本,仅使用SSH协议版本2会更安全,SSH协议版本1有安全问题,包括中间人攻击(man-in-the-middle)和注入(insertion)攻击。编辑/etc/ssh/sshd_config文件并查找下面这样的行:

      Protocol 2,1

      修改为

      Protocol 2

      3、仅允许特定的用户通过SSH登陆

      你不一个允许root用户通过SSH登陆,因为这是一个巨大的不必要的安全风险,如果一个攻击者获得root权限登陆到你的系统,相对他获得一个普通用户权限能造成更大的破坏,配置SSH服务器不允许root用户通过SSH登陆,查找下面这样的行:

      PermitRootLogin yes

      将yes修改为no,然后重新启动服务。现在,如果你想使用特权用户,你可以先以其他用户登陆,然后再转换到root

      创建一个没有实际权限的虚拟用户是一个明智的选择,用这个用户登陆SSH,即使这个用户遭到破解也不会引起什么破坏,当创建这个用户时,确保它属于wheel组,并修改/etc/sudoers,添加wheel组的权限。因为那样你才能切换到特权用户。

      如果你想让一列用户都能通过SSH登陆,你可以在sshd_config文件中指定它们,例如:我想让用户anzedasakimy能通过SSH登陆,在sshd_config文件的末尾我添加下面这样一行:

      AllowUsers anze dasa kimy

      4、创建一个自定义SSH banner

      如果你想让任何连接到你SSH服务的用户看到一条特殊的消息,你可以创建一个自定义SSH banner,只需要创建一个文本文件(我的是/etc/ssh-banner.txt),然后输入你想的任何文本消息,如:

    以下是代码片段:
        *This is a private SSH service. You are not supposed to be here.*
      *Please leave immediately. *

      编辑好后,保存这个文件,在sshd_config中查找下面这样一行:

    以下是代码片段:
    #Banner /etc/issue.net

      取消掉注释【将#去掉】,然后将路径修改为你自定义的SSH banner文本文件。

    转自: http://security.zdnet.com.cn/security_zone/2010/0929/1901964.shtml

  • 相关阅读:
    14. D3D光照
    17. 增加对硬件光照的支持
    ECommerce Starter Kit 数据库表和存储过程一览
    使用 DataAdapter 执行批量更新
    学习Professional ASP.NET 2.0(四)
    c#泛型学习(二)
    学习Professional ASP.NET 2.0(一)
    学习Professional ASP.NET 2.0(二)
    下载:微软网页设计工具CTP测试版(支持asp.net2.0)
    学习ECommerce Starter Kit (1)
  • 原文地址:https://www.cnblogs.com/rusking/p/5261747.html
Copyright © 2011-2022 走看看