Mengenal SSH

Tidak ada komentar


SSH menggunakan kriptografi kunci publik untuk mengotentikasi komputer remote dan biarkan komputer remote untuk mengotentikasi pengguna, jika perlu. SSH biasanya digunakan untuk login ke mesin remote dan mengeksekusi berbagai perintah, tetapi juga mendukung tunneling, forwarding TCP port dan X11 connections; itu dapat mentransfer file menggunakan terkait SFTP atau SCP protocols. SSH menggunakan klien-server model. Yang standar TCP port 22 telah ditetapkan untuk menghubungi server SSH. Sebuah klien program SSH ini biasanya digunakan untuk membangun koneksi ke SSH daemon untuk dapat diremote. Keduanya biasanya terdapat pada sistem operasi modern, termasuk Mac OS X, Linux, FreeBSD, Solaris dan OpenVMS. Tersedia versi berpemilik, freeware dan open source untuk berbagai tingkat kerumitan dan kelengkapan.


SEJARAH SSH
Pada tahun 1995, Tatu Ylönen, seorang peneliti di Helsinki University of Technology, Finlandia, merancang versi pertama protokol (sekarang disebut SSH-1) karena didorong oleh peristiwa serangan pembongkaran sandi di jaringan universitas. Tujuan dari pembuatan SSH adalah untuk menggantikan fungsi rlogin, TELNET, dan rsh protokol, yang tidak memberikan otentikasi kuat atau menjamin kerahasiaan. Ylönen merilis SSH sebagai freeware pada bulan Juli 1995, dan tool tersebut berkembang dengan cepat untuk mendapatkan popularitas. Menjelang akhir 1995, basis pengguna SSH telah tumbuh hingga 20.000 pengguna di lima puluh negara.

Pada bulan Desember 1995, Ylönen mendirikan SSH Communications Security untuk memasarkan dan mengembangkan SSH. Versi asli dari software yang digunakan SSH adalah berbagai potongan perangkat lunak bebas, seperti GNU libgmp, tetapi versi yang dikeluarkan oleh Secure SSH Communications semakin berkembang menjadi perangkat lunak berpemilik.
Pada tahun 1996, sebuah versi revisi protokol dirancang, SSH-2, yang tidak cocok dengan SSH-1. Fitur SSH-2 mencakup kedua fitur keamanan dan peningkatan perbaikan atas SSH-1. Keamanan yang lebih baik, misalnya, datang melalui algoritma pertukaran kunci Diffie-Hellman dan pemeriksaan dengan integritas yang kuat melalui kode otentikasi pesan. Fitur baru dari SSH-2 mencakup kemampuan untuk menjalankan sejumlah sesi shell melalui satu koneksi SSH.

Pada tahun 1998 ditemukan kerentanan yang digambarkan dalam 1,5 SSH sehingga memungkinkan masuknya konten yang tidak sah ke dalam aliran data SSH terenkripsi karena integritas data tidak mencukupi perlindungan dari CRC-32 yang digunakan dalam protokol versi ini. Sebuah perbaikan (SSH Compentation Attack Detector) diperkenalkan ke dalam banyak implementasi.
Pada tahun 1999, pengembang menginginkan versi perangkat lunak bebas untuk tersedia kembali seperti rilis 1.2.12, yang lebih tua dari program ssh asli, yang terakhir dirilis di bawah lisensi open source. OSSH Björn Grönvall ini kemudian dikembangkan berdasarkan basis kode ini. Tak lama kemudian, para pengembang OpenBSD menggunakan kode Grönvall untuk melakukan pengembanga yang lebih luas di atasnya, sehingga terciptalah OpenSSH, yang dimasukkan dalam rilis OpenBSD 2.6. Dari versi ini, sebuah cabang "portable" dibentuk untuk dapat memportingkan OpenSSH pada sistem operasi lain.

Diperkirakan, sejak tahun 2000, terdapat lebih dari 2.000.000 pengguna SSH.
Pada tahun 2005, OpenSSH adalah satu-satunya aplikasi ssh yang paling populer, yang diinstal secara default dalam sejumlah besar sistem operasi. Sementara itu, OSSH telah menjadi usang.
Pada tahun 2006, protokol SSH-2 yang telah disebutkan di atas, diusulkan untuk menjadi Standar Internet dengan penerbitan oleh IETF "secsh" work group dari RFC (lihat referensi).

Pada tahun 2008 sebuah kelemahan kriptografi ditemukan pada SSH-2 yang memungkinkan pengambilan sampai 4 byte plaintext dari aliran data SSH tunggal di bawah kondisi khusus. Namun hal ini telah diperbaiki dengan mengubah mode enkripsi standar OpenSSH 5,2.

PENGGUNAAN SSH
SSH adalah sebuah protokol yang dapat digunakan untuk berbagai aplikasi. Beberapa aplikasi di bawah ini mungkin membutuhkan fitur-fitur yang hanya tersedia atau yang kompatibel dengan klien atau server SSH yang spesifik. Sebagai contoh, menggunakan protokol SSH untuk mengimplementasikan VPN adalah dimungkinkan, tapi sekarang hanya dapat dengan implementasi server dan klien OpenSSH.

  • untuk login ke shell pada remote host (menggantikan Telnet dan rlogin)
  • untuk mengeksekusi satu perintah pada remote host (menggantikan rsh)
  • untuk menyalin file dari server lokal ke remote host. Lihat SCP, sebagai alternatif untuk rcp
  • dalam kombinasi dengan SFTP, sebagai alternatif yang aman untuk FTP transfer file
  • dalam kombinasi dengan rsync untuk mem-backup, menyalin dan me-mirror file secara efisien dan aman
  • untuk port forwarding atau tunneling port (jangan dikelirukan dengan VPN yang rute paket antara jaringan yang berbeda atau menyambung dua wilayah broadcast menjadi satu)

untuk digunakan sebagai VPN yang terenkripsi penuh. Perhatikan bahwa hanya OpenSSH server dan klien yang mendukung fitur ini

untuk meneruskan X11 melalui beberapa host

untuk browsing web melalui koneksi proxy yang dienkripsi dengan klien SSH yang mendukung protokol SOCKS

untuk mengamankan mounting direktori di server remote sebagai sebuah sistem file di komputer lokal dengan menggunakan SSHFS

untuk mengotomasi remote monitoring dan pengelolaan server melalui satu atau lebih dari mekanisme seperti yang dibahas di atas
SSHOpenSSHPortforwarding

Port forwarding atau port mapping pengalihan (redirection) koneksi dari suatu IP:Port ke IP:Port yang lain. Ini artinya adalah semua koneksi yang ditujukan ke IP:Port asal akan dialihkan ke IP:Port tujuan seolah-olah client sedang menghubungi IP:Port tujuan secara langsung.

Portforwarding melalui SSH ( SSH tunneling ) membuat sambungan aman antara komputer lokal dan remote machine melalui layanan yang dapat disampaikan. Karena sambungan terenkripsi, SSH tunneling berguna untuk transmisi informasi yang menggunakan protokol terenkripsi, seperti IMAP, VNC, atau IRC.

Jenis Port Forwarding

Pelabuhan fitur forwarding SSH bisa menyelundupkan berbagai jenis lalu lintas Internet ke dalam atau keluar dari jaringan. Ini dapat digunakan untuk menghindari monitoring jaringan atau sniffers, atau bypass router dikonfigurasi di Internet.
Catatan: Anda juga mungkin perlu mengubah pengaturan dalam program lain (seperti web browser) untuk menghindari filter ini.

Peringatan :
Menyaring dan memantau biasanya diimplementasikan karena suatu alasan. Bahkan jika Anda tidak setuju dengan alasan itu, departemen TI Anda mungkin tidak akan bersikap baik kepada Anda mencemoohkan aturan mereka.

Ada tiga jenis port forwarding dengan SSH:
Port forwarding lokal : koneksi dari klien SSH akan diteruskan melalui server SSH , maka ke server tujuan
Port forwarding remote : koneksi dari server SSH akan diteruskan melalui klien SSH , maka ke server tujuan
Port forwarding dinamis : koneksi dari berbagai program akan diteruskan melalui klien SSH , maka melalui server SSH, dan akhirnya ke server tujuan beberapa

Port forwarding lokal adalah jenis yang paling umum. Sebagai contoh, port forwarding lokal memungkinkan Anda melewati firewall perusahaan yang menghalangi Wikipedia.

Pada local port forwarding, komputer yang bertindak sebagai ssh client akan menjadi titik masuk koneksi yang akan diforward dan komputer yang bertindak sebagai ssh server menjadi titik keluar. Jadi koneksi yang masuk ke titik masuk di komputer ssh client akan diforward ke tujuan dari komputer ssh server. Gambar di bawah ini ilustrasi lain dari ssh local port forwarding.







Port forwarding remote kurang umum. Sebagai contoh, port forwarding jauh memungkinkan Anda terhubung dari server SSH ke komputer di intranet perusahaan Anda.



Pada remote port forwarding, komputer yang bertindak sebagai ssh server akan menjadi titik masuk koneksi yang akan diforward dan komputer yang bertindak sebagai ssh client menjadi titik keluar. Jadi koneksi yang masuk ke titik masuk di komputer ssh server akan diforward ke tujuan dari komputer ssh client. Gambar di bawah ini ilustrasi lain dari ssh remote port forwarding.







Jadi yang perlu diingat dalam perbedaan antara local dan remote port forwarding adalah posisi titik masuk koneksi yang akan diforward. Bila titik masuknya ada di komputer yang berperan sebagai ssh client, maka itu adalah local port forwarding, namun bila titik masuknya di komputer ssh server, maka itu adalah remote port forwarding.



Dalam bahasa sederhananya, disebut local karena dari sudut pandang ssh client, titik masuknya ada di localhost, dan disebut remote karena titik masuknya bukan di localhost, tapi di komputer ujung sana.



Port forwarding dinamis jarang digunakan. Sebagai contoh, port forwarding dinamis memungkinkan Anda melewati firewall perusahaan yang menghalangi akses web sama sekali. Meskipun ini sangat kuat, dibutuhkan banyak pekerjaan yang harus diatur, dan itu biasanya lebih mudah untuk menggunakan port forwarding lokal untuk situs tertentu yang ingin Anda akses.



Port-forwarding adalah teknik luas didukung dan fitur yang ditemukan di semua klien utama SSH dan server, meskipun tidak semua klien melakukannya dengan cara yang sama. Untuk bantuan tentang cara menggunakan klien tertentu, lihat dokumentasi klien. Sebagai contoh, manual Putty memiliki bagian port forwarding di putty.



Untuk menggunakan port forwarding, Anda perlu memastikan port forwarding diaktifkan di server anda.Anda juga perlu memberitahu klien Anda sumber dan tujuan nomor port untuk digunakan. Jika Anda menggunakan forwarding lokal atau remote, Anda perlu memberitahu klien Anda dengan server tujuan . Jika Anda menggunakan port forwarding dinamis, Anda perlu mengkonfigurasi program Anda untuk menggunakan server SOCKS proxy. Sekali lagi, bagaimana untuk melakukan hal ini tergantung pada klien SSH yang Anda gunakan, sehingga Anda mungkin perlu berkonsultasi dokumentasi Anda.

Tidak ada komentar :

Posting Komentar