Sshuttle

From ICO wiki
Jump to navigationJump to search

Sissejuhatus

sshuttle on programm mis käitub kui läbipaistev proxy (ingl. transparent proxy) ja VPN klient.


Programm on sobiv juhul kui[1]:

- Klientmasin töötab Linux, FreeBSD või MacOS operatsioonisüsteemil.

- Teisse võrku on SSH ligipääs, kusjuures see ei pea olema admin õigustega.

- Kasutaja ei taha või ei saa teha võrgus pordisuunamisi.

Nõuded

Klient

sudo või root ligipääs masinale;

Python 2.7 või Python 3.5[2].


Server

Python 2.7 või Python 3.5.

Paigaldamine

  • APT:
sudo apt-get update && sudo apt-get -y install sshuttle && sudo apt-get clean


  • PyPI:
sudo pip install sshuttle


  • Kloonimine Git'ist:
git clone https://github.com/sshuttle/sshuttle.git
sudo ./setup.py install


  • Sshuttle paigaldamine macOS'is:
brew install sshuttle

Kasutamine

Peale edukat paigaldust saab hakata programmi kasutama.

Ühendumiseks serverisse ning kogu kliendi liikluse suunamine sellesse[3]:

sshuttle --dns -r kasutajanimi@sshserver 0.0.0.0/0

--dns - saada DNS päringud läbi serveri;

-r - näitab, et edasi tuleb serveri kasutaja ja aadress;

0.0.0.0/0 - suuna kogu liiklus läbi serveri. Lühendina võib kasutada 0/0.


Võidakse küsida klientmasina root parooli, et saada sudo õigused ja seejärel SSH serveri kasutaja parooli.


Alias

Kiiremaks ühendamiseks võib luua süsteemi vastava aliase.

Ubuntu näitel lisa ~/.bash_aliases faili rida:

alias aliase_nimi='sshuttle --dns -r kasutajanimi@sshserver 0.0.0.0/0'

Muudetud aliaste fail lugeda uuesti sisse source ~/.bash_aliases ning sisesta vastloodud alias käsuna.

Näide koos võtmefaili kasutamisega:

alias vpn='sudo sshuttle --dns -Nvr user@server 0.0.0.0/0 -e "ssh -i /full/path/.ssh/key user@server"'

Autor

Vahur Lepvalts

AK21

Täiendanud: Edmund Laugasson, EIK õppejõud

Kasutatud materjal