SSH, lebih dari sekadar cangkang aman

SSH (Shell Aman) adalah protokol yang membantu kita mengakses komputer jarak jauh dengan aman, pada dasarnya seperti yang dilakukan Telnet, tetapi menggunakan algoritme enkripsi yang membantu kita menjaga koneksi tetap aman, terutama jika kita ingin mengakses komputer yang menjalankan beberapa fungsi penting dalam suatu organisasi.

Umumnya, untuk mengakses kita harus memberikan nama pengguna dan alamat komputer kita, sehingga server SSH meminta kita untuk kata sandi akses:

ssh usuario@equiporemoto

Dari saat klien memulai koneksi pertama antara komputer jarak jauh dan kami, informasinya sudah berjalan dengan aman, mencegah seseorang mendapatkan kredensial akses kami ke komputer tersebut, namun SSH adalah protokol yang sangat mudah beradaptasi yang menawarkan banyak kemungkinan.

SCP

Yang pertama adalah dapat mentransfer file antara klien dan komputer jarak jauh, tanpa perlu memasang server FTP atau NFS, cukup menggunakan SCP (Secure CoPy) yang diterapkan oleh sebagian besar server SSH:

scp archivo.tar.gz usuario@equiporemoto:/home/usuario
scp usuario@equiporemoto:/var/log/messages messages.txt

Tunneling SSH

Fitur ini sangat berguna, karena memungkinkan kita untuk mengirim dan menerima informasi yang belum tentu perintah shell antara klien dan komputer jarak jauh, misalnya penjelajahan biasa. Jika Anda tidak menebak kegunaan apa ini, pikirkan hal berikut: Anda perlu mengakses halaman, tetapi tempat di mana Anda berada memiliki firewall yang diimplementasikan yang memblokir halaman itu dengan tepat, oleh karena itu, kita dapat melakukan 'tunneling' dengan remote komputer yang tidak mengatakan blok dan menjelajahi halaman tersebut melalui sesi SSH kami:

ssh -D 8888 usuario@equiporemoto

Setelah terhubung, klien SSH kami 'mendengarkan' di port 8888 sebagai server proxy, sehingga kami dapat mengkonfigurasi browser kami dan semua lalu lintas dikirim melalui sesi SSH

Terowongan SSH

Contoh lain yang terjadi pada saya adalah ketika, karena beberapa batasan geografis, kami tidak dapat mengakses layanan web dari tempat kami berada, ketika membuat terowongan, layanan web tersebut mendeteksi IP server jarak jauh kami sebagai sumber, bukan IP klien kami. Ini agak setara dengan VPN (Virtual Private Network)

Membalik SSH

Jika karena alasan tertentu kita perlu mengakses komputer yang berada di belakang firewall dan tidak memungkinkan kita untuk mengarahkan lalu lintas SSH ke sana, kita dapat melakukan 'reverse SSH', sedemikian rupa sehingga komputer tersebut terhubung ke server SSH lain, di mana kita juga dapat terhubung, untuk mengakses peralatan di belakang firewall. Contoh yang terlintas dalam pikiran adalah ketika kita ingin membantu teman yang tidak tahu cara mengkonfigurasi pengalihan di modemnya, tetapi kita perlu mengakses komputernya dari jarak jauh:

Teman -> Modem -> SSH Server <- Tentang Kami

Langkah-langkah yang harus diikuti relatif sangat sederhana:

amigo
ssh -R 9999:localhost:22 usuario@servidorssh

kami
ssh usuario@servidorssh
Begitu masuk ke server SSH, kita dapat terhubung dengan tim teman kita menggunakan
ssh amigo@localhost -p 9999

Seperti yang Anda lihat, semua keajaiban terletak pada parameter -R, yang memberi tahu server perantara bahwa pada port 9999, komputer teman kita sedang mendengarkan sekarang sebagai server.

Ini hanya beberapa kemungkinan yang ditawarkan SSH kepada kita, tetapi saya mengundang Anda untuk bereksperimen dengan lebih banyak lagi, misalnya; kita dapat melakukan skrip tanpa pengawasan menggunakan kunci RSA, mengalihkan sesi X (mode grafis) ke lingkungan grafis kita, hanya untuk menyebutkan beberapa.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.

  1.   Astro dijo

    Artikel yang sangat bagus, saya sangat ingin pulang dan mulai berlatih.

    1.    adr14n dijo

      Terima kasih banyak! Ini sebenarnya adalah posting blog pertama saya dan sangat menyenangkan membaca komentar ini. Salam!

  2.   Pablo cardozo dijo

    Baru kemarin saya menanyakan sesuatu tentang topik ini, dan itu adalah sebagai berikut.

    Apakah ada cara untuk dapat memindai seluruh folder tetapi dengan mempertimbangkan tanggal file? Dengan kata lain, saya memiliki folder dengan banyak file yang saya unduh beberapa waktu yang lalu, saya tertarik untuk mengunduh hanya apa yang telah diunggah ke folder itu dari tanggal tertentu.

    Salam dan terima kasih banyak sebelumnya.

    1.    hidup dijo

      Anda dapat melakukannya dengan RSYNC melalui SSH. 😉

      1.    giskard dijo

        rsync adalah tutup stoples !!! 😀

      2.    Eduardo dijo

        Saya sarankan Anda mencoba serempak, ini SPEKTAKULER, tersedia di repo (setidaknya debian dan ubuntu)

        http://www.cis.upenn.edu/~bcpierce/unison/

        Saya menggunakannya untuk membuat backup harian catatan saya ke komputer lain, selain memiliki direktori yang disinkronkan di komputer yang berbeda.

        Sangat mudah digunakan

        Semoga bermanfaat untuk Anda!

        Berhasil
        Eduardo

    2.    Kidal dijo

      Tampaknya lebih seperti tugas untuk rsync, tetapi saya tidak tahu apakah ada parameter untuk melakukan itu secara khusus, jika tidak, mungkin itu harus ditangani dari skrip

    3.    adr14n dijo

      Apa yang terjadi pada saya adalah membuat sebuah ls yang diurutkan berdasarkan tanggal, dan dari sana salin yang Anda butuhkan dengan scp sederhana, karena scp tidak memiliki banyak fungsi seperti yang mereka katakan, ia memiliki rsync.

  3.   anonim dijo

    Saya membuktikan bahwa reverse ssh mewah, saya telah menggunakannya antara pc saya dan yang lain yang lebih dari 700 Km dan tidak ada masalah.
    Terima kasih untuk artikel ini, sangat berharga.

  4.   berhenti dijo

    Sangat asin! Haha Saya tidak tahu bahwa ssh memiliki banyak kemungkinan, saya sudah ingin belajar cara mengatur server ssh dan mulai bereksperimen dengan kemampuannya, hanya satu hal, dapatkah Anda menjelaskan apa yang dilakukan setiap parameter?

    1.    adr14n dijo

      Menurut ssh man itu sendiri, -D berfungsi untuk menentukan 'penerusan aplikasi dinamis' secara lokal, yang seperti yang saya jelaskan di artikel, berfungsi untuk melewatkan lalu lintas melalui terowongan dalam sesi SSH yang sama. -R menentukan port jarak jauh yang akan diarahkan ke komputer lokal kami melalui 'penerusan'. Dan akhirnya -p menentukan ke port mana klien harus terhubung, jika tidak menggunakan port standar: 22

  5.   manueldn dijo

    Hal baik yang menyentuh topik ini, saya punya pertanyaan tentang kunci ssh, dapatkah Anda menghasilkan lebih dari satu kunci untuk layanan yang berbeda? Saya harap mereka membuat posting tentang mengelola kunci ssh, saya tahu bahwa di google ada jawabannya., Tapi mudah-mudahan mereka akan membicarakannya,

    Salam!

    1.    adr14n dijo

      Saat Anda menggunakan otentikasi melalui kunci SSL, Anda dapat mengekspor yang sama (komputer Anda) ke layanan yang berbeda dan dengan cara yang sama, jika komputer Anda adalah server, Anda dapat memasukkan kunci yang berbeda dari komputer yang berbeda. Saya tidak tahu apakah saya menjawab pertanyaan Anda, tetapi saya mengerti itu. salam

  6.   Luis dijo

    Saya rasa saya ingat bahwa ada cara melalui ssh yang memungkinkan kita menjalankan aplikasi dari jarak jauh dan melihatnya di komputer kita seolah-olah itu adalah aplikasi lokal.

    Misalnya kita bisa menjalankan firefox, kita melihat dan mengontrolnya di komputer lokal kita tapi prosesnya berjalan di komputer jarak jauh.

    Sangat berguna pada komputer dengan sedikit sumber daya tetapi sayangnya saya tidak mengontrol masalah dan tidak tahu cara mengkonfigurasi komputer untuk melakukannya.

    Apakah ada yang tahu tentang itu?

    1.    Staf dijo

      Untuk sesuatu seperti itu akan lebih mudah menggunakan VNC dan Anda dapat melakukan tunnel dengan SSH.

      1.    x11tete11x dijo

        @Staff bagi saya tidak akan nyaman menggunakan VNC .. dengan VNC jika saya tidak buruk Anda membawa seluruh desktop ..

        @Luis, yang Anda lakukan cukup dengan menambahkan parameter "-X" ke ssh (Anda harus mengizinkan penerusan X di server Anda)

        http://i.imgur.com/NCpfzBL.jpg

      2.    Staf dijo

        @ xnx.cn
        Mempertimbangkan apa yang Luis sebutkan, saya berpikir untuk menawarkan alternatif lain, karena:

        1. "Sangat berguna pada komputer dengan sedikit sumber daya ..."

        -Dalam kasus aplikasi tunggal, mungkin tidak menghabiskan begitu banyak sumber daya tetapi mencoba membuka 10 jendela dengan x forwarding terus membuat sistem bekerja lebih keras daripada memiliki satu instance VNC, karena VNC tidak "menghadirkan seluruh desktop"
        -Ketika menutup program di klien, itu berakhir sama di server (Seseorang mengoreksi saya jika saya salah), sementara dengan VNC Anda dapat, misalnya, meninggalkan sepanjang malam mengunduh torrent dan masuk lagi di pagi dan semuanya akan berlanjut seperti yang telah saya tinggalkan.
        -VNC adalah protokol agnostik sistem, Anda dapat mengaksesnya dari klien di Win, Andorid, Mac OSX, dll. dan gunakan program GNU / Linux Anda, tanpa harus menginstal apa pun selain klien VNC itu sendiri.

        Dan 2. "... sayangnya saya tidak mengontrol masalah dan saya tidak tahu cara mengkonfigurasi komputer untuk melakukannya."

        Jauh lebih mudah (Dan tanpa risiko untuk mengetik sesuatu yang salah dan memulai ulang tanpa desktop) untuk menginstal VNC dan mengkonfigurasi terowongan SSH (Hal ini dilakukan dengan GUI) daripada memindahkan file konfigurasi X.

      3.    Luis dijo

        Terimakasih atas tanggapan Anda berdua.

        Saya telah menggunakan SSH bersama-sama dengan SHFS untuk waktu yang lama untuk mengakses konten jarak jauh dari server kecil saya, tetapi saya tidak pernah dapat menjalankan aplikasi jarak jauh dalam lingkungan grafis.

        Saya akan mencoba kedua opsi untuk melihat cara kerjanya. Apa yang saya bicarakan pada awalnya tampak lebih sederhana karena menurut x11tete11x, Anda hanya perlu menambahkan satu parameter.

        Kemudian saya akan melihat apakah saya dapat menemukan cara sederhana untuk mengkonfigurasi VNC karena saya sedikit membantu, saya adalah pengguna Arch jadi pasti akan ada informasi di wiki, hal lain yang harus saya ketahui. hehehe

        Sebuah ucapan.

    2.    adr14n dijo

      Ini dapat dilakukan dengan melewatkan -X parameter ke sesi, tetapi Anda harus memiliki server X Anda dikonfigurasi untuk menerima koneksi dari komputer di jaringan, saya pikir itu dikonfigurasi dengan utilitas xhost. Seperti yang disebutkan oleh Staf, VNC juga merupakan opsi yang sangat bagus

    3.    mario dijo

      Ini penerusan X11, di sini di situs yang sama ini ada postingan tentang itu:
      https://blog.desdelinux.net/x11-forwarding-a-traves-de-ssh/

    4.    Luis dijo

      Terimakasih atas infonya teman-teman.

      Saya berkata, saya akan melakukannya dengan menggunakan kedua opsi untuk melihat mana yang lebih cocok untuk saya.

      Salam!