Incapable de faire tourner endlessh avec systemd Le sujet est résolu

Demande d'aide : c'est ici.
Répondre
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

Salut,

Suite à cette discussion je tente de faire tourner endlessh (Un espèce de honney pot ssh).
Mais je n'y arrive pas, sauf en ligne de commande.

Sur une Debian Bookworm à jour.

Code : Tout sélectionner

$ apt policy endlessh
endlessh:
  Installé : 1.1-5+b1
  Candidat : 1.1-5+b1
 Table de version :
 *** 1.1-5+b1 990
        990 https://deb.debian.org/debian bookworm/main amd64 Packages
        100 http://deb.debian.org/debian testing/main amd64 Packages
        -10 http://deb.debian.org/debian sid/main amd64 Packages
        100 /var/lib/dpkg/status
     1.1-5 500
        500 http://deb.debian.org/debian bullseye/main amd64 Packages
Je n'ai touché à aucun fichier, ni créé de fichier de config (/etc/endlessh/config)

Code : Tout sélectionner

# systemctl status endlessh
× endlessh.service - Endlessh SSH Tarpit
     Loaded: loaded (/lib/systemd/system/endlessh.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Thu 2023-07-13 11:51:25 EAT; 6min ago
   Duration: 30ms
       Docs: man:endlessh(1)
    Process: 77946 ExecStart=/usr/bin/endlessh (code=exited, status=226/NAMESPACE)
   Main PID: 77946 (code=exited, status=226/NAMESPACE)
        CPU: 30ms

juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: endlessh.service: Scheduled restart job, restart counter is at 3.
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: Stopped endlessh.service - Endlessh SSH Tarpit.
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: endlessh.service: Start request repeated too quickly.
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: endlessh.service: Failed with result 'exit-code'.
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: Failed to start endlessh.service - Endlessh SSH Tarpit.

Code : Tout sélectionner

# journalctl -xeu endlessh.service
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: endlessh.service: Scheduled restart job, restart counter is at 3.
░░ Subject: Le redémarrage automatique d'une unité (unit) a été planifié
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ Le redémarrage automatique de l'unité (unit) endlessh.service a été planifié, en
░░ raison de sa configuration avec le paramètre Restart=.
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: Stopped endlessh.service - Endlessh SSH Tarpit.
░░ Subject: L'unité (unit) endlessh.service a terminé son arrêt
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ L'unité (unit) endlessh.service a terminé son arrêt.
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: endlessh.service: Start request repeated too quickly.
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: endlessh.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ The unit endlessh.service has entered the 'failed' state with result 'exit-code'.
juil. 13 11:51:25 xxx.xxx.xxx systemd[1]: Failed to start endlessh.service - Endlessh SSH Tarpit.
░░ Subject: L'unité (unit) endlessh.service a échoué
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ L'unité (unit) endlessh.service a échoué, avec le résultat failed.
juil. 13 11:59:42 xxx.xxx.xxx systemd[1]: Started endlessh.service - Endlessh SSH Tarpit.
░░ Subject: L'unité (unit) endlessh.service a terminé son démarrage
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ L'unité (unit) endlessh.service a terminé son démarrage, avec le résultat done.
juil. 13 11:59:42 xxx.xxx.xxx systemd[1]: endlessh.service: Main process exited, code=exited, status=226/NAMESPACE
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ An ExecStart= process belonging to unit endlessh.service has exited.
░░
░░ The process' exit code is 'exited' and its exit status is 226.
juil. 13 11:59:42 xxx.xxx.xxx systemd[1]: endlessh.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ The unit endlessh.service has entered the 'failed' state with result 'exit-code'.
Par contre, en ligne de commande c'est ok (Même sur le port 22 alors que je croyais qu'il fallait l'autoriser expressément pour les ports < à 1024).

Code : Tout sélectionner

# endlessh -p 22
Dans une autre console:

Code : Tout sélectionner

# ps -aux | grep endlessh | grep -v grep
root       78347  0.0  0.0   2468   944 pts/3    S+   12:14   0:00 endlessh -p 22
# netstat -laputen | grep endlessh
tcp6       0      0 :::22                   :::*                    LISTEN      0          2199406    78347/endlessh
Rien ne change si je crée un fichier de configuration dans /etc/endlessh/config
Le systemd au cas ou... Mais je ne vois rien de problématique.

Code : Tout sélectionner

# cat /usr/lib/systemd/system/endlessh.service
[Unit]
Description=Endlessh SSH Tarpit
Documentation=man:endlessh(1)
Requires=network-online.target

[Service]
Type=simple
Restart=always
RestartSec=30sec
ExecStart=/usr/bin/endlessh
KillSignal=SIGTERM

# Stop trying to restart the service if it restarts too many times in a row
StartLimitInterval=5min
StartLimitBurst=4

StandardOutput=journal
StandardError=journal
StandardInput=null

PrivateTmp=true
PrivateDevices=true
ProtectSystem=full
ProtectHome=true
InaccessiblePaths=/run /var

## If you want Endlessh to bind on ports < 1024
## 1) run:
##     setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh
## 2) uncomment following line
#AmbientCapabilities=CAP_NET_BIND_SERVICE
## 3) comment following line
PrivateUsers=true

NoNewPrivileges=true
ConfigurationDirectory=endlessh
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectControlGroups=true
MemoryDenyWriteExecute=true

[Install]
WantedBy=multi-user.target

C'est très agaçant. :wacko:
Vous auriez une idée ?
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

Je me répond tout seul.
Le coupable:

Code : Tout sélectionner

InaccessiblePaths=/run /var
Il suffit de commenter/supprimer et de recharger.

Pas contre je ne sais pas trop ce que ça implique côté sécurité.
Ces chemin inaccessible n'ont pas été choisis par hasard.
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
dezix
Membre hyper actif
Membre hyper actif
Messages : 3548
Inscription : 04 juin 2016, 14:50
Status : Hors-ligne

Salut!

Merci pour ce partage :friends:
**Simple Utilisateur** -- Debian stable - XFCE
Avatar de l’utilisateur
vv222
Membre actif
Membre actif
Messages : 852
Inscription : 18 avr. 2016, 20:14
Contact :
Status : Hors-ligne

J’ai aussi modifié cette même valeur, voici mon fichier /etc/systemd/system/endlessh.service.d/override.conf :

Code : Tout sélectionner

[Service]
AmbientCapabilities=CAP_NET_BIND_SERVICE
PrivateUsers=false
InaccessiblePaths=
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

Hello,
vv222 a écrit : 15 juil. 2023, 15:30 J’ai aussi modifié cette même valeur, voici mon fichier /etc/systemd/system/endlessh.service.d/override.conf :

Code : Tout sélectionner

[Service]
AmbientCapabilities=CAP_NET_BIND_SERVICE
PrivateUsers=false
InaccessiblePaths=

Oui, c'est évidemment plus propre en cas d'update du paquet endlessh... :wink:
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
zargos
Membre
Membre
Messages : 197
Inscription : 07 juil. 2023, 13:34
Status : Hors-ligne

lol a écrit : 13 juil. 2023, 12:13 Je me répond tout seul.
Le coupable:

Code : Tout sélectionner

InaccessiblePaths=/run /var
Il suffit de commenter/supprimer et de recharger.

Pas contre je ne sais pas trop ce que ça implique côté sécurité.
Ces chemin inaccessible n'ont pas été choisis par hasard.
Si le programme est compris, tu peux gagner l'accès à ces deux répertoires. D'autant qu'(il tourne sous root (il me semble)
Avatar de l’utilisateur
vv222
Membre actif
Membre actif
Messages : 852
Inscription : 18 avr. 2016, 20:14
Contact :
Status : Hors-ligne

Vu la très faible surface d’attaque qu’offre endlessh, je ne m’inquiéterais pas trop de ce côté.
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

vv222 a écrit : 19 juil. 2023, 00:36 Vu la très faible surface d’attaque qu’offre endlessh, je ne m’inquiéterais pas trop de ce côté.
:good:
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
Grhim
Membre très actif
Membre très actif
Messages : 1389
Inscription : 30 mai 2016, 01:00
Localisation : kekparr'par'là
Status : Hors-ligne

:good: merci LOL pour endlessh , ça va me servir
Debian Stable + Testing -.- Parrot OS - Kali Exegol -.- Raspberry IPFire
Répondre