Telnet 採用明文傳輸:用戶名、密碼、命令、輸出全部在網絡裸奔。任何掌握抓包工具 (Wireshark、tcpdump) 的攻擊者,均可輕鬆竊取憑證。更危險的是中間人攻擊 (MITM):攻擊者攔截連接,偽裝成 Server 接收客戶端數據,再偽裝成客戶端轉發給真 Server,雙方毫無察覺,數據被竊取、篡改、注入惡意代碼。
TCP Wrappers (/etc/hosts.allow, /etc/hosts.deny) 基於主機名/IP 訪問控制列表 (ACL),在服務進程接受連接前攔截:
# RHEL/CentOS/Fedora
dnf install -y openssh-server openssh-clients
# Debian/Ubuntu
apt update && apt install -y openssh-server openssh-client
# 源碼編譯 (如需特定版本/特性)
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
tar xzf openssh-*.tar.gz && cd openssh-*
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-kerberos5
make && make install
編譯安裝審計技巧:安裝前 find / > /tmp/before,安裝後 find / > /tmp/after,diff /tmp/before /tmp/after > /tmp/changes,永久記錄文件變更,利於後續審計與回滾。
/etc/ssh/sshd_config)Port 2222 # 修改默認端口,減少自動掃描噪音
Protocol 2 # 僅啟用 SSH-2 協議
PermitRootLogin no # 禁止 root 直接登入 (核心原則)
PubkeyAuthentication yes # 啟用公鑰認證
PasswordAuthentication no # 禁用密碼認證 (強制公鑰)
PermitEmptyPasswords no # 禁止空密碼
MaxAuthTries 3 # 限制嘗試次數
ClientAliveInterval 300 # 保活間隔 5 分鐘
ClientAliveCountMax 2 # 2 次無響應斷開
AllowUsers admin ops # 白名單限制允許登入用戶
# 或 AllowGroups sshusers # 基於組控制
Banner /etc/ssh/banner # 登入警告横幅
# /etc/hosts.deny
sshd: ALL # 默認拒絕所有
# /etc/hosts.allow
sshd: 192.168.1.0/255.255.255.0 10.0.0.5 # 僅允許內網管理段及跳板機
sshd: .example.com # 允許特定域名 (需 DNS 正反解一致)
# 客戶端生成
ssh-keygen -t ed25519 -a 100 -C "admin@workstation-2024"
# 部署公鑰到服務端
ssh-copy-id -i ~/.ssh/id_ed25519.pub -p 2222 admin@server_ip
# 或手動: cat ~/.ssh/id_ed25519.pub | ssh -p 2222 admin@server_ip "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
systemctl enable --now sshd
firewall-cmd --permanent --add-port=2222/tcp && firewall-cmd --reload
# 或 iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
/var/log/secure (RHEL) 或 /var/log/auth.log (Debian)。SSH 是 Linux 遠程運維的生命線,配置得當,它是堅不可摧的加密隧道;配置失誤,它是敵人通往核心的高速公路。
Nginx.conf 核心配置詳解:從核心參數、事件模型、HTTP 優化到虛擬主機與負載均衡實戰
Linux 新手必看:關於 Linux 的 10 個最常見問題解答
解決 SecureCRT 連線 Linux 中文亂碼問題完整步驟
Linux 系統信息查看命令速查表:從內核到應用的全維度巡檢
OpenSSL C API 開發指南:SSL/TLS 客戶端與服務端完整程式架構
Unix/Linux 自動化備份與同步實戰指南 (tar, cpio, rsync, mksysb)
Linux C/C++ 開發工具鏈全景:GCC、GDB、xxgdb、calls、calltree、cproto、indent、gprof 實戰指南