Openssh

為什麼不將 OpenSSH 的 MaxSessions 設置為 1000000?

  • December 28, 2016

我將 SSH 客戶端配置為多路復用我的會話:

Host *
ControlMaster auto
ControlPath ~/.ssh/sockets/%r@%h-%p
ControlPersist 600

我偶爾會遇到預設的 OpenSSH 伺服器端MaxSessions限制 10。顯而易見的答案是增加到MaxSessions比我需要的數字大得多的數字。

是否有理由不將其設置為 1000000?預設值 10 表明這是不這樣做的某種原因。

我所能想到的可能是過去 10 點左右,繁忙的連接可能效率較低,但鑑於傷害僅限於我自己,我不確定這是不是這個原因。

限制任何事情總是有原因的。這10是“正常的預設值”。less 用於限制性更強的案例(阻止 shell 訪問或只允許單通道),將其提高到 more 也是有意義的,如果您真的知道,您將發出數百萬個會話。我很少打開超過4個。

對於這個問題:

是否有理由不將其設置為 1000000?

max_sessions變數int類型,所以最大可能值為2147483647. 沒有什麼能阻止您建立理想的百萬美元。

…但如前所述,沒有充分的理由這樣做。

使用更多會話沒有顯著的安全影響(一旦打開攻擊者的單個會話,您就完蛋了),但是使用更多會話可能會降低性能。

引用自:https://unix.stackexchange.com/questions/333348