Praktilised nÀpunÀited, nÀited ja SSH tunnelid

Praktilised nÀpunÀited, nÀited ja SSH tunnelid
Praktilised nĂ€ited SSH, mis viivad teie kaug-sĂŒsteemi administraatori oskused uuele tasemele. Kommandid ja nĂ€punĂ€ited aitavad mitte ainult kasutada SSH, vaid samuti osavamalt navigeerida lĂ€bi vĂ”rgu.

MĂ”nede nippide teadmine ssh on kasulik igale sĂŒsteemiadministraatorile, vĂ”rgutehnoloogile vĂ”i turbeeksperdile.

Praktilised nÀited SSH

  1. SSH socks-proksi
  2. SSH tunnel (portide siirdamine)
  3. SSH tunnel kolmandale hostile
  4. Tagasi SSH tunnel
  5. Tagasi SSH proksi
  6. VPNi seadistamine SSH kaudu
  7. SSH vÔtme kopeerimine (ssh-copy-id)
  8. Kaugarhade kÀskude tÀitmine (mitteinteraktiivselt)
  9. Kaugsuitsukottide ja vaatamine Wiresharkis
  10. Kohalik kataloog kaugserverisse SSH kaudu kopeerimine
  11. Kaug-GUI rakendused SSH X11 siirdamisega
  12. Failide kaugkopeerimine rsynci ja SSH abil
  13. SSH Tor vÔrgu kaudu
  14. SSH EC2 instantsi
  15. Tekstifailide redigeerimine VIMi kaudu ssh/scp
  16. Kaug-SSH mounting kohalikuks kataloogiks SSHFS-iga
  17. SSH multiplikatsioon ControlPath'i kasutamisega
  18. Voogesitusvideo SSH kaudu VLC ja SFTP-ga
  19. Kahefaktoriline autentimine
  20. HĂŒpped hostide vahel SSH ja -J kaudu
  21. SSH bruteforce'i proovide blokeerimine iptables'i abil
  22. SSH Escape portide siirdamise muutmiseks

Esiteks alused

SSH kĂ€surea analĂŒĂŒs

JĂ€rgmises nĂ€ites kasutatakse tavalisi parameetreid, mida sageli kasutatakse kaugsĂŒsteemiga ĂŒhendamisel SSH.

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

  • -v: silumisinfo vĂ€ljund on eriti kasulik autentimisprobleemide analĂŒĂŒsimisel. Seda saab kasutada mitu korda, et kuvada tĂ€iendavat teavet.
  • - p 22: ĂŒhenduse port SSH kaugsĂŒsteemiga. 22 pole tingimata vaja mÀÀrata, kuna see on vaikimisi vÀÀrtus, kuid kui protokoll on mingil muul pordil, siis mÀÀrame selle parameetriga -p. Kuulamisport mÀÀratakse failis sshd_config vormingus Port 2222.
  • -C: kokkusurutud ĂŒhendus. Kui sul on aeglane kanal vĂ”i vaatad palju teksti, vĂ”ib see ĂŒhendust kiiruselt parandada.
  • neo@: @ ees olev rida nĂ€itab kasutajanime, mida kasutatakse kaugsĂŒsteemis autentimiseks. Kui seda ei mÀÀrata, kasutatakse vaikimisi hetkel sisse logitud kasutajanime (~$ whoami). Kasutajat saab samuti mÀÀrata parameetriga -l.
  • remoteserver: hostinimi, millega ĂŒhendust luuakse ssh, see may be a complete domain name, IP address or any host in the local hosts file. To connect to a host that supports both IPv4 and IPv6, you can add the parameter to the command line -4 vĂ”i -6 for correct resolving.

All the above parameters are optional, except for remoteserver.

Using the configuration file

While many are familiar with the file sshd_config, there is also a configuration file for the command ssh. The default value is ~/.ssh/config, but it can be specified as a parameter for the option -F.

Host *
     Port 2222

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

In the above example configuration file, there are two host entries. The first denotes all hosts where the configuration parameter Port 2222 applies. The second states that for the host remoteserver , a different username, port, FQDN, and IdentityFile should be used.

The configuration file can save a lot of time typing characters, allowing for advanced configuration to be automatically applied when connecting to specific hosts.

Copying files over SSH using SCP

SSH klient kaasneb kahe mugava tööriistaga, et faile kopeerida krĂŒpteeritud SSH ĂŒhenduse kaudu. Allpool on nĂ€ide standardsetest scp ja sftp kĂ€skude kasutamist. Pange tĂ€hele, et paljusid SSH parameetreid rakendatakse ka nendes kĂ€skudes.

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

Selles nĂ€ites on fail mypic.png kopeeritud remoteserver kausta /media/data ja ĂŒmbernimetatud mypic_2.png.

Ärge unustage portide parameetri erinevust. Paljud, kes kĂ€ivitavad scp kĂ€sklusribalt, komistavad selle ĂŒle. Siin on porti parameeter -P, mitte -p, nagu SSH klienti puhul! Sa vĂ”id unustada, aga Ă€ra muretse, kĂ”ik unustavad.

Neile, kes tunnevad konsooli ftp, tunduvad paljud kĂ€sklused sarnased sftp. Sa vĂ”id teha push, put ja ls, nagu sĂŒda soovib.

sftp neo@remoteserver

Praktilised nÀited

Paljusid neist nÀidetest on vÔimalik saavutada erinevate meetoditega. Nagu meie Ôpikutes ja nÀidetes, eelistatakse praktilisi nÀiteid, mis lihtsalt teevad seda, milleks nad on mÔeldud.

1. SSH socks-proksi

SSH Proxy funktsioon on oma nime tĂ”ttu esikohal. See on palju vĂ”imsam, kui paljud arvavad, ja annab juurdepÀÀsu igasugustele sĂŒsteemidele, millele kaugserveril on juurdepÀÀs, kasutades praktiliselt igasuguseid rakendusi. SSH klient saab tunnelida liiklust SOCKS-proxy kaudu ĂŒhe lihtsa kĂ€suga. Oluline on mĂ”ista, et kaug-sĂŒsteemidest saadetud liiklus jÀÀb kaugserverilt, nagu on mĂ€rgitud veebiserveri logidesse.

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

Siin kĂ€ivitame SOCKS-proxy TCP-pordil 8888, teine kĂ€sk kontrollib, et port on aktiivne ja kuulab. 127.0.0.1 nĂ€itab, et teenus töötab ainult localhost'is. Me saame kasutada veidi teistsugust kĂ€sku, et kuulata kĂ”iki liideseid, sealhulgas ethernet vĂ”i wifi, mis vĂ”imaldab teistel rakendustel (nt brauserid) meie vĂ”rgus proxy-teenusele SSH SOCKS-proxy kaudu ĂŒhenduda.

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

NĂŒĂŒd saame seadistada brauseri SOCKS-proxy kaudu ĂŒhenduse loomiseks. Firefoxis valige Seaded | Üldine | VĂ”rgu seaded. MÀÀrake IP-aadress ja port ĂŒhenduse loomiseks.

Praktilised nÀpunÀited, nÀited ja SSH tunnelid

Pange tĂ€hele vormi alumises osas olevat valikut, et DNSi pĂ€ringud kĂ€iksid ka SOCKS-proksi kaudu. Kui kasutate veebiliikluse krĂŒpteerimiseks proksiserverit, siis soovite tĂ”enĂ€oliselt seda valikut valida, et DNSi pĂ€ringud tunneldataks SSH-ĂŒhenduse kaudu.

SOCKS-proksi aktiveerimine Chrome'is

Chrome'i kÀivitamine kindlate kÀsurea parameetritega aktiveerib SOCKS-proksi ning ka DNS-pÀringute tunneldamise brauserist. Usalda, kuid kontrolli. Kasutage tcpdump et veenduda, et DNS-pÀringud ei ole enam nÀhtavad.

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

Muude rakenduste kasutamine proksiga

Pange tÀhele, et paljud teised rakendused vÔivad samuti kasutada SOCKS-proksit. Veebibrauser on neist lihtsalt kÔige populaarsem. MÔnedel rakendustel on proksiserveri aktiveerimise seadistused. Teised vajavad veidi abi abiprogrammiga. NÀiteks, proxychains vÔimaldab kÀivitada Microsoft RDP ja teised lÀbi SOCKS-proksi.

localhost:~$ proxychains rdesktop $RemoteWindowsServer

SOCKS-proksi konfiguratsiooniparameetrid mÀÀratakse proxychains'i konfiguratsioonifailis.

NÀpunÀide: kas kasutate Linuxist Windowsi kaugdesktopi? Proovige klienti FreeRDP. See on uuem versioon kui rdesktop, millel on palju sujuvam interaktsioon.

SSH kasutamine socks-proxyna

Olete kohvikus vĂ”i hotellis — ja peate kasutama ĂŒsna ebastabiilset WiFi. KĂ€ivitage oma sĂŒlearvutis kohalikult ssh-proxy ja looge ssh-tunnel oma koduvĂ”rku kohalikule Raspberry Pi-le. Kasutades brauserit vĂ”i muid rakendusi, mis on mÀÀratud socks-proxyks, saame ligi pÀÀseda mis tahes vĂ”rgu teenustele oma koduvĂ”rgus vĂ”i internetti ligipÀÀseda lĂ€bi koduse ĂŒhenduse. KĂ”ik teie sĂŒlearvuti ja koduserveri vahel (WiFi ja interneti kaudu koju) on krĂŒpteeritud SSH-tunneli kaudu.

2. SSH-tunnel (portide edastamine)

Lihtsaimal kujul SSH-tunnel avab lihtsalt port teie kohalikus sĂŒsteemis, mis ĂŒhendub teise pordi kaudu tunneliteisel lĂ”pus.

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

AnalĂŒĂŒsime parameetrit -L. Seda saab esitada kui kohaliku kuulamise poole. Nii et ĂŒlaltoodud nĂ€ites kuulab port 9999 localhost'i poole ja suunatakse port 80 kaudu remoteserver'ile. Pange tĂ€hele, et 127.0.0.1 viitab localhost'ile eemaloleval serveril!

Liigume jĂ€rgmisele tasemele. JĂ€rgmises nĂ€ites on kuulamisport ĂŒhendatud teiste kohaliku vĂ”rgu sĂ”lmidega.

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

Nendes nĂ€idetes ĂŒhendame me porti veebiserveriga, kuid see vĂ”ib olla ka vahendiserver vĂ”i mĂ”ni muu TCP teenus.

3. SSH tunnel teisele hostile

Me vĂ”ime kasutada samu parameetreid tunneli ĂŒhendamiseks eemalolevalt serverilt mĂ”ne teise teenusega, mis töötab kolmandal sĂŒsteemil.

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

Antud nÀites suuname tunneli remoteserver'ilt veebiserverile, mis töötab 10.10.10.10. Liiklus remoteserver'ilt 10.10.10.10 ei ole enam SSH tunnelis. Veebiserver 10.10.10.10 peab remoteserver'it veebipÀringute allikaks.

4. Tagasi SSH tunnel

Siin seadistame kuulamisporta eemaloleval serveril, mis ĂŒhendub tagasi meie localhost'i (vĂ”i mĂ”ne teise sĂŒsteemi) kohaliku porti.

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

Selles SSH-seansis luuakse ĂŒhendus pordilt 1999 remoteserver'ile pordile 902 meie kohaliku kliendi poole.

5. SSH tagasipöördproksi

Sellisel juhul seadistame socks-proksi meie ssh-ĂŒhenduse kaudu, kuid proksi kuulab serveri eemalolekul. Ühendused sellele kaugproksile ilmuvad nĂŒĂŒd tunnelist kui liiklus meie localhost'ilt.

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

Probleemide lahendamine kaugete SSH tunnelitega

Kui teil on probleeme kaug SSH valikutega, kontrollige kasutades netstat, millistele muudele liidesele kuulub kuulamisport. Kuigi meie nĂ€idetes on mÀÀratud 0.0.0.0, siis kui vÀÀrtus GatewayPorts ĂŒhes sshd_config on mÀÀratud vÀÀrtuseks ei, siis kuulaja soositakse ainult localhost'ile (127.0.0.1).

Turvahoiatuse

Olge teadlik, et tunnelite ja socks-proksi avamisel vÔivad sisemised vÔrguressursid olla kergesti ligipÀÀsetavad ebausaldusvÀÀrsete vÔrkudele (nt internetile!). See vÔib olla tÔsine turvaprobleem, seega veenduge, et mÔistate, mida kuulaja endast kujutab ja millele tal ligipÀÀs on.

6. VPN seadistamine SSH kaudu

Termin, mida spetsialistid rĂŒnnete meetodite (penetratsioonitestijad jne) seas kasutavad, on "vĂ”rgus tugipunkt". Kui ĂŒhendus on loodud ĂŒhe sĂŒsteemiga, muutub see sĂŒsteem vĂ€ravaks edasiseks juurdepÀÀsuks vĂ”rgule. Tugipunkt, mis vĂ”imaldab laiemat liikumist.

Sellise tugipunkti jaoks saame kasutada SSH-proksit ja proxychains, kuid on mÔned piirangud. NÀiteks ei saa me otse sokettidega töötada, seega ei saa me skaneerida porte vÔrgus lÀbi Nmap SYN.

Kasutades seda keerulisemat VPN-varianti, vĂ€heneb ĂŒhendus tasemele 3. Siis saame lihtsalt suunata liikluse lĂ€bi tunnel, kasutades standardset vĂ”rgusuunamist.

Meetod kasutab ssh, iptables, tun-liideseid ja suunamist.

Esmalt peame need parameetrid mÀÀrama sshd_config. Kuna me muudame nii kaug- kui ka kliendisĂŒsteemi liideseid, on meil vajalikud root-Ă”igused mĂ”lemalt poolt.

PermitRootLogin yes
PermitTunnel yes

SeejĂ€rel loome ssh-ĂŒhenduse, kasutades parameetrit, mis kĂŒsib tun-seadmete algatamist.

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

NĂŒĂŒd peaks meil olema tun-seade liideste kuvamisel (# ip a). JĂ€rgmine samm lisab IP-aadresse tunneliliidesele.

SSH kliendi pool:

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

SSH serveri pool:

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

NĂŒĂŒd on meil otsene marsruut teise hosti juurde (route -n ja ping 10.10.10.10).

Saame marsruutida mis tahes alamvĂ”rgu ĂŒle vastaskĂŒljel asuva hosti.

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

Kauges pool tuleb aktiveerida ip_forward ja 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

Boom! VPN SSH tunnelil tasemel 3. See on juba vÔit.

Kui tekib probleeme, kasutage tcpdump ja ping, et vÀlja selgitada pÔhjus. Kuna mÀngime tasemel 3, liiguvad meie icmp paketid lÀbi selle tunnel.

7. SSH vÔtme kopeerimine (ssh-copy-id)

Siin on mitu vĂ”imalust, kuid see kĂ€sk sÀÀstab aega, et failide kĂ€sitsi kopeerimist vĂ€ltida. See kopeerib lihtsalt ~/ .ssh/id_rsa.pub (vĂ”i vaikimisi vĂ”tme) teie sĂŒsteemist ~/ .ssh/authorized_keys kaugsesse serverisse.

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

8. Kaugteostus (interaktiivne)

KĂ€sku ssh Saate ĂŒhendada teistega tavalise mugava liidese jaoks. Lihtsalt lisage kaugserveris kĂ€ivitamiseks soovitud kĂ€sk jutumĂ€rkides viimase parameetrina.

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

Antud nĂ€ites grep kĂ€ivitatakse kohaliku sĂŒsteemi peal pĂ€rast seda, kui logi on ĂŒle ssh-kanali alla laaditud. Kui fail on suur, on mugavam kĂ€ivitada grep eemal, lihtsalt mĂ”lemad kĂ€sud kahekordsetesse jutumĂ€rkidesse pannes.

Teine nÀide tÀidab sama funktsiooni, mis ssh-copy-id nÀites 7.

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

9. Kaugpakettide pealtkuulamine ja vaatamine Wiresharkis

VĂ”tsin ĂŒhe meie tcpdumpi nĂ€idetest. Kasutage seda kaugpakettide pealtkuulamiseks, andmete edastamine otse kohaliku Wiresharki GUI-sse.

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

10. Kohaliku kausta kopeerimine kaugserverisse SSH kaudu

Ilus trikk, mis tihendab kausta bzip2 (see on -j parameeter kÀsus tar), ja seejÀrel ekstraktib voolu bzip2 teisel pool, luues kaugserveris kausta duplikaadi.

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

11. GUI kaugprogrammid SSH X11 edastamisega

Kui nii kliendil kui ka kaugserveril on installitud „X-id“, on vĂ”imalik kaugelt CLI kĂ€itada, kuvatuna teie kohalikus töölauas. See funktsioon on juba pikka aega olemas, kuid on jĂ€tkuvalt vĂ€ga kasulik. KĂ€ivitage kaugveebibrauser vĂ”i isegi VMWare Workstationi konsool, nagu ma teen selles nĂ€ites.

localhost:~$ ssh -X remoteserver vmware

NÔutav rida X11Forwarding yes failis sshd_config.

12. Failide kaugkopeerimine rsync ja SSH abil

rsync on palju mugavam scp, kui on vajalik ajastatud varundamine kataloogist, suurest hulgast failidest vÔi vÀga suurtest failidest. Siin on olemas edastamise ja kopeerimise talitlushÀires taastamise funktsioon, samuti ainult muudetud failide kopeerimine, mis sÀÀstab liiklust ja aega.

Selles nĂ€ites kasutatakse kokkusurumist gzip (-z) ja arhiivireĆŸiimi (-a), mis hĂ”lmab rekursiivset kopeerimist.

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

13. SSH lÀbi Tor vÔrgu

AnonĂŒĂŒmsed Tor-vĂ”rgud saavad tunnelida SSH liiklust kĂ€suga torsocks. JĂ€rgmine kĂ€sk suunab ssh-proksi lĂ€bi Tor.

localhost:~$ torsocks ssh myuntracableuser@remoteserver

Torsocks kasutatakse proxy porti 9050 localhostis. Nagu alati Tor'i kasutamisel, on hÀdavajalik tÔsiselt kontrollida, milline liiklus on tunnelitud ja muud operatiivturvalisuse (opsec) probleemid. Kuhu lÀhevad teie DNS-pÀringud?

14. SSH EC2 instantsile

EC2 instantsile ĂŒhendamiseks on vajalik privaatvĂ”ti. Laadige see alla (laiend .pem) Amazon EC2 juhtpaneelilt ja muutke selle Ă”igusi (chmod 400 my-ec2-ssh-key.pem). Hoidke vĂ”ti usaldusvÀÀrses kohas vĂ”i asetage see oma kausta ~/.ssh/.

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

Parameeter -i mĂ€rkab ssh-klienti kasutama seda vĂ”tit. Fail ~/.ssh/config sobib ideaalselt automaatsete seadistuste jaoks, et vĂ”tit hostiga ec2 ĂŒhendamisel kasutada.

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

15. Tekstifailide redigeerimine VIM-i abil ssh/scp kaudu

KĂ€ikidele huvilistele vim see nĂ€punĂ€ide sÀÀstab teile veidi aega. Kasutades vim failid redigeeritakse lihtsalt ĂŒhe scp kĂ€suga. See meetod loob faili kohalikult /tmp, ja kopeerib selle tagasi, kui oleme selle salvestanud vim.

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

MĂ€rkus: formaat erineb veidi tavalisest scp. PĂ€rast hosti jĂ€rgneb meil kahekordne //. See on link absoluutsele teele. Üks kaldkriips tĂ€histab teed kodukausta suhtes. users.

**warning** (netrw) ei suuda meetodit mÀÀrata ( formaat: protokoll://[kasutaja@]hostname[:port]/[tee])

Kui nĂ€ete sellist viga, kontrollige kĂ€skluse formaati kaks korda. See tĂ€hendab tavaliselt sĂŒntaksiviga.

16. Kaug-SSH montaaĆŸ nagu kohalik kataloog SSHFS-i abil.

Kasutades sshfs — failisĂŒsteemi klient ssh — saame ĂŒhendada kohaliku katalooge kaugasukohta, tehes kĂ”iki failihalduse toiminguid krĂŒpteeritud sessiooni kaudu. ssh.

localhost:~$ apt install sshfs

Ubuntu ja Debianis paigaldame paketi sshfs, ja siis monteerime lihtsalt kaugasukoha meie sĂŒsteemi.

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

17. SSH multiplexer ControlPath abil.

Vaikimisi, kui olemasolev ĂŒhendus kaugs serveriga on loodud, ssh teine ĂŒhendus lĂ€bi ssh vĂ”i scp seob uue sessiooni tĂ€iendava autentimisega. Valik ControlPath lubab kasutada olemasolevat seanssi kĂ”igi jĂ€rgmiste ĂŒhenduste jaoks. See kiirendab protsessi mĂ€rgatavalt: mĂ”ju on tajutav isegi kohalikus vĂ”rgus, rÀÀkimata kaugressursside ĂŒhendamisest.

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

ControlPath mÀÀrab soketi, et kontrollida uute ĂŒhenduste puhul aktiivsete seansside olemasolu ssh. Viimane valik tĂ€hendab, et isegi pĂ€rast konsoolist lahkumist jÀÀb olemasolev sessioon avatuks 10 minutiks, nii et selle aja jooksul saate uuesti ĂŒhenduse luua olemasoleva soketi kaudu. Lisainfo leiate abist ssh_config man.

18. Voogedastus SSH kaudu VLC ja SFTP

Isegi pikaajalised kasutajad ssh ja vlc (Video Lan Client) ei tea alati sellest mugavast vĂ”imalusest, kui on tĂ”eliselt vajalik vaadata videot vĂ”rgus. Seadetes File | Open Network Stream programmede vlc vĂ”ite sisestada asukoha nagu sftp://. Kui on vajalik parool, kuvatakse kĂŒsitlus.

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

19. Kahefaktoriline autentimine

Sama kahefaktoriline autentimine, nagu teie pangakonto vÔi Google'i konto, kehtib ka SSH teenuse puhul.

Muidugi, ssh algne funktsioon sisaldab kahefaktorilist autentimist, mis tĂ€hendab parooli ja SSH vĂ”tme olemasolu. FĂŒĂŒsilise tokeni vĂ”i Google Authenticatori rakenduse eelised seisnevad selles, et see on tavaliselt teine fĂŒĂŒsiline seade.

Vaata meie 8-minutilist juhendit Google Authenticatori ja SSH kasutamiseks.

20. SSH ja -J kaudu hostide vahetamine

Kui vĂ”rgu segmendi tĂ”ttu on vajalik ĂŒletada mitu SSH hosti, et jĂ”uda sihtvĂ”rku, siis sÀÀstab teid aega -J lĂŒhend.

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

Siin on oluline mĂ”ista, et see ei ole samavÀÀrne kĂ€suga ssh host1, seejĂ€rel user@host1:~$ ssh host2 jne. -J parameeter kasutab nutikalt edasitoimetamist, et localhost looks session'i jĂ€rgmise hostiga ketis. Seega meie localhost autentitakse host4-l. See tĂ€hendab, et meie localhost'i vĂ”tmepaarid on kasutusel ning session localhost'ist host4-ni on tĂ€ielikult krĂŒpteeritud.

Selle vĂ”imaluse jaoks ssh_config mÀÀrake konfiguratsiooni vĂ”imalus ProxyJump. Kui peate regulaarselt ĂŒle minema mitmele hostile, siis automatiseerimine konfiguratsioonifaili kaudu sÀÀstab palju aega.

21. SSH brute-force katsete blokeerimine iptables'i abil

IgaĂŒks, kes on SSH teenust haldanud ja logisid vaatamas kĂ€inud, teab, kui palju brute-force katseid toimub iga tunni ja iga pĂ€eva jooksul. Kiire viis logides mĂŒra vĂ€hendada on viia SSH mittestandardsesse porti. Tehke muudatused failis sshd_config konfiguratsiooniparameetri abil Port##.

KĂ€esoleva abil iptables on samuti lihtne blokeerida ĂŒhenduse proovimist sadamasse, kui teatud lĂ€vend on saavutatud. Lihtne viis selleks on kasutada OSSEC, kuna see mitte ainult ei blokeeri SSH-d, vaid viib ellu ka palju teisi tegevusi, et tuvastada sissetungimise katsed hostinime alusel (HIDS).

22. SSH Escape portide suunamise muutmiseks

Ja meie viimane nĂ€ide ssh on mĂ”eldud portide suunamise muutmiseks jooksvalt olemasoleva sessiooni raames ssh. Kujutage ette sellist stsenaariumi. Olete sĂŒgaval vĂ”rgus; vĂ”ib-olla olete hĂŒpanud ĂŒle poole tosinast hostist ja vajate kohalikku porti teie tööjaamas, mis on suunatud Microsoft SMB vana Windows 2003 sĂŒsteemi (kas keegi mĂ€letab ms08-67?).

PĂ€rast vajutamist enter, proovige sisestada konsooli ~C. See on juhtimisjĂ€rjestus sessioonis, mis vĂ”imaldab teha muudatusi olemasolevas ĂŒhenduses.

localhost:~$ ~C
ssh> -h
Commands:
      -L[bind_address:]port:host:hostport    KĂŒsi kohalikku edasi.
      -R[bind_address:]port:host:hostport    KĂŒsi kaugĂŒlekande.
      -D[bind_address:]port                  KĂŒsi dĂŒnaamilist edasi.
      -KL[bind_address:]port                 TĂŒhista kohaliku edasi.
      -KR[bind_address:]port                 TĂŒhista kaugĂŒlekande.
      -KD[bind_address:]port                 TĂŒhista dĂŒnaamiline edasi.
ssh> -L 1445:remote-win2k3:445
Sadam on suunatud.

Siit nĂ€ete, et oleme suunanud meie kohalikku porti 1445 Windows 2003 hostile, mille leidsime sisemisest vĂ”rgust. NĂŒĂŒd lihtsalt kĂ€ivitage msfconsole, ja saate edasi liikuda (eeldades, et plaanite seda hosti kasutada).

LÔpetamine

Need nÀited, nÔuanded ja kÀsud ssh peavad andma lÀhtepunkti; iga kÀsu ja vÔimaluse kohta on tÀiendavat teavet abilehtedel (man ssh, man ssh_config, man sshd_config).

Olen alati olnud lummatud vĂ”imalusest pÀÀseda sĂŒsteemidele ja kĂ€ivitada kĂ€ske igast maailma punktist. Arendades oma oskusi selliste tööriistadega nagu ssh saate igas mĂ€ngus, mida mĂ€ngite, tĂ”husamaks.

Allikas: habr.com

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster