Come consentire all'utente non root di ascoltare sulla porta privilegiata?


11

Voglio che syslog sia eseguito come utente non root sulla mia scatola di Linux. Ciò gli rende impossibile collegarsi alla porta 514, perché è una porta privilegiata. Esiste un modo per garantire all'utente non amministratore "pippo" la possibilità di ascoltare sulla porta 514?

Risposte:


10
setcap 'cap_net_bind_service=+ep' /path/to/syslogd

Richiede un kernel linux non antico ( 2.6.24 o successivo)


3

È possibile configurare rinetd(disponibile nella maggior parte, se non in tutti, i repository standard di distribuzione) per l'ascolto sulla porta 514 e l'inoltro delle connessioni ad un'altra porta (sopra 1024, diciamo 1514). In questo modo il processo utente senza privilegi può ascoltare il 1514 e rinetdinoltrare le connessioni in modo che sembri essere in ascolto sul 514.

Questo funzionerà solo per le connessioni TCP. Se hai bisogno di supportare UDP (o qualsiasi altra cosa) in questo modo così come o invece di TCP, puoi usare le regole di traduzione di iptables per ottenere lo stesso effetto.


Oh, è stato così facile. Ecco una guida su come farlo in Ubuntu: ubuntugeek.com/…
Ivan,


2

Ascolta su una porta senza privilegi e usa iptables dnat per reindirizzare le connessioni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.