Tips Praktis, Contoh, dan Terowongan SSH

Tips Praktis, Contoh, dan Terowongan SSH
Contoh praktis SSH, yang akan meningkatkan keterampilan Anda sebagai administrator sistem jarak jauh. Perintah dan tip akan membantu tidak hanya untuk digunakan SSH, tetapi juga menavigasi jaringan dengan lebih kompeten.

Mengetahui beberapa trik ssh berguna bagi administrator sistem, insinyur jaringan, atau spesialis keamanan mana pun.

Contoh Praktis SSH

  1. Proksi kaus kaki SSH
  2. Terowongan SSH (penerusan port)
  3. Terowongan SSH ke host ketiga
  4. Membalikkan terowongan SSH
  5. Proksi terbalik SSH
  6. Menginstal VPN melalui SSH
  7. Menyalin kunci SSH (ssh-copy-id)
  8. Eksekusi perintah jarak jauh (non-interaktif)
  9. Pengambilan dan tampilan paket jarak jauh di Wireshark
  10. Menyalin folder lokal ke server jauh melalui SSH
  11. Aplikasi GUI Jarak Jauh dengan Penerusan SSH X11
  12. Penyalinan file jarak jauh menggunakan rsync dan SSH
  13. SSH melalui jaringan Tor
  14. SSH ke instans EC2
  15. Mengedit file teks menggunakan VIM melalui ssh/scp
  16. Pasang SSH jarak jauh sebagai folder lokal dengan SSHFS
  17. Multipleksing SSH dengan ControlPath
  18. Streaming video melalui SSH menggunakan VLC dan SFTP
  19. Autentikasi dua faktor
  20. Melompat host dengan SSH dan -J
  21. Memblokir upaya brute force SSH menggunakan iptables
  22. SSH Escape untuk mengubah penerusan porta

Pertama dasar-dasarnya

Mengurai baris perintah SSH

Contoh berikut menggunakan parameter umum yang sering ditemui saat menyambung ke server jarak jauh SSH.

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

  • -v: Output debug sangat berguna saat menganalisis masalah autentikasi. Dapat digunakan berkali-kali untuk menampilkan informasi tambahan.
  • - p 22: pelabuhan koneksi ke server SSH jarak jauh. 22 tidak perlu ditentukan, karena ini adalah nilai default, tetapi jika protokol ada di port lain, maka kita tentukan menggunakan parameter -p. Port mendengarkan ditentukan dalam file sshd_config dalam format Port 2222.
  • -C: Kompresi untuk koneksi. Jika Anda memiliki koneksi yang lambat atau melihat banyak teks, ini dapat mempercepat koneksi.
  • neo@: Baris sebelum simbol @ menunjukkan nama pengguna untuk otentikasi pada server jauh. Jika Anda tidak menentukannya, nama pengguna akun yang saat ini Anda gunakan akan digunakan secara default (~$whoami). Pengguna juga dapat ditentukan menggunakan parameter -l.
  • remoteserver: nama host yang akan dihubungkan ssh, ini bisa berupa nama domain yang sepenuhnya memenuhi syarat, alamat IP, atau host apa pun di file host lokal. Untuk menyambung ke host yang mendukung IPv4 dan IPv6, Anda dapat menambahkan parameter ke baris perintah -4 ΠΈΠ»ΠΈ -6 untuk resolusi yang tepat.

Semua parameter di atas bersifat opsional, kecuali remoteserver.

Menggunakan file konfigurasi

Meski banyak yang familiar dengan file tersebut sshd_config, ada juga file konfigurasi klien untuk perintah tersebut ssh. Nilai bawaan ~/.ssh/config, tetapi dapat didefinisikan sebagai parameter untuk suatu opsi -F.

Host *
     Port 2222

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

Ada dua entri host dalam contoh file konfigurasi ssh di atas. Yang pertama berarti semua host, semuanya menggunakan parameter konfigurasi Port 2222. Yang kedua mengatakan itu untuk host server jarak jauh nama pengguna, port, FQDN, dan IdentityFile yang berbeda harus digunakan.

File konfigurasi dapat menghemat banyak waktu pengetikan dengan memungkinkan konfigurasi lanjutan diterapkan secara otomatis saat menyambung ke host tertentu.

Menyalin file melalui SSH menggunakan SCP

Klien SSH dilengkapi dengan dua alat lain yang sangat berguna untuk menyalin file koneksi ssh terenkripsi. Lihat di bawah untuk contoh penggunaan standar perintah scp dan sftp. Perhatikan bahwa banyak opsi ssh juga berlaku untuk perintah ini.

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

Dalam contoh ini file fotoku.png disalin ke server jarak jauh ke folder /media/data dan berganti nama menjadi mypic_2.png.

Jangan lupa tentang perbedaan parameter port. Di sinilah banyak orang terjebak ketika diluncurkan scp dari baris perintah. Inilah parameter portnya -PDan tidak -p, seperti di klien ssh! Anda akan lupa, tapi jangan khawatir, semua orang lupa.

Bagi yang familiar dengan konsol ftp, banyak perintah yang serupa sftp. Anda dapat melakukan mendorong, menempatkan ΠΈ lssesuai keinginan hati.

sftp neo@remoteserver

Contoh praktis

Dalam banyak contoh ini, hasil dapat dicapai dengan menggunakan metode yang berbeda. Seperti halnya kita semua buku teks dan contoh, preferensi diberikan pada contoh praktis yang cukup berhasil.

1. Proksi kaus kaki SSH

Fitur SSH Proxy adalah nomor 1 karena alasan yang bagus. Ini lebih kuat daripada yang disadari banyak orang dan memberi Anda akses ke sistem apa pun yang dapat diakses oleh server jarak jauh, menggunakan hampir semua aplikasi. Klien ssh dapat menyalurkan lalu lintas melalui proksi SOCKS dengan satu perintah sederhana. Penting untuk dipahami bahwa lalu lintas ke sistem jarak jauh akan datang dari server jarak jauh, ini akan ditunjukkan dalam log server web.

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

Di sini kita menjalankan proxy kaus kaki pada port TCP 8888, perintah kedua memeriksa apakah port tersebut aktif dalam mode mendengarkan. 127.0.0.1 menunjukkan bahwa layanan hanya berjalan di localhost. Kita dapat menggunakan perintah yang sedikit berbeda untuk mendengarkan di semua antarmuka, termasuk ethernet atau wifi, ini akan memungkinkan aplikasi lain (browser, dll.) di jaringan kita untuk terhubung ke layanan proxy melalui proxy ssh kaus kaki.

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

Sekarang kita dapat mengkonfigurasi browser untuk terhubung ke proxy kaus kaki. Di Firefox, pilih Pengaturan | Dasar | Pengaturan jaringan. Tentukan alamat IP dan port untuk terhubung.

Tips Praktis, Contoh, dan Terowongan SSH

Harap perhatikan opsi di bagian bawah formulir agar permintaan DNS browser Anda juga melalui proxy SOCKS. Jika Anda menggunakan server proxy untuk mengenkripsi lalu lintas web di jaringan lokal Anda, Anda mungkin ingin memilih opsi ini sehingga permintaan DNS disalurkan melalui koneksi SSH.

Mengaktifkan proksi kaus kaki di Chrome

Meluncurkan Chrome dengan parameter baris perintah tertentu akan mengaktifkan proxy kaus kaki, serta menyalurkan permintaan DNS dari browser. Percaya tapi periksa. Menggunakan tcpdump untuk memeriksa apakah kueri DNS tidak lagi terlihat.

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

Menggunakan aplikasi lain dengan proxy

Perlu diingat bahwa banyak aplikasi lain mungkin juga menggunakan proxy kaus kaki. Peramban web adalah yang paling populer dari semuanya. Beberapa aplikasi memiliki opsi konfigurasi untuk mengaktifkan server proxy. Yang lain memerlukan sedikit bantuan dengan program pembantu. Misalnya, rantai proxy memungkinkan Anda menjalankan melalui proxy kaus kaki Microsoft RDP, dll.

localhost:~$ proxychains rdesktop $RemoteWindowsServer

Parameter konfigurasi proxy Socks diatur dalam file konfigurasi proxychains.

Petunjuk: jika Anda menggunakan remote desktop dari Linux di Windows? Coba klien RDP gratis. Ini adalah implementasi yang lebih modern daripada rdesktop, dengan pengalaman yang jauh lebih lancar.

Pilihan untuk menggunakan SSH melalui proksi kaus kaki

Anda sedang duduk di kafe atau hotel - dan terpaksa menggunakan WiFi yang tidak dapat diandalkan. Kami meluncurkan proxy ssh secara lokal dari laptop dan memasang terowongan ssh ke jaringan rumah pada Rasberry Pi lokal. Dengan menggunakan browser atau aplikasi lain yang dikonfigurasi untuk proxy kaus kaki, kita dapat mengakses layanan jaringan apa pun di jaringan rumah kita atau mengakses Internet melalui koneksi rumah kita. Segala sesuatu antara laptop Anda dan server rumah Anda (melalui Wi-Fi dan internet ke rumah Anda) dienkripsi dalam terowongan SSH.

2. Terowongan SSH (penerusan port)

Dalam bentuknya yang paling sederhana, terowongan SSH hanya membuka port di sistem lokal Anda yang terhubung ke port lain di ujung lain terowongan.

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

Mari kita lihat parameternya -L. Hal ini dapat dianggap sebagai sisi lokal dari mendengarkan. Jadi pada contoh di atas, port 9999 mendengarkan di sisi localhost dan diteruskan melalui port 80 ke server jarak jauh. Harap dicatat bahwa 127.0.0.1 mengacu pada localhost di server jauh!

Ayo naik selangkah. Contoh berikut mengkomunikasikan port mendengarkan dengan host lain di jaringan lokal.

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

Dalam contoh ini kita terhubung ke port di server web, tapi ini bisa berupa server proxy atau layanan TCP lainnya.

3. Terowongan SSH ke host pihak ketiga

Kita dapat menggunakan parameter yang sama untuk menghubungkan terowongan dari server jarak jauh ke layanan lain yang berjalan pada sistem ketiga.

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

Dalam contoh ini, kami mengalihkan terowongan dari server jarak jauh ke server web yang berjalan pada 10.10.10.10. Lalu lintas dari server jarak jauh ke 10.10.10.10 tidak lagi berada di terowongan SSH. Server web pada 10.10.10.10 akan menganggap server jarak jauh sebagai sumber permintaan web.

4. Membalikkan terowongan SSH

Di sini kita akan mengkonfigurasi port pendengaran di server jarak jauh yang akan terhubung kembali ke port lokal di localhost kita (atau sistem lain).

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

Sesi SSH ini membuat koneksi dari port 1999 di server jarak jauh ke port 902 di klien lokal kami.

5. Proksi Terbalik SSH

Dalam hal ini, kami menyiapkan proxy kaus kaki pada koneksi ssh kami, tetapi proxy tersebut mendengarkan di ujung server yang jauh. Koneksi ke proxy jarak jauh ini sekarang muncul dari terowongan sebagai lalu lintas dari localhost kami.

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

Memecahkan masalah dengan terowongan SSH jarak jauh

Jika Anda memiliki masalah dengan opsi SSH jarak jauh yang berfungsi, hubungi netstat, antarmuka lain apa yang terhubung dengan port pendengaran. Meskipun kami menunjukkan 0.0.0.0 dalam contoh, tetapi jika nilainya Pelabuhan Gerbang Π² sshd_config mulai tidak, maka pendengar hanya akan terikat ke localhost (127.0.0.1).

Peringatan keamanan

Harap dicatat bahwa dengan membuka proxy terowongan dan kaus kaki, sumber daya jaringan internal mungkin dapat diakses oleh jaringan yang tidak tepercaya (seperti Internet!). Ini bisa menjadi risiko keamanan yang serius, jadi pastikan Anda memahami siapa pendengarnya dan apa saja yang bisa mereka akses.

6. Menginstal VPN melalui SSH

Istilah umum di kalangan spesialis metode serangan (pentester, dll.) adalah β€œtitik tumpu dalam jaringan.” Setelah koneksi dibuat pada satu sistem, sistem tersebut menjadi pintu gerbang untuk akses lebih lanjut ke jaringan. Titik tumpu yang memungkinkan Anda bergerak secara luas.

Untuk pijakan seperti itu kita bisa menggunakan proxy SSH dan rantai proxy, namun ada beberapa batasan. Misalnya, tidak mungkin bekerja secara langsung dengan soket, jadi kami tidak akan dapat memindai port dalam jaringan melalui Nmap SYN.

Dengan menggunakan opsi VPN yang lebih canggih ini, koneksi dikurangi menjadi tingkat 3. Kami kemudian dapat merutekan lalu lintas melalui terowongan menggunakan perutean jaringan standar.

Metode yang digunakan ssh, iptables, tun interfaces dan perutean.

Pertama, Anda perlu mengatur parameter ini sshd_config. Karena kami membuat perubahan pada antarmuka sistem jarak jauh dan klien, kami membutuhkan hak root di kedua sisi.

PermitRootLogin yes
PermitTunnel yes

Kemudian kita akan membuat koneksi ssh menggunakan parameter yang meminta inisialisasi perangkat tun.

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

Kita sekarang harus memiliki perangkat tun ketika menampilkan antarmuka (# ip a). Langkah selanjutnya akan menambahkan alamat IP ke antarmuka terowongan.

Sisi klien SSH:

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

Sisi Server SSH:

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

Sekarang kita memiliki rute langsung ke host lain (route -n ΠΈ ping 10.10.10.10).

Anda dapat merutekan subnet apa pun melalui host di sisi lain.

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

Di sisi jarak jauh Anda harus mengaktifkan 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

Ledakan! VPN melalui terowongan SSH pada lapisan jaringan 3. Itu adalah sebuah kemenangan.

Jika terjadi masalah, gunakan tcpdump ΠΈ pinguntuk menentukan penyebabnya. Karena kita bermain di layer 3, paket icmp kita akan melewati terowongan ini.

7. Salin kunci SSH (ssh-copy-id)

Ada beberapa cara untuk melakukan ini, namun perintah ini menghemat waktu dengan tidak menyalin file secara manual. Itu hanya menyalin ~/.ssh/id_rsa.pub (atau kunci default) dari sistem Anda ke ~/.ssh/authorized_keys di server jarak jauh.

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

8. Eksekusi perintah jarak jauh (non-interaktif)

Tim ssh Dapat dihubungkan ke perintah lain untuk antarmuka yang umum dan ramah pengguna. Cukup tambahkan perintah yang ingin Anda jalankan pada host jarak jauh sebagai parameter terakhir dalam tanda kutip.

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

Dalam contoh ini grep dieksekusi pada sistem lokal setelah log diunduh melalui saluran ssh. Jika filenya besar, akan lebih mudah untuk dijalankan grep di sisi jarak jauh hanya dengan mengapit kedua perintah dalam tanda kutip ganda.

Contoh lain melakukan fungsi yang sama seperti ssh-copy-id dari contoh 7.

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

9. Pengambilan dan tampilan paket jarak jauh di Wireshark

Saya mengambil salah satu milik kami contoh tcpdump. Gunakan untuk menangkap paket dari jarak jauh dan menampilkan hasilnya langsung di GUI Wireshark lokal.

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

10. Menyalin folder lokal ke server jauh melalui SSH

Trik bagus yang memampatkan folder menggunakan bzip2 (ini adalah opsi -j pada perintah tar), lalu mengambil alirannya bzip2 di sisi lain, membuat folder duplikat di server jauh.

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

11. Aplikasi GUI Jarak Jauh dengan SSH X11 Forwarding

Jika X diinstal pada klien dan server jarak jauh, maka Anda dapat menjalankan perintah GUI dari jarak jauh dengan jendela di desktop lokal Anda. Fitur ini sudah ada sejak lama, namun masih sangat berguna. Luncurkan browser web jarak jauh atau bahkan konsol VMWawre Workstation seperti yang saya lakukan dalam contoh ini.

localhost:~$ ssh -X remoteserver vmware

Tali yang diperlukan X11Forwarding yes dalam file sshd_config.

12. Penyalinan file jarak jauh menggunakan rsync dan SSH

rsync jauh lebih nyaman scp, jika Anda memerlukan pencadangan berkala pada suatu direktori, file dalam jumlah besar, atau file yang sangat besar. Ada fungsi untuk memulihkan dari kegagalan transfer dan hanya menyalin file yang diubah, yang menghemat lalu lintas dan waktu.

Contoh ini menggunakan kompresi gzip (-z) dan mode pengarsipan (-a), yang memungkinkan penyalinan rekursif.

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

13. SSH melalui jaringan Tor

Jaringan Tor anonim dapat menyalurkan lalu lintas SSH menggunakan perintah torsocks. Perintah berikut akan meneruskan proxy ssh melalui Tor.

localhost:~$ torsocks ssh myuntracableuser@remoteserver

kaus kaki akan menggunakan port 9050 di localhost untuk proxy. Seperti biasa, saat menggunakan Tor Anda perlu memeriksa dengan serius lalu lintas apa yang disalurkan dan masalah keamanan operasional (opsec) lainnya. Ke mana perginya pertanyaan DNS Anda?

14. SSH ke instans EC2

Untuk terhubung ke instans EC2, Anda memerlukan kunci pribadi. Unduh (ekstensi .pem) dari panel kontrol Amazon EC2 dan ubah izinnya (chmod 400 my-ec2-ssh-key.pem). Simpan kunci di tempat yang aman atau letakkan di folder Anda sendiri ~/.ssh/.

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

Parameter -i cukup memberitahu klien ssh untuk menggunakan kunci ini. Mengajukan ~/.ssh/config Ideal untuk mengonfigurasi penggunaan kunci secara otomatis saat menghubungkan ke host EC2.

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

15. Mengedit file teks menggunakan VIM melalui ssh/scp

Untuk semua pecinta vim Tip ini akan menghemat waktu. Dengan menggunakan vim file diedit melalui scp dengan satu perintah. Metode ini hanya membuat file secara lokal /tmplalu menyalinnya kembali setelah kita menyimpannya vim.

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

Catatan: formatnya sedikit berbeda dari biasanya scp. Setelah tuan rumah, kami punya dua kali lipat //. Ini adalah referensi jalur absolut. Satu garis miring akan menunjukkan jalur yang berhubungan dengan folder utama Anda users.

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

Jika Anda melihat kesalahan ini, periksa kembali format perintah. Ini biasanya berarti kesalahan sintaksis.

16. Memasang SSH jarak jauh sebagai folder lokal dengan SSHFS

Melalui sshfs - klien sistem file ssh - kita dapat menghubungkan direktori lokal ke lokasi jarak jauh dengan semua interaksi file dalam sesi terenkripsi ssh.

localhost:~$ apt install sshfs

Instal paket di Ubuntu dan Debian sshfs, lalu cukup pasang lokasi jarak jauh ke sistem kami.

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

17. Multipleksing SSH dengan ControlPath

Secara default, jika sudah ada koneksi ke server jarak jauh menggunakan ssh koneksi kedua menggunakan ssh ΠΈΠ»ΠΈ scp membuat sesi baru dengan otentikasi tambahan. Pilihan ControlPath memungkinkan sesi yang ada digunakan untuk semua koneksi berikutnya. Ini akan mempercepat proses secara signifikan: efeknya terlihat bahkan di jaringan lokal, dan terlebih lagi saat menghubungkan ke sumber daya jarak jauh.

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

ControlPath menentukan soket untuk memeriksa koneksi baru guna melihat apakah ada sesi aktif ssh. Opsi terakhir berarti bahkan setelah Anda keluar dari konsol, sesi yang ada akan tetap terbuka selama 10 menit, jadi selama waktu tersebut Anda dapat menyambungkan kembali ke soket yang ada. Untuk informasi lebih lanjut, lihat bantuan. ssh_config man.

18. Streaming video melalui SSH menggunakan VLC dan SFTP

Bahkan pengguna lama ssh ΠΈ vlc (Klien Video Lan) tidak selalu mengetahui opsi praktis ini ketika Anda benar-benar perlu menonton video melalui jaringan. Dalam pengaturan Berkas | Buka Aliran Jaringan program vlc Anda dapat memasukkan lokasi sebagai sftp://. Jika kata sandi diperlukan, prompt akan muncul.

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

19. Otentikasi dua faktor

Otentikasi dua faktor yang sama seperti rekening bank atau akun Google Anda berlaku untuk layanan SSH.

Tentu saja, ssh awalnya memiliki fungsi otentikasi dua faktor, yang berarti kata sandi dan kunci SSH. Keuntungan token perangkat keras atau aplikasi Google Authenticator adalah biasanya perangkat fisiknya berbeda.

Lihat panduan 8 menit kami untuk menggunakan Google Authenticator dan SSH.

20. Melompat host dengan ssh dan -J

Jika segmentasi jaringan berarti Anda harus berpindah melalui beberapa host ssh untuk sampai ke jaringan tujuan akhir, pintasan -J akan menghemat waktu Anda.

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

Hal utama yang perlu dipahami di sini adalah bahwa ini tidak sama dengan perintah ssh host1, lalu user@host1:~$ ssh host2 dll. Opsi -J secara cerdik menggunakan penerusan untuk memaksa localhost membuat sesi dengan host berikutnya dalam rantai. Jadi pada contoh di atas, localhost kita diautentikasi ke host4. Artinya, kunci localhost kami digunakan, dan sesi dari localhost ke host4 sepenuhnya dienkripsi.

Untuk kemungkinan seperti itu ssh_config tentukan opsi konfigurasi Proksi Lompat. Jika Anda sering harus melewati beberapa host, maka otomatisasi melalui konfigurasi akan menghemat banyak waktu.

21. Blokir upaya brute force SSH menggunakan iptables

Siapa pun yang telah mengelola layanan SSH dan melihat lognya mengetahui jumlah upaya brute force yang terjadi setiap jam setiap hari. Cara cepat untuk mengurangi gangguan pada log adalah dengan memindahkan SSH ke port non-standar. Buat perubahan pada file sshd_config melalui parameter konfigurasi Pelabuhan##.

Dengan iptables Anda juga dapat dengan mudah memblokir upaya untuk menyambung ke port setelah mencapai ambang batas tertentu. Cara mudah untuk melakukannya adalah dengan menggunakan OSSEC, karena tidak hanya memblokir SSH, tetapi juga melakukan sejumlah tindakan deteksi intrusi berbasis nama host (HIDS) lainnya.

22. SSH Escape untuk mengubah penerusan port

Dan contoh terakhir kami ssh dirancang untuk mengubah penerusan port dengan cepat dalam sesi yang ada ssh. Bayangkan skenario ini. Anda berada jauh di dalam jaringan; mungkin melompati lebih dari setengah lusin host dan memerlukan port lokal di workstation yang diteruskan ke Microsoft SMB dari sistem Windows 2003 yang lama (ada yang ingat ms08-67?).

Mengklik enter, coba masuk di konsol ~C. Ini adalah urutan kontrol sesi yang memungkinkan Anda membuat perubahan pada koneksi yang ada.

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.

Di sini Anda dapat melihat bahwa kami telah meneruskan port lokal 1445 ke host Windows 2003 yang kami temukan di jaringan internal. Sekarang jalankan saja msfconsole, dan Anda dapat melanjutkan (dengan asumsi Anda berencana menggunakan host ini).

Penyelesaian

Ini contoh, tip dan perintah ssh harus memberikan titik awal; Informasi lebih lanjut tentang masing-masing perintah dan kemampuan tersedia di halaman manual (man ssh, man ssh_config, man sshd_config).

Saya selalu terpesona dengan kemampuan mengakses sistem dan menjalankan perintah di mana pun di dunia. Dengan mengembangkan keterampilan Anda dengan alat seperti ssh Anda akan menjadi lebih efektif dalam permainan apa pun yang Anda mainkan.

Sumber: www.habr.com

Tambah komentar