我在 Ubuntu 22.04 tarpit-endlessh (apt install endlessh) 上安裝並在 /etc/endlessh/config 中進行了以下設定:
port 22
Delay 10000
MaxLineLength 32
MaxClients 4096
LogLevel 0
BindFamily 0
ss -tulpen | grep ssh
顯示無盡它設定為連接埠 2222。
/etc/systemd/system/ 中只有一個空的 endendh.service 文件,而不是空的 endendh.service 檔案位於 /lib/systemd/system/ 中
這裡 /etc/systemd/system/endlessh.service 我做了這些更改:
如果您希望 Endlessh 綁定在 < 1024 的連接埠上
- 跑步:
setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh
- 取消註解以下行
AmbientCapabilities=CAP_NET_BIND_SERVICE
- 評論以下行
#PrivateUsers=true
然而這不起作用:
setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh
我明白了:
無法設定檔案「/usr/local/bin/endlessh」的功能(沒有這樣的檔案或目錄) 檔案不允許使用功能參數的值。或該文件不是常規(非符號連結)文件
編輯:之後
systemctl 守護程式重新載入
它現在監視連接埠 22。雖然這個命令仍然不起作用:
setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh
為什麼大多數關於 Endlessh 的教程都寫從 git 編譯它,而不是使用 apt install endlessh 輕鬆安裝它?
答案1
程式啟動時從設定檔讀取連接埠 22 規格。更改設定檔後,必須重新啟動程式才能讀取新的、改進的設定檔。