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 / 问题 / 126055
Accepted
Journeyman Geek
Journeyman Geek
Asked: 2010-03-25 18:14:09 +0800 CST2010-03-25 18:14:09 +0800 CST 2010-03-25 18:14:09 +0800 CST

为什么 sshd 默认允许 root 登录?

  • 772

我目前正在努力加强我的服务器以防止黑客攻击——除此之外,我正在尝试以 root 身份通过 ssh 登录。虽然我已经实现了fail2ban,但我想知道,为什么默认情况下允许root登录?即使使用非基于 sudo 的发行版,我也可以始终以普通用户身份登录并切换 - 所以我想知道允许 root 登录 ssh 是否有任何明显的优势,或者它只是没有人愿意改变的东西?

security ssh root
  • 5 5 个回答
  • 1490 Views

5 个回答

  • Voted
  1. Best Answer
    Zoredache
    2010-03-25T19:04:10+08:002010-03-25T19:04:10+08:00

    在 ssh 上允许 root 登录有任何明显的优势

    有一些备份系统需要远程系统上的 root 才能实际执行备份。使用基于密钥的身份验证设置以在远程系统上执行维护任务的情况并不少见。

    我强烈希望将默认值从更改PermitRootLogin yes为至少PermitRootLogin without-password,这将只允许基于密钥的身份验证。几乎从不需要对 root 帐户进行远程密码验证。

    在系统(如 Ubuntu)上,使用禁用密码的 root 帐户设置系统变得越来越普遍。默认设置没有太大的风险,因为无法直接对禁用密码的帐户进行身份验证。

    还要考虑到,如果您有一个密码足够复杂的 root 帐户,那么通过 ssh 远程登录到 root 的蛮力尝试成功的机会非常低。禁用 root 帐户确实提供了额外的安全层,但如果您有一个强密码,则可能不需要它。如果您将强密码与denyhosts 和fail2ban 等反应性工具结合使用,通常几乎没有尝试暴力破解root 密码的风险。

    根据风险和网络要求,在安装完成后强化系统始终是一个好习惯。一个不重要且没有用户数据的系统实际上并不需要与存储医疗或银行记录的系统相同级别的加固。

    • 8
  2. Xeoncross
    2010-03-25T18:22:20+08:002010-03-25T18:22:20+08:00

    我不确定,但我假设他们想确保进行外国安装的人可以登录。因为还没有其他用户,所以第一次登录可能需要 root。

    但是,在创建用户并授予他 sudo 权限后,您必须确保在 sshd 配置中禁用以 root 身份登录选项。

    我还建议您将 SSH 端口更改为 22 以外的端口。虽然它不会使您的机器更安全 - 它确实会阻止所有那些浪费/烦人的请求。

    • 2
  3. Embreau
    2010-03-25T19:37:15+08:002010-03-25T19:37:15+08:00

    考虑防止 root 登录作为额外的保护。几年前,暴力破解达到顶峰,如今,他们倾向于通过守护进程(apache、pureftpd、...)可以看到的内容来寻找漏洞。如果明天发现 SSHD 漏洞,防止 root 登录成为一个好主意。虽然 SSHD 成熟且安全,但您永远不知道。最近,漏洞利用更多地是通过内核提升特权或使用带有内核的第三方应用程序,因此阻止 root 登录不会改变任何事情。

    基于 Debian 的发行版已经进行了切换,而基于 RedHat 的发行版建议这样做(如果您阅读了他们的最佳实践文档)

    • 2
  4. sucuri
    2010-03-26T05:16:04+08:002010-03-26T05:16:04+08:00

    好吧,因为 root 是一个有效的用户并且 sshd 允许它工作。例如,在 OpenBSD(来自 OpenSSH 的同一个人)上,在安装过程中不会要求您创建用户,因此您需要使用 root 访问您的机器。

    一些基于桌面的发行版迫使您创建额外的用户,但对于服务器,您实际上不需要一个。

    此外,sudo 或 su 比以 root 身份登录更安全的这些论点是一个很大的神话。例如,在 Ubuntu 上,用户可以默认使用 sudo 运行任何命令,因此任何进入的攻击者也可以以 root 身份运行任何命令。从安全的角度来看非常没用。

    • 1
  5. Joe Internet
    2010-03-25T20:13:06+08:002010-03-25T20:13:06+08:00

    它几乎是特定于发行版的。有些允许,有些不允许。

    如果我正在管理一个发行版,我会将系统配置为在安装时尽可能地强化。忘记启用某些功能比忘记禁用某些功能要好。

    • 0

相关问题

  • 为什么使用authorized_keys通过ssh自动登录不起作用?

  • 如何启用与 SQL Server 实例的加密连接?

  • 从多个位置保护远程服务器/工具访问的最佳方法是什么?

  • 在 SOHO 环境中实施的最佳 VPN 技术是什么?[关闭]

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

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

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

    • 30 个回答
  • Marko Smith

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

    • 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
    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