萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦基礎知識 >  >> 電腦入門

Telnet 安全加固指南:端口修改與 SSH 替代方案實戰

Telnet 固有安全缺陷

  • 明文傳輸:用戶名、密碼、命令、輸出全部明文,Wireshark 直接可見
  • 默認端口 23:全網掃描首選目標,暴力破解字典攻擊高發
  • 無完整性校驗:中間人攻擊 (MITM) 可竄改會話數據
  • 無強認證機制:不支持密鑰/雙因子/憑證認證

緩解措施一:修改默認端口 (安全性邊際提升)

# 管理員 CMD/PowerShell 執行
tlntadmn config port=2323  # 修改為非常用高位端口 (1024-65535)
# 驗證
tlntadmn config
netstat -an | findstr 2323

# 客戶端連接
telnet 192.168.1.100 2323

⚠️ 局限性:僅增加掃描成本 (Nmap `-p-` 全端口掃描秒級完成),無法防禦流量嗅探/中間人/暴力破解。不可作為唯一防禦手段。

緩解措施二:IP 訪問控制列表 (ACL)

# Windows 防火牆限制 Telnet 服務入站 (管理員 PowerShell)
New-NetFirewallRule -DisplayName "Telnet Restricted Access" -Direction Inbound -LocalPort 2323 -Protocol TCP -RemoteAddress 10.0.0.0/8,192.168.0.0/16 -Action Allow -Profile Domain,Private
New-NetFirewallRule -DisplayName "Telnet Block Others" -Direction Inbound -LocalPort 2323 -Protocol TCP -RemoteAddress Any -Action Block -Profile Domain,Private,Public

原則:僅允許管理網段/跳板機 IP 訪問,拒絕業務網段/互聯網訪問。

根治方案:全面替換為 SSH (OpenSSH)

Windows 10 1809+ / Server 2019+ 內建 OpenSSH

# 安裝 OpenSSH Server (管理員 PowerShell)
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

# 配置服務自啟動並啟動
Set-Service sshd -StartupType Automatic
Start-Service sshd

# 防火牆放行 (安裝腳本通常自動添加)
New-NetFirewallRule -Name "OpenSSH Server" -DisplayName "OpenSSH Server" -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

關鍵安全配置 (C:\ProgramData\ssh\sshd_config)

Port 2222                    # 修改默認端口
PermitRootLogin no           # 禁用 Administrator 直接登錄
PubkeyAuthentication yes     # 強制密鑰認證
PasswordAuthentication no    # 禁用密碼認證 (配合密鑰部署後)
PermitEmptyPasswords no
MaxAuthTries 3               # 限制嘗試次數
ClientAliveInterval 300      # 保活檢測
ClientAliveCountMax 2
AllowUsers adminuser@10.0.0.0/8  # 限制用戶+來源 IP
Banner /etc/ssh/banner.txt   # 法律告警横幅
Subsystem sftp internal-sftp # 僅啟用 SFTP (如不需 Shell)

密鑰生成與部署 (Ed25519 推薦)

# 客戶端生成
ssh-keygen -t ed25519 -C "admin@company.com" -f ~/.ssh/id_ed25519_admin

# 公鑰部署到服務器
ssh-copy-id -i ~/.ssh/id_ed25519_admin.pub -p 2222 adminuser@server
# 或手動追加到 C:\Users\adminuser\.ssh\authorized_keys

# 設置權限 (關鍵!)
icacls "C:\Users\adminuser\.ssh\authorized_keys" /inheritance:r /grant "adminuser:R" /grant "SYSTEM:F" /grant "Administrators:F"
icacls "C:\Users\adminuser\.ssh" /inheritance:r /grant "adminuser:R" /grant "SYSTEM:F" /grant "Administrators:F"

企業級加固:堡壘機/跳板機架構

原則:生產環境服務器完全不對外開放管理端口

  1. 部署堡壘機 (JumpServer/Teleport/商業產品)
  2. 堡壘機僅對運維網段開放 SSH/Web 界面
  3. 目標服務器防火牆僅允許堡壘機 IP 訪問 SSH 端口
  4. 所有運維操作經過堡壘機錄像审計、命令審批、會話回放
  5. 定期輪換憑證/密鑰,撤銷離職人員權限

協議對比總結

特性TelnetTelnet+端口修改+ACLSSH (密鑰認證+堡壘機)
機密性❌ 明文❌ 明文✅ AES-256/ChaCha20 加密
完整性❌ 無❌ 無✅ HMAC-SHA2-256
認證強度❌ 單因子密碼❌ 單因子密碼✅ 多因子 (密鑰+密碼+硬件密鑰)
審計能力❌ 無❌ 僅連接日志✅ 完整會話錄像/命令審計
合規性❌ 違規❌ 違規✅ 滿足等保/PCI-DSS/GDPR

遷移檢查清單

  • [ ] 所有目標服務器部署 OpenSSH Server
  • [ ] 關鍵配置 `sshd_config` 已按基線加固
  • [ ] 運維人員密鑰對生成、分發、備份完成
  • [ ] 堡壘機部署上線,策略生效
  • [ ] 防火牆關閉 Telnet 端口 (23/自定義)
  • [ ] 禁用 Telnet 服務:`Set-Service tlntsvr -StartupType Disabled; Stop-Service tlntsvr`
  • [ ] 更新運維操作手冊、應急預案
  • [ ] 紅隊演練驗證滲透路徑已斷開

結論:Telnet 屬於考古級協議,任何生產環境都應立即停用並遷移至 SSH + 堡壘機體系。端口修改、ACL 只能作為遷移窗口期的臨時緩解措施,不可長期依賴。

copyright © 萬盛學電腦網 all rights reserved