Gyakorlati tanácsok, példák és SSH alagutak

Gyakorlati tanácsok, példák és SSH alagutak
Gyakorlati példák SSH, amelyek új szintre emelik távoli rendszergazda készségeit. A parancsok és tanácsok nemcsak a használatot segítik, SSH, hanem a hálózaton való ügyes navigálást is.

Több trükk ismerete ssh hasznos bármely rendszergazda, hálózati mérnök vagy biztonsági szakember számára.

SSH gyakorlati példák

  1. SSH socks proxy
  2. SSH alagút (porttovábbítás)
  3. SSH alagút a harmadik hostra
  4. Visszafelé SSH alagút
  5. Visszafelé SSH proxy
  6. VPN telepítése SSH-n keresztül
  7. SSH kulcs másolása (ssh-copy-id)
  8. Távoli parancsok végrehajtása (interaktív módon kívül)
  9. Távoli csomagok elkaptása és megtekintés Wireshark segítségével
  10. Helyi mappa másolása távoli szerverre SSH-n keresztül
  11. Távoli GUI alkalmazások SSH X11 továbbítással
  12. Fájlok távoli másolása rsync és SSH segítségével
  13. SSH a Tor hálózaton
  14. SSH EC2 példányhoz
  15. Szöveges fájlok szerkesztése VIM segítségével ssh/scp-n keresztül
  16. Távoli SSH mappa helyi mappaként történő csatlakoztatása SSHFS segítségével
  17. SSH multiplexelés ControlPath segítségével
  18. Videóstreamelés SSH-n keresztül VLC és SFTP segítségével
  19. Kétfaktoros azonosítás
  20. Hostok ugrása SSH és -J használatával
  21. SSH bruteforce kísérletek blokkolása iptables segítségével
  22. SSH Escape porttovábbítás megváltoztatására

Először az alapok

SSH parancssor elemzése

A következő példában gyakori paraméterek használata történik, amelyek távoli szerverhez való csatlakozáskor gyakran előfordulnak SSH.

localhost:~$ ssh -v -p 22 -C neo@remoteserver

  • -v: A hibakeresési információk kimenete különösen hasznos az azonosítási problémák elemzésénél. Többször is használható további információk kinyomtatására.
  • - p 22: a port távoli SSH szerverhez való csatlakozásra. 22-t nem szükséges megadni, mert ez az alapértelmezett érték, de ha a protokoll más porton működik, akkor azt a paraméter segítségével kell megadni. parancsban. A figyelő portot a következő fájlban kell megadni: sshd_config formátumban Port 2222.
  • -C: a kapcsolat tömörítése. Ha lassú csatornája van, vagy sok szöveget néz, ez felgyorsíthatja a kapcsolatot.
  • neo@: A @ jel előtti sor az azonosításhoz használt felhasználónevet jelöli a távoli szerveren. Ha nem adja meg, akkor alapértelmezés szerint az aktuális bejelentkezett fiók felhasználóneve használatos (~$ whoami). A felhasználót a paraméterrel is meg lehet adni. -l.
  • remoteserver: a csatlakoztatott hoszt neve ssh, ez lehet egy teljes domain név, IP-cím vagy bármely hoszt a helyi hosts fájlban. A hoszthoz való csatlakozáshoz, amely támogatja mind az IPv4-et, mind az IPv6-ot, hozzáadhat egy paramétert a parancssorhoz. -4 vagy -6 a megfelelő névszerverezéshez.

Mindezek a paraméterek opcionálisak, kivéve remoteserver.

A konfigurációs fájl használata

Bár sokan ismerik a fájlt, sshd_config, van egy kliens konfigurációs fájl is a parancshoz. sshAz alapértelmezett érték ~/.ssh/config, de definiálható paraméterként az opcióhoz. -F.

Host *
     Port 2222

Host remoteserver
     HostName remoteserver.thematrix.io
     User neo
     Port 2112
     IdentityFile /home/test/.ssh/remoteserver.private_key

A fenti példaként bemutatott ssh konfigurációs fájlban két hosztbejegyzés található. Az első minden hosztot jelent, a Port 2222 konfigurációs paraméter mindenhol érvényes. A második azt mondja, hogy a hoszthoz remoteserver más felhasználónevet, portot, FQDN-t és IdentityFile-t kell használni.

A konfigurációs fájl rengeteg időt takaríthat meg a karakterek beírásában, lehetővé téve, hogy automatikusan alkalmazza a fejlett konfigurációt, amikor konkrét hosztokhoz csatlakozik.

Fájlok másolása SSH-n keresztül SCP-vel

Az SSH kliens két másik rendkívül hasznos eszközt is tartalmaz a fájlok másolására a titkosított ssh kapcsolaton.Az alábbiakban látható a scp és sftp parancsok standard használatának példája. Vegye figyelembe, hogy sok ssh paraméter alkalmazható ezekben a parancsokban is.

localhost:~$ scp mypic.png neo@remoteserver:/media/data/mypic_2.png

Ebben a példában a fájl mypic.png másolt a remoteserver tartalmát a mappába /media/data helyre és átnevezték mypic_2.png.

Ne feledje a port paraméter közötti különbséget. Ezen sokan megbotlanak, akik a scp parancssorból indulnak. Itt a port paraméter -P, nem pedig parancsban, mint az ssh kliensnél! El fogja felejteni, de ne aggódjon, mindenki elfelejti.

Azok számára, akik ismerik a konzolos alkalmazásokat, sok parancs hasonló a ftpsftp-hez. Megteheti aput parancsot, ahogy szíve kívánja. töltés, sftp neo@remoteserver és lsSok esetben a fenti példák különböző módszerekkel is elérhetők. Mint minden

oktatóanyagnál

Gyakorlati példák

és példánál, a gyakorlati példák előnyben részesülnek, amelyek egyszerűen végzik a dolgukat. 1. SSH socks proxy и примерах, предпочтение отдаётся практическим примерам, которые просто делают своё дело.

1. SSH socks-прокси

Az SSH Proxy 1-es funkciója tiszteletteljes okból kifolyólag. Sokkal erősebb, mint sokan feltételezik, és hozzáférést biztosít bármely rendszerhez, amelyhez a távoli szerver hozzáfér. Az SSH kliens egy egyszerű parancs segítségével alagútba tudja helyezni a forgalmat egy SOCKS proxy szerveren keresztül. Fontos megérteni, hogy a távoli rendszerekhez irányuló forgalom a távoli szerverről fog érkezni, ezt fogják rögzíteni a webkiszolgáló naplói.

localhost:~$ ssh -D 8888 user@remoteserver

localhost:~$ netstat -pan | grep 8888
tcp        0      0 127.0.0.1:8888       0.0.0.0:*               LISTEN      23880\/ssh

Itt egy SOCKS proxy-t indítunk a 8888-as TCP porton, a második parancs ellenőrzi, hogy a port aktívan figyel, és várja a kapcsolatokat. A 127.0.0.1 azt jelenti, hogy a szolgáltatás csak a localhost-on fut. Egy kicsit másik parancsot használhatunk, hogy minden interfészen figyeljünk, beleértve az ethernetet vagy a wifi-t, ez lehetővé teszi a többi alkalmazás (böngészők stb.) számára a proxy szolgáltatáshoz való csatlakozást SSH SOCKS proxy-n keresztül.

localhost:~$ ssh -D 0.0.0.0:8888 user@remoteserver

Most beállíthatjuk a böngészőt a SOCKS proxyhoz való csatlakozásra. A Firefox-ban válassza a Beállítások | Alapvető | Hálózati beállítások. Adja meg az IP-címet és a portot a csatlakozáshoz.

Gyakorlati tanácsok, példák és SSH alagutak

Felhívjuk figyelmét a forma alján található opcióra, hogy a böngésző DNS-kérdései is a SOCKS proxy-n keresztül menjenek. Ha a proxy szervert a webforgalom titkosítására használja a helyi hálózaton, akkor biztosan szeretné ezt az opciót választani, hogy a DNS-kérdéseket SSH kapcsolaton keresztül alagutazzák.

SOCKS proxy aktiválása Chrome-ban

Ha a Chrome-ot meghatározott parancssori paraméterekkel indítja, akkor aktiválja a SOCKS proxy-t, és alagutat hoz létre a böngésző DNS-kérdéseihez. Bízzon, de ellenőrizze. Használja tcpdump a DNS-kérdések ellenőrzésére, hogy azok már nem láthatók.

localhost:~$ google-chrome --proxy-server="socks5:\/\/192.168.1.10:8888"

Más alkalmazások használata proxy-vel

Ne feledje, hogy sok más alkalmazás is használhat SOCKS proxy-t. A webböngésző csak a legnépszerűbb ezek közül. Néhány alkalmazásnak vannak konfigurációs lehetőségei a proxy server aktiválásához. Másoknak egy segédprogram segítségével kell segíteni. Például, proxychains lehetővé teszi a Microsoft RDP és mások SOCKS proxy-n keresztül történő indítását.

localhost:~$ proxychains rdesktop $RemoteWindowsServer

A SOCKS proxy konfigurációs beállításai a proxychains konfigurációs fájlban találhatók.

Tipp: Ha Linux-ból Windows-ra távoli munkaasztalt használ? Próbálja meg a kliens FreeRDPEz egy modernebb megvalósítás, mint rdesktop, jóval simább interakcióval.

SSH használata socks proxy-n keresztül

Félreállt a kávézóban vagy a szállodában – és kénytelen használni egy meglehetősen megbízhatatlan WiFi-t. A laptopról lokálisan elindítunk egy ssh proxy-t, és SSH alagutat hozunk létre a hazai hálózatunkhoz egy helyi Raspberry Pi-n. A böngésző vagy más, socks proxy-ra beállított alkalmazások segítségével hozzáférhetünk bármilyen hálózati szolgáltatáshoz a hazai hálózatunkban, vagy csatlakozhatunk az internethez a házi kapcsolaton keresztül. Minden, ami a laptopja és a helyi szerver között (Wi-Fi-n keresztül és az interneten át a házhoz) titkosítva van az SSH alagútban.

2. SSH alagút (port átirányítás)

A legegyszerűbb formában az SSH alagút egyszerűen megnyit egy portot a helyi rendszerében, amely csatlakozik egy másik porthoz az alagút másik végén.

localhost:~$ ssh -L 9999:127.0.0.1:80 user@remoteserver

Bontsuk le a paramétert -L. Ezt a lokális oldali hallgatásként lehet elképzelni. Így a fenti példában a 9999-es portot a localhost oldalán hallgatják, és a remoteserver 80-as portjára irányítják. Vegye figyelembe, hogy a 127.0.0.1 a távoli szerver localhost-ra utal!

Lépjünk egy lépcsőfokkal feljebb. A következő példában a hallgató portok más helyi hálózati csomópontokkal vannak összekapcsolva.

localhost:~$ ssh -L 0.0.0.0:9999:127.0.0.1:80 user@remoteserver

Ezekben a példákban a webkiszolgáló portjára kapcsolódunk, de ez lehet proxy vagy bármely más TCP szolgáltatás is.

3. SSH alagút egy külső hosztra

Ugyanezeket a paramétereket használhatjuk az alagút csatlakoztatására egy távoli szerverről egy másik rendszeren futó szolgáltatáshoz.

localhost:~$ ssh -L 0.0.0.0:9999:10.10.10.10:80 user@remoteserver

Ebben a példában az alagutat a remoteserver-től irányítjuk a 10.10.10.10-en futó webkiszolgálóhoz. A forgalom a remoteserver-ből a 10.10.10.10-hez már nem SSH alagútban. A 10.10.10.10-en lévő webkiszolgáló a remoteserver-t webkérések forrásának fogja tekinteni.

4. Visszafelé SSH alagút

Itt egy hallgató portot állítunk be a távoli szerveren, amely visszakapcsolódik a lokális portunkhoz a localhost-on (vagy egy másik rendszeren).

localhost:~$ ssh -v -R 0.0.0.0:1999:127.0.0.1:902 192.168.1.100 user@remoteserver

Ebben az SSH munkamenetben egy kapcsolat jön létre a 1999-es portról a remoteserver-en a 902-es portra a helyi kliensünkön.

5. Visszafelé SSH proxy

Ebben az esetben socks proxyt állítunk be az ssh kapcsolatunkon, azonban a proxy a szerver távoli végén hallgat. A távoli proxyhoz való kapcsolódás most a csatornából a localhostunkról származó forgalomként jelenik meg.

localhost:~$ ssh -v -R 0.0.0.0:1999 192.168.1.100 user@remoteserver

Hibaelhárítás távoli SSH alagutakkal

Ha problémái vannak a távoli SSH opciók működésével, ellenőrizze a netstat, hogy milyen interfészekhez csatlakozik a hallgató port. Bár a példákban 0.0.0.0-ot adtunk meg, de ha az érték GatewayPorts be. sshd_config az alábbi értékre van állítva nem, akkor a hallgató csak a localhost (127.0.0.1) címhez lesz kötve.

Biztonsági figyelmeztetés

Kérjük, vegye figyelembe, hogy alagutak és socks proxyk nyitásakor a belső hálózati erőforrások elérhetők lehetnek megbízhatatlan hálózatok (például az internet) számára! Ez komoly biztonsági fenyegetést jelenthet, ezért győződjön meg róla, hogy tudja, mi a hallgató és milyen hozzáférése van.

6. VPN telepítése SSH-n keresztül

A támadási módszerekkel foglalkozó szakemberek (penetrációs tesztelők stb.) között a köznyelvi kifejezés a "hálózati támaszpont". Miután egy rendszerben kapcsolatot létesítettek, ez a rendszer átjáróként szolgál a hálózat további eléréséhez. A támaszpont lehetővé teszi a kibővülést.

Ilyen támaszponthoz SSH proxyt használhatunk, és proxychains, de vannak bizonyos korlátozások. Például nem tudunk közvetlenül socketekkel dolgozni, így nem tudunk portokat bejárni a hálózaton keresztül Nmap SYN.

Ezzel a fejlettebb VPN verzióval a kapcsolat a 3-as szintre. Ezután egyszerűen irányíthatjuk a forgalmat a csatornán, a szokásos hálózati útválasztással.

A módszer a ssh, iptables, tun interfészeket és az útválasztást használja.

Először ezeket a beállításokat kell megadni a sshd_config. Mivel a távoli és a kliens rendszer interfészeiben változtatásokat végzünk, nekünk root jogokra van szükségünk mindkét oldalon.

PermitRootLogin yes
PermitTunnel yes

Ezután ssh kapcsolatot létesítünk, a tun eszközök inicializálását kérő paraméterrel.

localhost:~# ssh -v -w any root@remoteserver

Most már tun eszköznek kell megjelennie az interfészek listájában (# ip a). A következő lépés az IP-címek hozzáadása az alagúti interfészekhez.

SSH kliens oldala:

localhost:~# ip addr add 10.10.10.2/32 peer 10.10.10.10 dev tun0
localhost:~# ip tun0 up

SSH szerver oldala:

remoteserver:~# ip addr add 10.10.10.10/32 peer 10.10.10.2 dev tun0
remoteserver:~# ip tun0 up

Most közvetlen útvonalunk van egy másik hoszthoz (route -n és ping 10.10.10.10).

Bármilyen alhálózatot át lehet irányítani a másik oldali hoszton.

localhost:~# route add -net 10.10.10.0 netmask 255.255.255.0 dev tun0

A távoli oldalon be kell kapcsolni ip_forward és iptables.

remoteserver:~# echo 1 > /proc/sys/net/ipv4/ip_forward
remoteserver:~# iptables -t nat -A POSTROUTING -s 10.10.10.2 -o enp7s0 -j MASQUERADE

Bumm! VPN SSH alagúton keresztül a 3. szintű hálózaton. Ez már győzelem.

Ha problémák merülnek fel, használja tcpdump és ping, hogy kiderítse az okát. Mivel mi a 3. szinten játszunk, a csomagjaink icmp-ez ezen az alagúton fognak menni.

7. SSH kulcs másolása (ssh-copy-id)

Itt több módszer is létezik, de ez a parancs időt takarít meg, hogy ne kelljen manuálisan másolni a fájlokat. Egyszerűen átmásolja ~/.ssh/id_rsa.pub (vagy az alapértelmezett kulcs) az Ön rendszeréből ~/.ssh/authorized_keys a távoli szerveren.

localhost:~$ ssh-copy-id user@remoteserver

8. Távoli parancsok végrehajtása (interaktív módon kívül)

A parancsot ssh összekapcsolódhat más parancsokkal az általános kényelmes felhasználói felülethez. Egyszerűen adja hozzá a távoli hoszton futtatni kívánt parancsot az idézőjelek közé az utolsó paraméterként.

localhost:~$ ssh remoteserver "cat /var/log/nginx/access.log" | grep badstuff.php

Ebben a példában grep a helyi rendszeren hajtódik végre, miután a napló átkonvertálódott az ssh-hálózaton. Ha a fájl nagy, célszerű a grep távoli oldalon futtatni, egyszerűen mindkét parancsot dupla idézőjelek közé zárva.

Egy másik példa ugyanezt a funkciót hajtja végre, mint a ssh-copy-id a 7. példából.

localhost:~$ cat ~/.ssh/id_rsa.pub | ssh remoteserver 'cat >> .ssh/authorized_keys'

9. Távoli csomagok elfogása és elemzés Wireshark-kal

Vettünk egyet a mi példáink közül a tcpdump-ból.Használja ezt távoli csomagok elfogására az eredmény megjelenítésére a helyi Wireshark GUI-jában.

:~$ ssh root@remoteserver 'tcpdump -c 1000 -nn -w - not port 22' | wireshark -k -i -

10. Helyi mappa másolása távoli szerverre SSH segítségével

Szép trükk, amely a mappát tömöríti a bzip2 (ez a -j paraméter a parancsban tar), majd a kimenetet az bzip2 másik oldalon kicsomagolja, így a távoli szerveren egy másolatot hoz létre a mappáról.

localhost:~$ tar -cvj /datafolder | ssh remoteserver "tar -xj -C /datafolder"

11. Távoli GUI alkalmazások SSH X11 átirányítással

Ha a kliens és a távoli szerver is rendelkezik 'X'-ekkel, akkor távolról hajthat végre GUI parancsot, amelynek ablaka a helyi asztalon jelenik meg. Ez a funkció régóta létezik, de még mindig nagyon hasznos. Indítson el egy távoli webböngészőt, vagy akár VMWare Workstation konzolt is, ahogyan ebben a példában teszem.

localhost:~$ ssh -X remoteserver vmware

Szükséges egy sor X11Forwarding yes a fájlban sshd_config.

12. Fájlok távoli másolása rsync és SSH segítségével

rsync sokkal kényelmesebb scp, ha időszakos biztonsági másolatok készítésére van szükség egy mappáról, nagy fájlok vagy nagyon nagy fájlok tömegéről. Van egy hibahelyreállítási funkciója az átvitel során, és csak a módosított fájlokat másolja, így megtakarítva a forgalmat és az időt.

Ebben a példában tömörítést gzip (-z) és archiválási módot (-a) használunk, ami rekurzív másolást is tartalmaz.

:~$ rsync -az /home/testuser/data remoteserver:backup/

13. SSH Tor hálózaton keresztül

A Tor anonim hálózat SSH forgalmat alagútba tud tolni a következő parancs segítségével: torsocks. A következő parancs SSH proxyt fog alagútba tolni a Tora.

localhost:~$ torsocks ssh myuntracableuser@remoteserver

Torsocks a localhost 9050-es portját használja proxyként. Mint mindig Tor használatakor, komolyan ellenőrizni kell, hogy milyen forgalom kerül alagútba, és egyéb információbiztonsági (opsec) problémákat. Hová mennek a DNS-kérelmeid?

14. SSH csatlakozás egy EC2 példányhoz

Az EC2 példányhoz való csatlakozáshoz szükség van egy zárt kulcsra. Töltsd le (a kiterjesztése .pem) az Amazon EC2 vezérlőpultjáról, és módosítsd a jogosultságokat (chmod 400 my-ec2-ssh-key.pem). Tartsd a kulcsot biztonságos helyen, vagy helyezd el a mappádban ~/ .ssh/.

localhost:~$ ssh -i ~/ .ssh/ my-ec2-key.pem ubuntu@my-ec2-public

A parameter -i csak azt jelzi az ssh kliensnek, hogy ezt a kulcsot használja. A fájl ~/.ssh/config tökéletes az automatikus kulcs használatának beállítására az EC2 hoszthoz való csatlakozáskor.

Host my-ec2-public
   Hostname ec2???.compute-1.amazonaws.com
   User ubuntu
   IdentityFile ~/ .ssh/ my-ec2-key.pem

15. Szöveges fájlok szerkesztése VIM segítségével ssh/scp-n keresztül

Minden kedvelőnek vim-ben. ez a tanács egy kis időt takarít meg. SCP segítségével vim-ben. fájlokat lehet szerkeszteni egy parancsban. Ez a módszer egyszerűen létrehoz egy fájlt helyben /tmp, majd visszamásolja, amint elmentettük a vim-ben..

localhost:~$ vim scp://user@remoteserver//etc/hosts

Megjegyzés: A formátum kissé eltér a megszokottól. scpA gazdagép után dupla //. Ez egy abszolút útvonal hivatkozása. Egy perjel a felhasználói mappa relatív útját fogja jelenteni. Miután megállapítottuk, hogy ki küldte a kérést, meg kell határoznunk, hogy az adott alanynak mit engedélyeztek. Egyes szolgáltatásrácsok lehetővé teszik alapvető irányelvek (arról, hogy ki mit tehet) megadását YAML-fájlok formájában vagy parancssoron, míg mások integrációt kínálnak olyan keretrendszerekkel, mint az.

**warning** (netrw) cannot determine method (format: protocol://[user@]hostname[:port]/[path])

Ha ilyet látsz, ellenőrizd le a parancs formátumát. Ez általában szintaktikai hibára utal.

16. Távoli SSH csatlakoztatása lokális mappaként SSHFS segítségével

Segítségével sshfs — fájlrendszer kliens ssh — lehetővé teszi, hogy az lokális mappát egy távoli helyhez csatlakoztassuk, minden fájlinterakció titkosított munkamenetben zajlik. ssh.

localhost:~$ apt install sshfs

Ubuntu és Debian rendszeren telepítjük a csomagot sshfs, majd egyszerűen csatlakoztatjuk a távoli elérési útvonalat a rendszerünkhöz.

localhost:~$ sshfs user@remoteserver:/media/data ~/data/

17. SSH multiplexelés ControlPath segítségével

Alapértelmezés szerint, ha már létezik egy kapcsolat a távoli szerverrel ssh második kapcsolat létesítésével ssh vagy scp új munkamenetet állít fel további hitelesítéssel. A ControlPath lehetővé teszi a meglévő munkamenet használatát az összes további kapcsolat esetén. Ez jelentősen felgyorsítja a folyamatot: a hatás még a helyi hálózaton is érezhető, nemhogy távoli erőforrásokhoz való csatlakozáskor.

Host remoteserver
        HostName remoteserver.example.org
        ControlMaster auto
        ControlPath ~/.ssh/control/%r@%h:%p
        ControlPersist 10m

A ControlPath megadja a socketet az új kapcsolatok számára, hogy ellenőrizzék, van-e aktív munkamenet. sshAz utolsó opció azt jelenti, hogy akár a konzolból való kijelentkezés után is a meglévő munkamenet 10 percig nyitva marad, így ebben az időszakban újra csatlakozhat a meglévő sockethez. További információért lásd a kézikönyvet ssh_config man.

18. Streaming videó SSH-n keresztül VLC és SFTP segítségével

Még a régóta használók is ssh és vlc (Video Lan Client) nem mindig tudnak erről a kényelmes lehetőségről, amikor nagyon szükséges videót nézni a hálózaton. A beállításokban File | Open Network Stream programok vlc be lehet írni a helyet mint sftp://. Ha jelszó szükséges, megjelenik egy kérés.

sftp://remoteserver//media/uploads/myvideo.mkv

19. Kétfaktoros hitelesítés

A kétfaktoros hitelesítés, amely a banki fiókjához vagy a Google-fiókjához hasonlóan működik, alkalmazható az SSH szolgáltatásra.

Természetesen, ssh eredetileg kétfaktoros hitelesítést kínál, amely alatt a jelszót és az SSH kulcsot értjük. A hardveres token vagy a Google Authenticator alkalmazás előnye, hogy általában ez egy másik fizikai eszköz.

Lásd 8 perces útmutatónkat a Google Authenticator és SSH használatáról.

20. Hostok közötti ugrások ssh és -J segítségével

Ha a hálózat szegmentálása miatt át kell ugrani több ssh hoston, hogy elérjük a végső célhálózatot, a -J parancs időt takarít meg.

localhost:~$ ssh -J host1,host2,host3 user@host4.internal

Itt fontos megérteni, hogy ez nem azonos a parancsra ssh host1, majd user@host1:~$ ssh host2 A port parameter -J cleverly uses redirection to establish a session from localhost to the next host in the chain. Thus, in the above example, our localhost authenticates to host4. This means we use our localhost keys, and the session from localhost to host4 is fully encrypted.

For such a possibility in ssh_config specify the configuration option ProxyJump. If you often have to jump through several hosts, automation through the config will save a lot of time.

21. Blocking SSH brute-force attempts with iptables

Anyone who has managed an SSH service and viewed logs knows about the number of brute-force attempts that occur every hour, every day. A quick way to reduce the noise in the logs is to move SSH to a non-standard port. Make changes to the file sshd_config using the configuration parameter Port##.

A segítségével iptables You can also easily block connection attempts to the port after reaching a certain threshold. A simple way to do this is to use OSSEC, as it not only blocks SSH but also implements a bunch of other intrusion detection measures based on the host name (HIDS).

22. SSH Escape for changing port redirection

And our last example ssh is intended for changing port redirection on the fly within an existing session. sshImagine such a scenario. You are deep in the network; perhaps you jumped through half a dozen hosts and need a local port on your workstation that is redirected to Microsoft SMB of the old Windows 2003 system (remember ms08-67?).

By pressing enter, try typing in the console ~C. This is a control sequence in the session that allows you to make changes to the existing connection.

localhost:~$ ~C
ssh> -h
Commands:
      -L[bind_address:]port:host:hostport    Request local forward
      -R[bind_address:]port:host:hostport    Request remote forward
      -D[bind_address:]port                  Request dynamic forward
      -KL[bind_address:]port                 Cancel local forward
      -KR[bind_address:]port                 Cancel remote forward
      -KD[bind_address:]port                 Cancel dynamic forward
ssh> -L 1445:remote-win2k3:445
Forwarding port.

Here you can see that we have redirected our local port 1445 to the Windows 2003 host that we found in the internal network. Now just run msfconsole, and you can proceed (assuming you plan to use this host).

Befejezés

These examples, tips, and commands ssh ki kellene adni a kiindulópontot; további információk minden egyes csapatról és lehetőségről a súgóoldalakon érhetők el (man ssh, man ssh_config, mindig lenyűgözött, hogy bármikor és bárhol hozzáférhetek a rendszerekhez és parancsokat futtathatok. A képességeim fejlesztésével olyan eszközök segítségével, mint a).

hatékonyabbá válik bármely játékban, amelyet játszik. ssh 🥇Gyakorlati tippek, példák és SSH alagút | ProHoster

Forrás: habr.com

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster