AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 42
Accepted

        Codebeef
Codebeef
Asked: 2009-05-01 00:10:42 +0800 CST2009-05-01 00:10:42 +0800 CST 2009-05-01 00:10:42 +0800 CST

保护新的 Ubuntu 服务器 [关闭]

  • 772
很难说出这里问的是什么。这个问题是模棱两可的、模糊的、不完整的、过于宽泛的或修辞的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它, 请访问帮助中心。
10年前关闭。

假设我全新安装了 Ubuntu,我应该采取哪些步骤来保护它以用作 Rails 应用程序服务器?

linux ubuntu security application-server
  • 10 10 个回答
  • 15122 Views

10 个回答

  • Voted
  1. Best Answer
    Can Berk Güder
    2009-05-01T00:30:43+08:002009-05-01T00:30:43+08:00

    我想不出任何特定于 Ubuntu 的调整,但这里有一些适用于所有发行版:

    1. 卸载所有不必要的软件包
    2. 在 SSH 中使用仅公钥身份验证
    3. 通过 SSH 禁用 root 登录(不适用于 Ubuntu)
    4. 使用 PHP 的生产设置 (php.ini-recommended)
    5. 将 MySQL 配置为仅使用套接字

    当然这个列表并不完整,你永远不会完全安全,但它涵盖了我在现实生活中看到的所有漏洞。

    此外,我看到的漏洞利用几乎总是与不安全的用户代码相关,而不是不安全的配置。最小的服务器发行版中的默认配置往往非常安全。

    • 25
  2. Alister Bulman
    2009-05-01T00:52:46+08:002009-05-01T00:52:46+08:00

    我早期做的一件快速的事情是安装DenyHosts。它会定期查看 /var/log/secure,寻找失败的登录,并在几次失败后阻止 IP。我将它设置为在第一个无此类用户之后、第二次尝试 root 时以及在为真实用户尝试几次之后(以防万一你搞砸了,但你应该使用 SSH 公钥登录)。

    • 18
  3. Mike McQuaid
    2009-05-01T05:01:57+08:002009-05-01T05:01:57+08:00

    Ubuntu 基于 Debian,我发现Debian 安全手册在基于 Debian 的发行版中非常有用,可以完全引导您完成系统并检查每个部分。它基本上是对您问题的非常非常全面的答案。

    • 10
  4. Tim Howland
    2009-05-01T04:35:54+08:002009-05-01T04:35:54+08:00

    我通常安装 RKHunter,它会扫描 rootkit 并对各种重要的系统二进制文件进行完整性检查。它在标准 repo 中,每天都会从 cron 运行。在安全方面,它并不完美,但添加起来并不费力,而且它提供了一定程度的保护。

    • 5
  5. Mikeage
    2009-05-01T03:21:20+08:002009-05-01T03:21:20+08:00

    安装 logcheck,但要进行调整,以便您永远不会收到来自常规事件的消息,否则您将养成忽略电子邮件的习惯。

    使用 netstat 检查哪些进程正在侦听,并确保没有运行不需要运行的程序。许多守护程序可以配置为仅侦听内部 IP(或 localhost)而不是所有接口。

    • 4
  6. Jauder Ho
    2009-05-01T00:33:48+08:002009-05-01T00:33:48+08:00

    按照 Can 的建议做...

    Nmap 主机并禁用所有非必要服务。必要时使用 iptables。

    • 3
  7. Timo Geusch
    2009-05-01T00:38:12+08:002009-05-01T00:38:12+08:00

    如果您要使用服务器访问 Internet 附近的任何地方,请安装入侵检测系统,例如 snort。

    • 3
  8. Cristian Ciupitu
    2009-06-03T15:06:13+08:002009-06-03T15:06:13+08:00

    为各种目录使用单独的分区,例如/tmpor/var并使用nosuid,nodev和noexec如果可能的话。

    • 3
  9. Luke has no name
    2010-04-28T11:22:08+08:002010-04-28T11:22:08+08:00

    一些防火墙建议。

    学习使用防火墙和正确锁定盒子的概念。更改默认端口在很大程度上是无用的;正确的应用程序和防火墙配置更为重要。

    两者都在 Ubuntu 存储库中:

    FireHOL

    有很棒的文档和非常容易学习的语法。我能够在 20 分钟内设置网关/防火墙。我离开这个的唯一原因是它似乎没有被维护(最后一次发布是 2 年前)。不代表不行,但是...

    费姆

    是另一个。更多类似 iptables 的语法,但概念相同。维护的社区比 FireHOL 多,但需要更长的时间才能恢复。

    护墙

    是我目前使用的。它的文档很丰富,它的配置格式是表格的。我花了大约一个半小时来了解所有需要的文件 (6) 才能运行有效的防火墙/网关配置。它相当强大。提示:不同配置文件的手册页真的很有帮助!

    所有这些都从配置文件加载防火墙配置。非常有效,比 iptables 更易于使用,并且(在我看来)比 ufw 更易于使用和管理。

    其他:

    • 我支持 SSH 密钥使用的建议。

    • 设置 IDS。

    • 了解 AppArmor。它将可执行文件的文件访问权限限制在它需要的指定目录和文件中。类似于 RHEL 世界中的 SELinux。它已安装并启用了许多常用程序的预配置“配置文件”。

    • 3
  10. mas
    2009-07-12T07:13:56+08:002009-07-12T07:13:56+08:00

    除了这里的其他建议外,我还会提到三个显而易见但可能值得一提的完整建议:

    1. 如果您认为不需要防火墙,请三思。ufw 很简单,但专为 Ubuntu 设计并基于 iptables
    2. 更新软件包:至少应用所有安全补丁
    3. 记录您为保护服务器所做的工作以及原因。包括配置(自动化)流程以监控日志、测试配置和报告所需的安全更新。
    • 2

相关问题

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve