Come si indirizza Internet attraverso un tunnel SSH?

22

Vecchio Q Come posso configurare un server OpenVPN senza privilegi di root?

C'è un modo per configurare un server OpenVPN senza privilegi di root? Per esempio. con i file di configurazione nella mia home directory? Se sì, come posso configurarlo?

Sto provando a installare SSH in un sistema e a configurare un server OpenVPN per uso personale.

Modifica

Poiché è evidente che OpenVPN richiede i privilegi di root, sto cambiando la domanda in routing del mio Internet usando SSH che posso facilmente configurare.

    
posta Oxwivi 25.05.2011 - 11:57
fonte

3 risposte

29

sshuttle è un server proxy trasparente che inoltra tramite una connessione SSH e configura un proxy eseguendo script Python sul server remoto. sshuttle può essere eseguito nelle seguenti condizioni:

  • macchina o router client è basato su Linux, FreeBSD o Mac OS
  • privilegi amministrativi sul client
  • accesso alla rete remota tramite SSH
  • no privilegi di amministratore sulla rete remota
  • disponibilità di Python sul server remoto

Installa sshuttle dal Software Center o dal Terminale:

sudo apt-get install sshuttle

Il comando di base per l'esecuzione di sshuttle con il routing di tutto il traffico è:

sshuttle -r username@sshserver:port 0/0

Al momento dell'esecuzione del comando, verrà visualizzata una richiesta di immissione della password sudo e successivamente la password per l'account SSH. Nessun altro dettaglio apparirà tranne un breve messaggio e tornerà alla shell dopo un errore. Per altri messaggi di stato, esegui sshuttle in modalità dettagliata con il flag -v .

In questo esempio tutto il traffico internet eccetto il DNS viene instradato attraverso la VPN. -r flag indica il nome host remoto e il nome utente e la porta facoltativi che seguono nell'esempio precedente. 0/0 è l'abbreviazione di 0.0.0.0/0 che rappresenta le sottoreti da instradare sulla VPN. L'utilizzo di 0/0 indirizza tutto il traffico eccetto le richieste DNS al server remoto. Il tunelling DNS è possibile con l'utilizzo del flag -H .

Leggi la pagina man ( man sshuttle ) per i dettagli delle opzioni e delle modalità con cui può essere eseguito sshuttle . Per informazioni sul concetto e altri esempi, consulta la pagina del progetto .

    
risposta data André Paramés 25.05.2011 - 15:48
fonte
16

Non puoi impostare OpenVPN senza privilegi di root perché certe operazioni lo richiedono.

  • Prerequisiti: devi abilitare l'inoltro dei pacchetti nel tuo firewall (iptables?)
  • Aggiunta di dispositivi in ​​funzione: un dispositivo virtuale speciale deve essere aggiunto utilizzando ifconfig . Altrimenti, nessuna comunicazione è possibile tra il server e il client

A seconda delle esigenze, sono disponibili altre soluzioni. Per sfogliare il tuo server, puoi configurare un server SOCKS.

Proxy SOCKS

L'impostazione di un proxy SOCKS non è difficile: è integrata in OpenSSH. Per abilitare il server SOCKS, esegui il comando successivo in un terminale :

ssh user@host -D1234

Sostituisci 1234 con la tua porta preferita. Nel tuo browser, puoi inserire localhost come host e 1234 come porta sul server SOCKS4 / 5.

Di seguito è riportato un esempio nel browser Firefox:

  1. Vai a Modifica - & gt; Preferenze
  2. Apri la sezione Avanzate
  3. Vai alla scheda Rete
  4. Premi Impostazioni
  5. Seleziona Configurazione proxy manuale
  6. Inserisci localhost come Host SOCKS
  7. Inserisci 1234 come porta (la stessa porta specificata nel comando SSH)
  8. Premi OK e Chiudi per chiudere le finestre di dialogo delle preferenze.

    
risposta data Lekensteyn 25.05.2011 - 14:10
fonte
-1

Se si desidera solo tunnelare il traffico TCP dei sistemi, si consiglia di utilizzare un programma chiamato tun2socks. Se vuoi anche tunnelare il traffico UDP devi installare udpgw sul tuo server.

Ecco un tutorial su come installare e utilizzare questi programmi: link

    
risposta data giri 14.05.2014 - 14:55
fonte

Leggi altre domande sui tag