⭐⭐⭐⭐ (4星)

Ubuntu 26.04 Ends 46 Years of Silent sudo Passwords

Linux 安全UX 开源历史 • pbxscience.com • 2026-03-23

Starting with the upcoming LTS release, every keystroke at a sudo password prompt will echo an asterisk — a small UX fix that has ignited one of Linux's fiercest debates in years.

历史背景

原始sudo工具于1980年由Bob Coggeshall和Cliff Spencer在纽约州立大学布法罗分校创建。其沉默的密码输入是一个深思熟虑的安全决策——来自一个终端共享、物理屏幕开放的年代,威胁模型明确包括站在身后数击键来猜测密码长度的人。该行为持续了近半个世纪的Linux发行版。

变革的催化剂:sudo-rs

变化的催化剂是sudo-rs——用Rust编程语言从零重写经典C实现。Canonical从Ubuntu 25.10开始默认使用sudo-rs。然后,在Ubuntu 26.04测试窗口前两周,上游sudo-rs项目合并了一个补丁,默认启用pwfeedback选项。

关键时间线

  • 1980: 原始sudo创建于 SUNY Buffalo。沉默密码输入从第一天起就是默认值。
  • 2025年10月: Canonical用sudo-rs (Rust)替换经典基于C的sudo。
  • 2026年2月: 上游sudo-rs合并pwfeedback补丁。Canonical将其 cherry-pick 到Ubuntu 26.04每日构建。
  • 2026年4月23日: Ubuntu 26.04 LTS "Resolute Raccoon" 发布。

安全论战

批评者指出:隐藏密码长度的安全收益可以忽略——任何足够近到能数屏幕上星号的人,也足够近到直接观看或听到你的击键。开发者更指出:大多数用户的sudo密码与登录密码相同,而登录画面已经显示可见的占位符圆点。在终端隐藏星号却在登录时显示圆点,在开发者看来是"安全剧院"。

"Security is theoretically worse since password lengths are exposed to people watching your screen, but this is an infinitesimal benefit far outweighed by the UX issue."
— sudo-rs upstream commit message

恢复传统行为

sudo visudo
# 添加以下行:
Defaults !pwfeedback

更广阔的图景

星号变化是Ubuntu 26.04更大现代化的一部分。该版本将搭载仅运行在Wayland上的GNOME 50、Linux 7.0内核,以及进一步采用Rust核心工具——包括uutils/coreutils——Rust重写的标准Unix命令行工具。切换到sudo-rs因此是将内存安全(以及显然是现代UX感觉)带到Ubuntu基本管道的更广泛努力的一部分。

核心洞察:开发者决定默认应该偏向被空白提示符困惑的众多新用户,而非珍视传统的少数老用户。无论你认为这一变化是迟来的体验改进还是危险地背离Unix哲学,有一点是明确的:恢复传统的选项仍然牢牢掌握在你手中。