Gyakorlati tippek, példák és SSH alagutak

Gyakorlati tippek, példák és SSH alagutak
Gyakorlati példák SSH, amely távoli rendszergazdai képességeit új szintre emeli. A parancsok és tippek nemcsak a használatban segítenek SSH, hanem hozzáértőbben navigálhat a hálózaton.

Ismerve néhány trükköt ssh hasznos bármely rendszergazdának, hálózati mérnöknek vagy biztonsági szakembernek.

Gyakorlati SSH példák

  1. SSH zokni proxy
  2. SSH alagút (port továbbítás)
  3. SSH alagút a harmadik gazdagéphez
  4. Fordított SSH alagút
  5. SSH fordított proxy
  6. VPN telepítése SSH-n keresztül
  7. SSH-kulcs másolása (ssh-copy-id)
  8. Távoli parancsvégrehajtás (nem interaktív)
  9. Távoli csomagrögzítés és megtekintés a Wiresharkban
  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. Távoli fájlmásolás rsync és SSH használatával
  13. SSH Tor hálózaton keresztül
  14. SSH EC2 példányra
  15. Szövegfájlok szerkesztése VIM használatával ssh/scp-n keresztül
  16. Csatlakoztassa a távoli SSH-t helyi mappaként SSHFS-sel
  17. SSH multiplexelés a ControlPath segítségével
  18. Streamelj videót SSH-n keresztül VLC és SFTP használatával
  19. Két tényezős hitelesítés
  20. Jumping hosts SSH-val és -J-vel
  21. Az SSH brute force kísérleteinek blokkolása iptables használatával
  22. SSH Escape a porttovábbítás megváltoztatásához

Először az alapokat

Az SSH parancssor elemzése

A következő példa olyan általános paramétereket használ, amelyek gyakran előfordulnak távoli kiszolgálóhoz való csatlakozáskor SSH.

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

  • -v: A hibakeresési kimenet különösen hasznos a hitelesítési problémák elemzésekor. Többször használható további információk megjelenítésére.
  • - p 22: csatlakozási port távoli SSH-kiszolgálóra. 22-t nem kell megadni, mert ez az alapértelmezett érték, de ha más porton van a protokoll, akkor a paraméterrel adjuk meg -p. A figyelési port a fájlban van megadva sshd_config formátumban Port 2222.
  • -C: Tömörítés a csatlakozáshoz. Ha lassú a kapcsolata, vagy sok szöveget lát, ez felgyorsíthatja a kapcsolatot.
  • neo@: A @ szimbólum előtti sor a távoli szerveren történő hitelesítéshez szükséges felhasználónevet jelzi. Ha nem adja meg, akkor alapértelmezés szerint annak a fióknak a felhasználóneve lesz, amelybe jelenleg bejelentkezett (~$whoami). A felhasználó a paraméter segítségével is megadható -l.
  • remoteserver: a csatlakozáshoz szükséges gazdagép neve ssh, ez lehet egy teljesen minősített tartománynév, egy IP-cím vagy bármely gazdagép a helyi hosts fájlban. Az IPv4-et és az IPv6-ot is támogató gazdagéphez való csatlakozáshoz hozzáadhatja a paramétert a parancssorhoz -4 vagy -6 a megfelelő felbontás érdekében.

A fenti paraméterek mindegyike opcionális, 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 ssh. Alapértelmezett érték ~/.ssh/config, de megadható egy opció paramétereként -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énti ssh konfigurációs fájlban két gazdagép-bejegyzés található. Az első az összes gazdagépet jelenti, mindegyik a 2222-es port konfigurációs paramétert használja, a második pedig azt, hogy a gazdagépre távoli szerver más felhasználónevet, portot, FQDN-t és IdentityFile-t kell használni.

A konfigurációs fájl sok gépelési időt takaríthat meg azáltal, hogy lehetővé teszi a speciális konfiguráció automatikus alkalmazását bizonyos gazdagépekhez való kapcsolódáskor.

Fájlok másolása SSH-n keresztül SCP használatával

Az SSH-kliens két másik nagyon praktikus eszközzel érkezik a fájlok másolásához titkosított ssh kapcsolat. Az alábbiakban az scp és az sftp parancsok szabványos használatára talál egy példát. Vegye figyelembe, hogy sok ssh-beállítás ezekre a parancsokra is vonatkozik.

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

Ebben a példában a fájl mypic.png -be másolva távoli szerver mappába /media/data és átnevezték erre mypic_2.png.

Ne feledkezzünk meg a port paraméterek különbségéről sem. Sokan ezen kapnak el, amikor elindulnak scp a parancssorból. Itt van a port paraméter -Pés nem -p, akárcsak egy ssh kliensben! El fogod felejteni, de ne aggódj, mindenki elfelejt.

Azoknak, akik ismerik a konzolt ftp, sok parancs hasonló a következőben sftp... Megteheti nyomja, tesz и lsahogy a szív kívánja.

sftp neo@remoteserver

Gyakorlati példák

Sok ilyen példában az eredményeket különböző módszerekkel lehet elérni. Mint mindannyiunkban tankönyvek és példák, előnyben részesítik azokat a gyakorlati példákat, amelyek egyszerűen elvégzik a dolgukat.

1. SSH socks proxy

Az SSH Proxy szolgáltatása jó okkal az 1. helyen áll. Erősebb, mint azt sokan gondolják, és gyakorlatilag bármilyen alkalmazás használatával hozzáférést biztosít minden olyan rendszerhez, amelyhez a távoli szerver hozzáfér. Az ssh-kliens egyetlen egyszerű paranccsal átvezetheti a forgalmat a SOCKS proxyn keresztül. Fontos megérteni, hogy a távoli rendszerekre irányuló forgalom távoli szerverről érkezik, ezt a webszerver naplói jelzik.

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 proxyt futtatunk a 8888-as TCP-porton, a második parancs ellenőrzi, hogy a port aktív-e figyelési módban. A 127.0.0.1 azt jelzi, hogy a szolgáltatás csak localhost-on fut. Valamennyi interfészen, így az etherneten vagy a wifin is hallhatunk egy kicsit eltérő paranccsal, így a hálózatunkon lévő többi alkalmazás (böngésző stb.) az ssh socks proxyn keresztül csatlakozhat a proxy szolgáltatáshoz.

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

Most beállíthatjuk a böngészőt, hogy csatlakozzon a socks proxyhoz. Firefoxban válassza a lehetőséget Beállítások | Alapvető | Hálózati beállítások. Adja meg a csatlakozáshoz szükséges IP-címet és portot.

Gyakorlati tippek, példák és SSH alagutak

Kérjük, vegye figyelembe az űrlap alján található lehetőséget, hogy a böngésző DNS-kérelmei egy SOCKS-proxyn keresztül is menjenek. Ha proxyszervert használ a webforgalom titkosításához a helyi hálózaton, akkor valószínűleg ezt a lehetőséget kell kiválasztania, hogy a DNS-kérések az SSH-kapcsolaton keresztül történjenek.

Socks proxy aktiválása a Chrome-ban

Ha elindítja a Chrome-ot bizonyos parancssori paraméterekkel, akkor engedélyezi a zokni proxyt, valamint a DNS-kérések alagútkezelését a böngészőből. Bízzon, de ellenőrizze. Használat tcpdump ellenőrizni, hogy a DNS-lekérdezések már nem láthatók-e.

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

Más alkalmazások használata proxyval

Ne feledje, hogy sok más alkalmazás is használhat socks proxyt. A webböngésző egyszerűen a legnépszerűbb az összes közül. Egyes alkalmazások konfigurációs beállításokkal rendelkeznek a proxykiszolgáló engedélyezéséhez. Másoknak egy kis segítségre van szükségük egy segédprogramhoz. Például, proxyláncok lehetővé teszi a socks proxy futtatását a Microsoft RDP stb.

localhost:~$ proxychains rdesktop $RemoteWindowsServer

A Socks proxy konfigurációs paraméterei a proxychains konfigurációs fájlban vannak beállítva.

Tipp: ha távoli asztalt használ Linuxról Windowson? Próbálja ki a klienst FreeRDP. Ez egy modernebb megvalósítás, mint rdesktop, sokkal gördülékenyebb élménnyel.

Lehetőség az SSH használatára socks proxy-n keresztül

Kávézóban vagy szállodában ül – és meglehetősen megbízhatatlan WiFi használatára kényszerül. Helyileg elindítunk egy ssh-proxyt egy laptopról, és egy ssh-alagutat telepítünk az otthoni hálózatba egy helyi Rasberry Pi-n. Egy böngésző vagy más, zokni proxyhoz konfigurált alkalmazások segítségével hozzáférhetünk az otthoni hálózatunk bármely hálózati szolgáltatásához, vagy otthoni kapcsolatunkon keresztül elérhetjük az internetet. Minden a laptop és az otthoni szerver között (Wi-Fi-n és interneten keresztül az otthonáig) SSH-alagútban van titkosítva.

2. SSH alagút (port továbbítás)

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

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

Nézzük a paramétert -L. A hallgatás helyi oldalaként is felfogható. Tehát a fenti példában a 9999-es port figyel a localhost oldalon, és a 80-as porton keresztül továbbítja a távoli szerverre. Kérjük, vegye figyelembe, hogy a 127.0.0.1 a távoli szerver localhostjára vonatkozik!

Menjünk fel a lépcsőn. A következő példa a figyelő portokat kommunikálja a helyi hálózat más gazdagépeivel.

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

Ezekben a példákban a webszerver egy portjához csatlakozunk, de ez lehet proxyszerver vagy bármely más TCP-szolgáltatás.

3. SSH-alagút egy harmadik féltől származó gazdagéphez

Ugyanezekkel a paraméterekkel csatlakozhatunk egy alagutat egy távoli szerverről egy harmadik rendszeren futó másik szolgáltatáshoz.

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

Ebben a példában egy alagutat irányítunk át a távoli szerverről a 10.10.10.10-én futó webszerverre. Forgalom távoli szerverről 10.10.10.10-re már nincs az SSH alagútban. A 10.10.10.10-es webszerver a távoli kiszolgálót fogja a webes kérések forrásának tekinteni.

4. Fordított SSH alagút

Itt beállítunk egy figyelő portot a távoli szerveren, amely visszacsatlakozik a localhost (vagy más rendszer) helyi portjához.

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

Ez az SSH-munkamenet kapcsolatot hoz létre a távoli kiszolgáló 1999-es portja és a helyi kliensünk 902-es portja között.

5. SSH fordított proxy

Ebben az esetben egy socks proxyt állítunk be az ssh-kapcsolatunkon, de a proxy a szerver távoli végén figyel. A távoli proxyhoz fűződő kapcsolatok most az alagútból a localhost forgalomként jelennek meg.

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

Hibaelhárítás távoli SSH-alagutaknál

Ha problémái vannak a távoli SSH-beállítások működésével, ellenőrizze a következőt: netstat, milyen egyéb interfészekhez csatlakozik a lehallgató port. Bár a példákban 0.0.0.0-t jeleztünk, de ha az érték GatewayPorts в sshd_config állítva nem, akkor a hallgató csak a localhosthoz (127.0.0.1) lesz kötve.

Biztonsági figyelmeztetés

Kérjük, vegye figyelembe, hogy az alagutak és a socks proxy-k megnyitásával a belső hálózati erőforrások nem megbízható hálózatok (például az internet!) számára is elérhetővé válhatnak. Ez komoly biztonsági kockázatot jelenthet, ezért győződjön meg arról, hogy megértette, mi a hallgató, és mihez férhet hozzá.

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

A támadási módszerek specialistái (pentesztelők stb.) gyakori kifejezés a „hálózat támaszpontja”. Miután létrejött a kapcsolat egy rendszeren, az a rendszer lesz a hálózathoz való további hozzáférés átjárója. Egy támaszpont, amely lehetővé teszi a szélességben való mozgást.

Ilyen támaszra használhatunk SSH proxyt és proxyláncok, azonban vannak korlátozások. Például nem lehet majd közvetlenül a socketekkel dolgozni, így nem tudjuk majd a hálózaton belüli portokat pásztázni Nmap SYN.

Ezzel a fejlettebb VPN-opcióval a kapcsolat a következőre csökken 3-es szint. Ezután egyszerűen átirányíthatjuk a forgalmat az alagúton, szabványos hálózati útválasztással.

A módszer használ ssh, iptables, tun interfaces és az útválasztás.

Először be kell állítania ezeket a paramétereket sshd_config. Mivel mind a távoli, mind a kliens rendszerek interfészén változtatásokat végzünk, mi mindkét oldalon root jogokra van szükség.

PermitRootLogin yes
PermitTunnel yes

Ezután ssh kapcsolatot hozunk létre a tun eszközök inicializálását kérő paraméterrel.

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

Most kell egy tun eszközünk az interfészek megjelenítéséhez (# ip a). A következő lépésben IP-címeket adunk az alagút interfészekhez.

SSH kliens oldal:

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

SSH szerver oldal:

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

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

Bármelyik alhálózatot átirányíthatja a másik oldalon lévő gazdagépen keresztül.

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

A távoli oldalon engedélyeznie kell ip_forward и 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. hálózati rétegen. Ez most győzelem.

Ha bármilyen probléma merül fel, használja tcpdump и pingaz ok meghatározásához. Mivel a 3. rétegben játszunk, az icmp-csomagjaink ezen az alagúton fognak átmenni.

7. Másolja ki az SSH kulcsot (ssh-copy-id)

Számos módja van ennek, de ez a parancs időt takarít meg, mivel nem másolja át a fájlokat kézzel. Egyszerűen átmásolja a ~/.ssh/id_rsa.pub (vagy az alapértelmezett kulcsot) a rendszerről a ~/.ssh/authorized_keys távoli szerveren.

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

8. Távoli parancsvégrehajtás (nem interaktív)

csapat ssh Összeköthető más parancsokkal a közös, felhasználóbarát felület érdekében. Csak adja hozzá a távoli gazdagépen futtatni kívánt parancsot utolsó paraméterként idézőjelbe.

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

Ebben a példában grep a napló ssh-csatornán keresztüli letöltése után fut le a helyi rendszeren. Ha a fájl nagy, kényelmesebb a futtatása grep a távoli oldalon úgy, hogy mindkét parancsot dupla idézőjelbe helyezi.

Egy másik példa ugyanazt a funkciót látja el, mint ssh-copy-id a 7. példából.

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

9. Távoli csomagrögzítés és megtekintés a Wiresharkban

Elvettem a miénket tcpdump példák. Használja csomagok távoli rögzítésére és az eredmények közvetlen megjelenítésére a helyi Wireshark grafikus felületen.

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

10. Helyi mappa másolása távoli szerverre SSH-n keresztül

Egy szép trükk, amely segítségével tömörít egy mappát bzip2 (ez a -j opció a parancsban tar), majd lekéri az adatfolyamot bzip2 a másik oldalon egy duplikált mappa létrehozása a távoli kiszolgálón.

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

11. Távoli GUI-alkalmazások SSH X11 továbbítással

Ha az X telepítve van az ügyfélen és a távoli kiszolgálón, akkor távolról is végrehajthat egy GUI-parancsot egy ablakkal a helyi asztalon. Ez a funkció már régóta létezik, de még mindig nagyon hasznos. Indítson el egy távoli webböngészőt vagy akár a VMWawre Workstation konzolt, ahogy ebben a példában teszem.

localhost:~$ ssh -X remoteserver vmware

Kötelező karakterlánc X11Forwarding yes fájlban sshd_config.

12. Távoli fájlmásolás rsync és SSH használatával

rsync sokkal kényelmesebb scp, ha rendszeres biztonsági mentésre van szüksége egy könyvtárról, nagyszámú fájlról vagy nagyon nagy fájlokról. Van egy funkció az átviteli hiba utáni helyreállításra és csak a módosított fájlok másolására, amely forgalmat és időt takarít meg.

Ez a példa tömörítést használ gzip (-z) és archiválási mód (-a), amely lehetővé teszi a rekurzív másolást.

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

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

Az anonim Tor-hálózat a paranccsal át tudja vezetni az SSH-forgalmat torsocks. A következő parancs átadja az ssh proxyt a Toron keresztül.

localhost:~$ torsocks ssh myuntracableuser@remoteserver

Torzokni a localhost 9050-es portját fogja használni proxyként. Mint mindig, a Tor használatakor komolyan meg kell vizsgálnia, hogy milyen forgalom folyik alagútba, és más működési biztonsági (opsec) problémákat is. Hová kerülnek a DNS-lekérdezések?

14. SSH-ból EC2-példány

Az EC2 példányhoz való csatlakozáshoz privát kulcsra van szükség. Töltse le (.pem kiterjesztéssel) az Amazon EC2 vezérlőpultjáról, és módosítsa az engedélyeket (chmod 400 my-ec2-ssh-key.pem). A kulcsot tartsa biztonságos helyen, vagy tegye a saját mappájába ~/.ssh/.

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

Paraméter -i egyszerűen azt mondja az ssh kliensnek, hogy használja ezt a kulcsot. Fájl ~/.ssh/config Ideális a kulcshasználat automatikus konfigurálásához, amikor ec2 gazdagéphez csatlakozik.

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 használatával ssh/scp-n keresztül

Minden szerelmesnek vim Ez a tipp időt takarít meg. Használva vim A fájlok scp-n keresztül egy paranccsal szerkeszthetők. Ez a módszer egyszerűen helyileg hozza létre a fájlt /tmpmajd visszamásolja, miután elmentettük vim.

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

Megjegyzés: a formátum kissé eltér a szokásostól scp. A fogadó után duplánk van //. Ez egy abszolút úthivatkozás. Egy perjel az otthoni mappához viszonyított elérési utat jelzi users.

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

Ha ezt a hibát látja, ellenőrizze még egyszer a parancsformátumot. Ez általában szintaktikai hibát jelent.

16. Távoli SSH csatlakoztatása helyi mappaként SSHFS-szel

Révén sshfs - fájlrendszer kliens ssh - egy helyi könyvtárat egy távoli helyre csatlakoztathatunk az összes fájl interakcióval egy titkosított munkamenetben ssh.

localhost:~$ apt install sshfs

Telepítse a csomagot Ubuntura és Debianra sshfs, majd egyszerűen csatlakoztassa a távoli helyet 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 létezik kapcsolat egy távoli kiszolgálóval ssh második csatlakozás segítségével ssh vagy scp új munkamenetet hoz létre további hitelesítéssel. választási lehetőség ControlPath lehetővé teszi a meglévő munkamenet használatát minden további kapcsolathoz. Ez jelentősen felgyorsítja a folyamatot: a hatás még helyi hálózaton is észrevehető, és még inkább 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 meghatározza azt a socketet, amely ellenőrzi az új kapcsolatokat, hogy ellenőrizze, van-e aktív munkamenet ssh. Az utolsó opció azt jelenti, hogy a konzolból való kilépés után is a meglévő munkamenet 10 percig nyitva marad, tehát ezalatt újra csatlakozhat a meglévő aljzathoz. További információért lásd a súgót. ssh_config man.

18. Videó streamelése SSH-n keresztül VLC és SFTP használatával

Még régóta használók is ssh и vlc (Video Lan Client) nem mindig ismerik ezt a kényelmes lehetőséget, amikor valóban a hálózaton keresztül kell videót néznie. A beállításokban Fájl | Nyissa meg a Hálózati adatfolyamot programok vlc megadhatja a helyet mint sftp://. Ha jelszót kell megadni, megjelenik egy üzenet.

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

19. Kéttényezős hitelesítés

Az SSH-szolgáltatásra ugyanaz a kéttényezős hitelesítés vonatkozik, mint a bankszámlájára vagy a Google-fiókjára.

Természetesen, ssh kezdetben kétfaktoros hitelesítési funkcióval rendelkezik, ami jelszót és SSH-kulcsot jelent. A hardveres token vagy a Google Authenticator alkalmazás előnye, hogy általában egy másik fizikai eszközről van szó.

Tekintse meg 8 perces útmutatónkat a Google Authenticator és az SSH használatával.

20. Jumping hosts ssh-val és -J-vel

Ha a hálózati szegmentálás azt jelenti, hogy több ssh-állomáson kell átugrani, hogy elérje a végső célhálózatot, a -J parancsikon időt takarít meg.

localhost:~$ ssh -J host1,host2,host3 [email protected]

Itt a legfontosabb megérteni, hogy ez nem ugyanaz, mint a parancs ssh host1, akkor user@host1:~$ ssh host2 stb. A -J opció okosan használja a továbbítást, hogy arra kényszerítse a localhost, hogy munkamenetet hozzon létre a lánc következő gazdagépével. Tehát a fenti példában a localhost a host4 számára hitelesítve van. Vagyis a localhost kulcsainkat használják, és a localhosttól a host4-ig tartó munkamenet teljesen titkosított.

Ilyen lehetőségre be ssh_config adja meg a konfigurációs opciót ProxyJump. Ha rendszeresen több gazdagépen kell keresztülmennie, akkor a konfiguráción keresztüli automatizálás sok időt takarít meg.

21. Blote SSH brute force kísérletek iptables használatával

Bárki, aki kezelt SSH-szolgáltatást, és megnézte a naplókat, tudja, hány brutális erőszakos kísérlet történik a nap minden órájában. A naplók zajának csökkentésének gyors módja az SSH áthelyezése egy nem szabványos portra. Változtassa meg a fájlt sshd_config konfigurációs paraméteren keresztül Kikötő##.

-Val iptables Könnyen blokkolhatja a porthoz való csatlakozási kísérleteket is, ha elér egy bizonyos küszöböt. Ennek egyszerű módja a használata OSSEC, mert nem csak az SSH-t blokkolja, hanem egy csomó egyéb gazdagépnév-alapú behatolásészlelési (HIDS) intézkedést is végrehajt.

22. SSH Escape a porttovábbítás megváltoztatásához

És az utolsó példánk ssh Úgy tervezték, hogy egy meglévő munkameneten belül menet közben módosítsa a porttovábbítást ssh. Képzeld el ezt a forgatókönyvet. Ön mélyen a hálózatban; talán fél tucat gazdagépen ugrott át, és szüksége van egy helyi portra a munkaállomáson, amely egy régi Windows 2003 rendszer Microsoft SMB-jének van továbbítva (emlékszik valaki az ms08-67-re?).

Kattintás enter, próbálja meg beírni a konzolba ~C. Ez egy munkamenet-vezérlő szekvencia, amely lehetővé teszi egy meglévő kapcsolat módosítását.

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.

Itt láthatja, hogy a helyi 1445-ös portot továbbítottuk egy Windows 2003 gazdagépre, amelyet a belső hálózaton találtunk. Most csak fuss msfconsole, és továbbléphet (feltételezve, hogy ezt a gazdagépet tervezi használni).

Befejezés

Ezek a példák, tippek és parancsok ssh kiindulási pontot kell adnia; További információ az egyes parancsokról és képességekről a kézikönyvoldalakon (man ssh, man ssh_config, man sshd_config).

Mindig is lenyűgözött az a képesség, hogy a világon bárhol elérhetem a rendszereket és végrehajthatok parancsokat. A készségek fejlesztésével olyan eszközökkel, mint pl ssh minden játékban hatékonyabb leszel.

Forrás: will.com

Hozzászólás