Registrazione del tunnel SSH?


13

Ho un computer con SSH a cui vorrei dare accesso ai miei amici, ma non voglio che utilizzino la mia connessione Internet attraverso il tunneling SSH (anche se mi piacerebbe farlo da solo). C'è un modo per avere un registro di quando vengono creati i tunnel SSH e con quali utenti (locali) o, se ciò non è possibile, consentire solo ad alcuni utenti di farlo?


vuoi impedire a tutti gli utenti l'accesso a Internet o semplicemente il port forwarding?
JanC

1
Voglio solo impedire il port forwarding e i proxy SOCKS su SSH.
Frxstrem,

Risposte:


10

Se i tuoi amici sono in grado di SSH sul tuo computer, stanno utilizzando parte della tua larghezza di banda ed è quindi impossibile bloccare completamente l'accesso alla tua connessione Internet.

Detto questo, una soluzione sarebbe limitare ciò che i tuoi amici possono fare con la tua connessione. Potresti impostare un firewall che autorizza gli IP dei tuoi amici e inserisce nella blacklist tutto il resto. In questo modo, i tuoi amici potrebbero SSH sul tuo computer ma da lì, non sarebbero in grado di raggiungere un IP diverso dal loro.

Non ho mai installato un firewall specifico per l'utente , ma credo che sia possibile farlo con IPTables . Inoltre, tieni presente che i tuoi utenti potrebbero ancora consumare molta della tua larghezza di banda caricando file di grandi dimensioni sul tuo server. Se si desidera impedire ciò in modo specifico, è necessario limitare la larghezza di banda per utente .


9

Vuoi assicurarti che / etc / ssh / sshd_config contenga

AllowTcpForwarding no

e poi alla fine del file messo

Match User yourusername
    AllowTcpForwarding yes

Ciò consentirà a te e solo a te di eseguire il port forwarding al contenuto del tuo cuore, ma come ha detto João non sarai in grado di impedire loro di eseguire i propri programmi se non disabiliti anche l'accesso alla shell.


8

Si noti che mentre è possibile disabilitare l'inoltro TCP tramite sshd, è necessario andare molto oltre per limitare l'attività in uscita degli utenti. Dare loro un guscio significa dare loro molto potere.

Ad esempio, se possono scp file sul server ed eseguire file in / home, possono semplicemente caricare un binario pppd e usarlo per eseguire PPP su SSH. Se consenti le connessioni in entrata, possono semplicemente eseguire /usr/sbin/sshd -p 9999 -f special_sshd_confige utilizzare il tuo server tramite quella sshd.

Potresti voler esaminare il modulo del proprietario di iptables (man iptables, cercare il proprietario) e le chroot jail, ma questo è davvero difficile da risolvere senza rovinare la loro esperienza di shell.


1

L'unica opzione di cui sono a conoscenza è disabilitare il tunneling a livello di sistema.

Modifica / etc / ssh / sshd_config e cambia / aggiungi

AllowTcpForwarding no

Si noti che pur avendo accesso alla shell non è possibile impedire agli utenti di utilizzare i propri file binari per l'inoltro delle connessioni.


1
Questa non è una soluzione accettabile in quanto devo usare il tunneling SSH da solo (come ho detto nella mia domanda).
Frxstrem,

Ciò lo sta effettivamente disabilitando a livello di applicazione.
Chiggsy,


0

Prima iterazione:

Disabilita l'inoltro ssh per loro. in ssh

È abilitare IPSec VPN per voi stessi e al vostro server. IPSec è a livello di rete, quindi non è interessato dalle impostazioni dell'applicazione SSH.

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.