Det er hovedsakelig to typer videresending av SSH-porter. Lokal port videresending og ekstern port videresending.
I denne artikkelen vil jeg vise deg hvordan du gjør portoverføring på Linux. For å følge denne artikkelen må du ha SSH-verktøy installert på Linux-maskinen din. Jeg vil vise deg hvordan du gjør det, ikke bekymre deg. La oss komme i gang.
Installere SSH-verktøy på Red Hat Enterprise Linux (RHEL) 7 og CentOS 7
På RHEL 7 og CentOS 7 kan du installere SSH-verktøy med følgende kommando:
$ sudo yum installerer openssh-klienter openssh-server
trykk y og trykk deretter på
SSH Utilities bør installeres.
Installere SSH-verktøy på Ubuntu, Debian og annen Ubuntu / Debian-basert distribusjon
På Ubuntu, Debian, Linux Mint og andre distribusjoner basert på operativsystemet Ubuntu / Debian, kjør følgende kommando for å installere SSH-verktøy:
$ sudo apt-get install openssh-client openssh-server
Trykk nå y og trykk deretter på
SSH Utilities bør installeres.
Installere SSH-verktøy på Arch Linux
Hvis du bruker Arch Linux, kjører du følgende kommando for å installere SSH-verktøy:
$ sudo pacman -Sy openssh
Trykk nå y og trykk deretter på
SSH-verktøy bør installeres.
På Arch Linux startes ikke SSH-server som standard. Du må starte den manuelt med følgende kommando:
$ sudo systemctl start sshd
Legg nå SSH-server til systemoppstarten, slik at den starter automatisk når systemet starter:
$ sudo systemctl aktiver sshd
Lokal portvideresending
Lokal portvideresending brukes til å videresende en port på en ekstern server på en annen port på en lokal datamaskin. Et eksempel vil hjelpe deg å forstå hva jeg mener.
La oss si at du har en server, server1 som har en IP-adresse på 192.168.199.153. server1 har en webserver som kjører. Selvfølgelig hvis du er koblet til samme nettverk som serveren server1, så kan du skrive inn IP-adressen i nettleseren og koble til server1 fra datamaskinen. Men hva om du vil få tilgang til det som om tjenesten kjører på datamaskinen din på en eller annen port? Vel, det er det lokale portvideresending gjør.
Som du kan se på skjermbildet nedenfor, har jeg tilgang til webserveren på server1 bruker IP-adressen:
Kjør nå følgende kommando fra din lokale datamaskin for å videresende port 80 (http) til port 6900 (la oss si) til din lokale datamaskin:
$ ssh -L 6900: 192.168.199.153: 80 lokal vert
Skriv inn ja og trykk deretter på
Skriv inn passordet til den lokale datamaskinen og trykk på
Du er koblet sammen.
Nå kan du få tilgang til webserveren du gjorde før som http: // localhost: 6900 som du kan se på skjermbildet nedenfor.
Ekstern videresending av port
Ekstern portvideresending er videresending av en port på en lokal server / datamaskin til en ekstern server. Så selv om den lokale serveren / datamaskinen ikke har IP-adresse som kan rutes via Internett, kan du fortsatt koble til den ved hjelp av den eksterne server-IP-en og den videresendte porten.
La oss si at du vil koble til webserveren til din lokale datamaskin fra internett. Men den har ikke en internett-rutbar IP-adresse. Du kan bruke en ekstern (for eksempel VPS) server som er tilgjengelig fra internett og gjøre ekstern portvideresending med den. Jeg har ikke VPS. La oss bare anta server1 er den eksterne serveren.
Konfigurer først server1 serveren slik at viderekoblede porter kan nås via internett.
For å gjøre det, rediger / etc / sshd_config med følgende kommando:
$ sudo nano / etc / sshd_config
Du ser følgende vindu.
Rull ned og finn GatewayPorts som markert i skjermbildet nedenfor.
Nå kommenter det og sett det til ja som markert i skjermbildet nedenfor.
Trykk nå
Start deretter SSH-serveren på nytt server1 med følgende kommando:
$ sudo systemctl start sshd på nytt
På min lokale datamaskin kjører en webserver som du kan se på skjermbildet nedenfor.
Nå kan du kjøre følgende kommando fra den lokale datamaskinen for å videresende port 80 (http) av din lokale datamaskin til port 9999 på den eksterne serveren server1 som har IP-adresse 192.168.199.153:
$ ssh -R 9999: localhost: 80 192.168.199.153
Skriv inn ja og trykk
Skriv inn passordet til den eksterne serveren server1.
Du er koblet sammen.
Som du kan se fra skjermbildet nedenfor, kan jeg koble til porten 9999 på den eksterne serveren min server1 og få tilgang til min lokale webserver.
Jeg kan også koble til webserveren min ved hjelp av IP-adressen til den eksterne serveren server1 og den videresendte havnen 9999 fra andre datamaskiner i nettverket mitt som du kan se fra skjermbildet nedenfor.
Slik gjør du SSH-port videresending på Linux. Takk for at du leser denne artikkelen.