Instalei no Ubuntu 22.04 tarpit-endlessh (apt install infinito) e fiz as seguintes configurações em /etc/endlessh/config:
port 22
Delay 10000
MaxLineLength 32
MaxClients 4096
LogLevel 0
BindFamily 0
ss -tulpen | grep ssh
me mostra que o Endlessh está configurado para a porta 2222. Por que a porta 2222 está sendo monitorada mesmo que eu tenha a porta 22 definida na configuração do Endlessh?
E há apenas um arquivo infinitoh.service vazio em /etc/systemd/system/ Em vez disso, o arquivo infinitoh.service não vazio está em /lib/systemd/system/
Aqui /etc/systemd/system/endlessh.service fiz essas alterações:
Se você deseja que o Endlessh se ligue nas portas <1024
- correr:
setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh
- descomente a seguinte linha
AmbientCapabilities=CAP_NET_BIND_SERVICE
- comente a linha seguinte
#PrivateUsers=true
No entanto, isso não funcionou:
setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh
Eu entendi isso:
Falha ao definir recursos no arquivo `/usr/local/bin/endlessh' (arquivo ou diretório inexistente) O valor do argumento de capacidade não é permitido para um arquivo. Ou o arquivo não é um arquivo normal (sem link simbólico)
Editar: Depois
systemctl daemon-reload
ele monitora a porta 22 agora. Embora este comando ainda não funcione:
setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh
Por que a maioria dos tutoriais sobre Endlessh escrevem para compilá-lo a partir do git em vez de instalá-lo facilmente com apt install infinito?
Responder1
A especificação da porta 22 é lida no arquivo de configuração na inicialização do programa. Depois de alterar o arquivo de configuração, você deve reiniciar o programa para que ele leia o novo e aprimorado arquivo de configuração.