Com crear un túnel SSH entre un servidor Linux i un client Windows

La idea de construir un túnel SSH és xifrar totes les connexions (sense importar, per exemple, si entres a una pàgina https o http) i connectar-nos a Internet a través d'un canal segur. Aquest canal «segur» no és altra cosa que un servidor configurat a aquest efecte. Aquest servidor podria trobar-se, per exemple, a casa teva.


La «desavantatge» d'aquest mètode és que sempre has de tenir aquesta màquina encesa i configurada correctament perquè funcioni com a servidor SSH però et permet millorar substancialment la seguretat de la teva connexió i fins i tot evadir les restriccions de connexió imposades pels administradors de la xarxa ( per exemple, la de la teva feina).

T'escolto preguntar: això realment em pot servir? Bé, suposem el següent escenari: estàs en un cibercafè o en un restaurant amb wifi lliure i necessiteu realitzar una transferència bancària o una altra operació important. Per descomptat, sempre es recomana realitzar aquest tipus de transaccions en un ambient segur. No obstant això, hi ha una solució: un túnel SSH. D'aquesta manera, podem connectar-nos a Internet a través del nostre servidor «segur».

Aquest mètode també és útil per evadir les restriccions imposades a les connexions de molts ambients de treball. ¿No pots accedir a Youtube des de la feina? Bé, un túnel SSH pot ser la solució, ja que totes les sol·licituds es realitzaran a través del teu servidor «segur». En altres paraules, al no estar bloquejada la IP del teu servidor segur (si, en canvi, la de Youtube) podràs «evadir» aquesta restricció (no poder accedir a Youtube) ja que per l'administrador de la xarxa de la teva empresa la teva màquina només va estar conversant amb el teu servidor «segur» i no té idea que a través d'ell vós en realitat estàs navegant per un munt de pàgines.

En aquest tutorial anem a explicar el cas «típic»: servidor Linux, client Windows.

Configura el servidor Linux

1.- Instal·lar el servidor SSH. Per a això, vaig obrir un terminal i executa:

En Ubuntu:

suo apt-get install openssh-server

En Arc:

Pacman -S openssh

En Fedora:

yum -i install openssh-server

Fet. Ja podràs accedir a l'(servidor SSH) Ubuntu amb un client SSH.

2.- Un cop instal·lat, és útil revisar l'arxiu de configuració:

sudo nano / etc / ssh / sshd_config

Des d'aquest arxiu podràs configurar el teu servidor SSH a gust. La meva recomanació és modificar tot just 2 paràmetres: port i allowusers.

Per evitar possibles atacs és recomanable canviar el port que utilitzarà SSH. Per defecte ve amb el valor 22, pots triar un altre que més et convingui (a l'efecte d'aquest tutorial triem el 443 però pot ser qualsevol altre).

El paràmetre Allowusers permet restringir l'accés per usuari i, opcionalment, l'amfitrió des del qual pot connectar-se. El següent exemple restringeix l'accés cap al servidor SSH perquè només puguin fer-ho els usuaris en tal i tal altre des dels amfitrions 10.1.1.1 i 10.2.2.1.

AllowUsers fulano@10.1.1.1 mengano@10.1.1.1 fulano@10.2.2.1 mengano@10.2.2.1

Configura el router

En cas que el teu servidor es trobi darrere d'un router, cal configurar aquest últim perquè no bloquegi les connexions entrants. Més específicament, cal configurar.

Abans d'anar a l'gra i mostrar la configuració necessària em sembla prudent explicar una mica en què consisteix el port-forwarding.

Suposem que tens una xarxa local de 3 màquines, totes elles darrere d'un router. Com fa una connexió entrant (SSH, com seria el nostre cas) per comunicar-se amb la màquina 1 de la nostra xarxa local? No t'oblidis que «des de fora» les 3 màquines, si bé tenen IPs locals, comparteixen un únic IP públic a través d'el qual es connecten a Internet.

La solució a el problema abans esmentat és el port-forwarding. D'aquesta manera, quan es rebin connexions entrants a port X del nostre IP públic, el router ho va a derivar a la màquina que correspongui. D'aquesta manera sempre que ens connectem mitjançant aquest port, sabem que el router ens va a redirigir (d'aquí port-forwarding) a la màquina que correspongui. Tot això, òbviament, cal configurar-lo en el router.

La configuració de l'port-forwarding varia una mica d'acord a l'router que estiguis utilitzant. El més pràctic és visitar portforward.com, Triar el model de router que estiguis utilitzant i seguir els passos que allà es descriuen.

Configura el client Windows

Per connectar-nos des de Windows resulta pràctic utilitzar com a client SSH l'eina PuTTY.

1.- El primer pas és descarregar PuTTY

Com es pot veure a la pàgina de descàrregues de PuTTY, hi ha diverses versions disponibles. Recomano descarregar la versió portable de el programa: putty.exe. L'avantatge de triar la versió portable és que pots portar-la sempre amb vós en un pendrive i executar el programa des de qualsevol ordinador, siguis on siguis.

2.- Vaig obrir PuTTY i especifica l'IP (públic) i el port de servidor a què haurà de connectar-se el client SSH. Com esbrinar l'IP públic del teu servidor? Fàcil, només cal googlejar «quina es la seva ip pública» per trobar milers de pàgines que ofereixen aquest servei.

3.- En cas que el «client» es trobi darrere d'un proxy, no t'oblidis de configurar correctament. En cas que no sàpigues ben bé què dades ingressar, vaig obrir Internet Explorer i ingressa a Eines> Connexions> Configuració de LAN> Avançades. Còpia i pega les dades que apareixen aquí en PuTTY, com es veu en la imatge que apareix a continuació. En alguns casos, és possible que hagis de introduir un nom d'usuari i contrasenya.

4.- Manca introduir les dades de l'port-forwarding «local» per construir el túnel SSH. Accedeix a Conection> SSH> Tunnels. Aquí la idea és la següent, hem de dir-li a PuTTY quines connexions ha de «desviar» cap al nostre servidor segur. Per a això, hem de triar un port.

La meva recomanació, especialment si la màquina es troba darrere d'un proxy és que escullis el port 443 ja que és l'utilitzat per SSL per realitzar connexions segures, el que dificultarà a l'administrador la tasca de descobrir el que estàs fent. El port 8080, en canvi, és l'utilitzat per HTTP (que no és una connexió «segura») de manera que un administrador de xarxa experimentat pot arribar a sospitar i fins i tot és possible que hi hagi bloquejat el port per a un altre tipus de connexions.

En Destination, volve a ingressar l'IP de servidor segur, seguit de dos punts i el port que hagis obert el punt titulat «Configura el router» i en l'arxiu ~ / .ssh / config. Per exemple, 192.243.231.553:443.

Selecciona Dynamic (el que crearà una connexió SOCKS, que utilitzarem en el punt següent) i cliqueu a Add.

5.- Volve a la pantalla principal de PuTTY, cliqueu a Save i després a Open. La primera vegada que et connectis a servidor sortirà un missatge d'alerta com el que apareix a continuació:

6.- Després, et demanarà el nom d'usuari i contrasenya amb accés a servidor.

Si tot va anar bé, un cop realitzat el login, hauries veure alguna cosa com el que es veu a continuació ...

7.- Finalment, sense tancar PuTTY, vaig obrir i configura Firefox (o el teu navegador favorit) perquè es connecti a Internet a través de PuTTY.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   Jose Daniel Rodriguez va dir

    una pregunta al pas 6 qual usurio i qual contasenya he de posar

  2.   jose va dir

    excel·lent, pot provar configurar amb el de casa meva

  3.   Al va dir

    per accedir a internet des de casa meva:
    connexió d'accés telefònic per mòdem 56k,
    executar un fitxer .bat que té aquesta configuració:
    @Echo Off
    C:
    Cd C: \ Windows
    putty -N -C -D 1080 -P 443 -ssh user@00.00.000.000 -pw pass
    Sortida
    i que està relacionat amb el putty el qual està configurat d'aquesta
    forma: en options controlling servidor intermediari usage el poso a http, a intermediari
    hostname poso el meu servidor intermediari i el port 3128 i en username and password
    poso la meva dades deixant tota la resta sense tocar i salvant aquesta
    configuració XNUMX priemra vegada com default settings
    i per poder usar mozilla, yahoo messenger, etc, he de proxificar
    les aplicacions amb el proxifier versió 3 configurat d'aquesta manera:
    en proxy server amb l'adreça 127.0.0.1 port 1080 sock versio 5,
    en proxification rules afegeixo l'aplicació putty i en actions li poso
    direct, perquè tots els programes surtin a través d'aquest.
    necessito saber com puc aconseguir-ho en la meva telèfon amb android que
    connecto al meu pc a través de l'Connectify i aquest comparteix la meva conecxion de
    accés telefònic. necessito tutorial i apks que em resolguin aquest
    dilema. salutacions i gràcies per endavant

  4.   Clint Eastwood va dir

    Va faltar explicar com el servidor SSH va màgicament a atendre les comandes HTTP que el client faci ... fluixet el tutorial ...

    1.    Errol Flynn va dir

      Equivocat Clint Eastwood.

      Amb el que s'ha explicat en el tutorial, «màgicament», funciona !.

      Per res fluixet, mes aviat diria just i concret.

      Molt ben explicat per als no experimentats.

      Salutacions

      1.    usemoslinux va dir

        Que bo que t'hagi servit! Una abraçada! Pau.

  5.   DumasLinux va dir

    Funciona molt bé.

    Com a continuació, túnel SSH amb WinSCP:

    http://www.sysadmit.com/2014/05/linux-tuneles-ssh-con-winscp.html

  6.   JEAMPIERRE ZAMBRANO-COVA va dir

    genial molt ben explicat 5 * gràcies

  7.   Rodrigo va dir

    Una pregunta ...
    ¿I si el que vull és un túnel entre dues màquines amb Linux ?. Tinc la següent situació: En el meu treball estem trastejant amb un pc, volem provar un programari de vídeo conferència, de manera que vam haver de instal·lar un servidor en pc avandonado. El problema és que a l'instal·lar el programari (bigbluebutton) la instal·lació falla ... vam descobrir que el problema està en què s'està bloquejant la descàrrega d'un component de la instal·lació (a tot això no sóc informàtic, sóc professor en constant aprenentatge) ...
    Com l'Empresa és gran les possibilitats que ens ajudin des de xarxes és menys que nul·la ...
    Llavors, estava pensant en connectar al servidor (ubuntu server) per mitjà d'un túnel ssh amb el pc de casa meva (que té ubuntu) i després instal·lar el programari ...
    És possible? Em ajuden?

  8.   en ratxa va dir

    Hola bon, tinc una consulta, vull connectar-me a una aplicació que tinc al meu servidor Debian que aquesta en un màquina virtual, la qual la tinc muntada en Windows i vull accedir des d'una altra xarxa a aquesta aplicació, allguien em guia per favor.

  9.   anònia va dir

    Com Instal·lar i Configurar un Servidor SSH
    https://www.youtube.com/watch?v=iY536vDtNdQ

  10.   Tosko va dir

    Hola bona, tinc una qüestió que m'està fastiguejant bastant i he decidit passar a consultar a la comunitat .. doncs aquí estic, a veure si em podeu ajudar .. Sóc «nou» en el món de la virtualització, linux.

    El cas és el següent he instal·lat una màquina virtual amb linux server 14.04.5 LTS, he configurat la xarxa en Vbox com «adaptador pont» seleccionant el meu adaptador de xarxa. Un cop dins del meu servidor, he instal·lat diverses cosetes, és a dir, tinc connexió a internet .. entre aquestes cosetes he instal·lat el servei SSH, deixant per defecte el port 22 i el servei ftp «vsftpd».

    A l'consultar la comanda «ifconfig» em respon:
    Link encap: Ethernet direcciónHW 08: 00: 27: d5: 2c: 88
    Direcció. inet: 192.168.0.13 Difus.:192.168.0.255 Masc: 255.255.255.0
    ......

    Ara, per connectar-me des del meu ordinador (Windows 10) amb Putty al meu servidor virtual mitjançant ssh (port 22) utilitzo la ip «192.168.0.13», i el mateix amb el FTP, però si vull que un amic des de casa es connecti al meu servidor ja sigui via SSH o FTP se'ns fa impossible utilitzant la ip que jo utilitzo en el meu ordinador.

    M'agradaria saber a què es deu això, ja que la ip «192.168.0.13» crec que funciona a nivell local, és a dir, He configurar alguna cosa més, modificar / etc / network / interfaces, modificar alguna cosa en iptables?
    Doncs vull que el meu servidor treballi com una ip pública a la qual qualsevol es pugui connectar tenint els accessos ..

    Gràcies per endavant!