WORKSHEET ADMINISTRASI SERVER
MANAJEMEN REMOTE ACCESS
OLEH : OMAR M. A. A.
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN JL. SRAGEN SAWANG, KEC. TAPIN SELATAN, KAB. TAPIN KALIMANTAN SELATAN. 71181
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS TUJUAN 1. Siswa memahami konsep dasar remote access. 2. Siswa mampu melakukan instalasi software remote access. 3. Siswa mampu mengkonfigurasi software remote access. 4. Siswa mampu melakukan pengujian terhadap software remote access.
ALAT DAN BAHAN A. Alat 1. Laptop / PC. B. Bahan 1. Software VirtualBox. 2. Software Putty. 3. Virtual Machine yang terinstal Debian Server. 4. CD / DVD Debian Server.
PRASYARAT PRAKTIKUM 1. Virtual Machine sudah terkoneksi secara fisik (perangkat) dan secara logik (konfigurasi, mis: IP Address) dengan Real Machine (PC/Laptop) menggunakan koneksi Host-Only Adapter.
SKENARIO
Gambar 1. Skenario Praktikum
1
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS DASAR TEORI A. Remote Access Remote access yang berarti akses dari jarak jauh merupakan suatu cara untuk menajemen server tanpa harus secara fisik menyentuh server dan melakukan manajemen di daerah operasional server. Remote access berguna untuk membuat pekerjaan bisa dilakukan di mana saja dan kapanpun selama ada akses jaringan ke server. Remote access bisa dilakukan dengan berbagai cara syarat server yang di remote harus bisa diakses oleh host yang bersangkutan baik melalui jaringan internet publik atau menggunakan VPN. Pada awalnya, terdapat beberapa software yang sering digunakan untuk melakukan remote access ini seperti telnet dan relogin. Dengan pesatnya perkembangan teknologi dan perangkat lunak, maka pada software-software lama inipun ditemukan banyak sekali kelemahan keamanan. Kemudian, dikembangkanlah perangat lunak yang menggunakan motode enkripsi yang kuat seperti Secure Shell (SSH) dan Secure Socket Layer (SSL). Pada praktikum kali ini, kita hanya akan membahas mengenai SSH saja. B. Secure Shell (SSH) SSH adalah protokol jaringan yang memungkinkan pertukaran data melalui saluran aman antara dua perangkat jaringan. SSH banyak digunakan pada sistem berbasis Linux dan Unix untuk mengakses akun shell, SSH dirancang sebagai pengganti Telnet dan shell remote tak aman lainnya, yang mengirim informasi, terutama kata sandi, dalam bentuk teks sederhana yang membuatnya mudah untuk dicegat. Enkripsi yang digunakan oleh SSH menyediakan kerahasiaan dan integritas data melalui jaringan yang tidak aman seperti Internet. SSH menggunakan kriptografi kunci publik untuk mengotentikasi komputer remote. 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. Pada awalnya SSH dikembangkan oleh Tatu Yl nen di Helsinki University of Technology. SSH memberikan alternatif yang aman terhadap sesi remote tradisional dan file transfer protocol seperti telnet dan relogin. Protokol SSH mendukung otentikasi terhadap remote host, yang dengan demikian meminimalkan ancaman pemalsuan identitas client lewat IP address spoofing maupun manipulasi DNS. Selain itu, SSH mendukung beberapa protocol enkripsi 2
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS secret key (DES, TripleDES, IDEA, dan Blowfish) untuk membantu memastikan privacy dari komunikasi, yang dimulai dengan username/password private connection pada application layer, mencakup keseluruhan awal. SSH menyediakan suatu virtual interactive logon protocol (ssh dan sshd) serta fasilitas untuk secure transfer file (scd). Setelah meng-install SSH, sangat dianjurkan untuk men-disable telnet dan rlogin. Implementasi SSH pada linux diantaranya adalah OpenSSH. SSH merupakan paket program yang digunakan sebagai pengganti yang aman untuk rlogin, rsh dan rcp. Ia menggunakan public-key cryptography untuk mengenkripsi komunikasi antara dua host, demikian pula untuk autentikasi pemakai. Ia dapat digunakan untuk login secara aman ke remote host atau menyalin data antar host, sementara mencegah man-in-the-middle (MITM) attacks (pembajakan sesi) dan DNS spoofing atau dapat dikatakan Secure Shell adalah program yang melakukan loging terhadap komputer lain dalam jaringan, mengeksekusi perintah lewat mesin secara remote, dan memindahkan file dari satu mesin ke mesin lainnya. SSH berjalan dengan dua basis, satu sebagai server, dan satu sebagai client. SSH menggunakan kriptografi publik untuk melakukan autentikasi pengguna. SSH akan membuat public-private key pairs yang digunakan untuk autentikasi dan enkripsi, yaitu sebuah kunci pasangan yang akan digunakan untuk autentikasi pengguna. Setelah itu pengguna bisa memasukkan kata sandi untuk masuk. Cara lainya adalah SSH akan menggunakan kunci pasangan yang harus di pasang secara manual. Dengan cara ini membutuhkan waktu yang lama, dan SSH akan melakukan pengecekkan apakah pengguna dengan kunci publik yang diberikan mempunyai kunci pribadi yang sesuai. Tapi kata sandi sudah tidak dibutuhkan lagi, dengan ini harus lebih berhati-hati dalam autentikasi kunci publik yang tidak dikenal.
Gambar 2. Alur Kerja SSH
3
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS Berbeda dengan alur data Telnet biasa, yang berbentuk seperti di bawah ini.
Gambar 3. Alur Data Telnet Di mana tidak ada proses penyembunyian data, sehingga data sensitif bisa ditangkap oleh pihak yang mempunyai akses ke jaringan ini. Dengan menggunakan SSH, kita bisa masuk ke dalam server dari jarak jauh, melewati koneksi yang tidak aman, dan tetap mendapat jaminan keamanan dari SSH. Secara default, SSH server berjalan di atas port 22. Port ini bisa diubah sesuai kebutuhan dan biasanya dirubah untuk kamuflase yang membuat orang mengira tidak ada SSH server di server tersebut. C. Cara Kerja SSH Misalkan suatu client mencoba mengakses suatu linux server melalui SSH. SSH daemon yang berjalan baik pada linux server maupun SSH client telah mempunyai pasangan public/private key yang masing-masing menjadi identitas SSH bagi keduanya. Langkah-langkah koneksinya adalah sebagai berikut : 1. Client bind pada local port nomor besar dan melakukan koneksi ke port 22 pada server. 2. Client dan server setuju untuk menggunakan sesi SSH tertentu. Hal ini penting karena SSH v.1 dan v.2 tidak kompatibel. 3. Client meminta public key dan host key milik server. 4. Client dan server menyetujui algoritma enkripsi yang akan dipakai (misalnya TripleDES atau IDEA). 5. Client membentuk suatu session key yang didapat dari client dan mengenkripsinya menggunakan public key milik server. 6. Server men-decrypt session key yang didapat dari client, meng-re-encryptnya dengan public key milik client, dan mengirimkannya kembali ke client untuk verivikasi. 4
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS 7. Pemakai mengotentikasi dirinya ke server di dalam aliran data terenkripsi dalam session key tersebut. Sampai disini koneksi telah terbentuk, dan client dapat selanjutnya bekerja secara interaktif pada server atau mentransfer file ke atau dari server. Langkah ini dapat dilaksanakan dengan berbagai cara (username/password, kerberos, RSA dan lain-lain).
LANGKAH KERJA A. Instalasi 1. Before starting the installation, make sure bahwa CD/DVD instalasi Debian server sudah dimasukkan ke dalam Virtual Machine. 2. Untuk menginstal SSH pada Debian server, gunakan perintah: #apt-get install openssh-server
Gambar 4. Perintah Instalasi OpenSSH Server
5
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS Jika Anda lupa memasukkan CD/DVD ke dalam Virtual Machine, maka tampilannya akan seperti di bawah ini.
Gambar 5. Tampilan jika CD/DVD tidak dimasukkan
Di bawah ini adalah tampilan proses instalasi OpenSSH Server.
Gambar 6. Proses instalasi OpenSSH Server
6
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS If the installation is successful, the appearance may be like this.
Gambar 7. Intalasi OpenSSH Server berhasil B. Pengujian Awal 1. Untuk melakukan pengujian, bukalah software putty.
Gambar 8. Tampilan Awal Putty 7
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS 2. Pada kotak isian “Host Name (or IP Address)”, isilah dengan IP Address server dan isi kotak isian Port dengan angka 22 (port default SSH). Klik Open button.
Gambar 9. Mengisi IP Address dan port server
3. Jika Anda menemukan tampilan seperti di bawah ini, klik Yes button.
Gambar 10. Putty Security Alert 8
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS 4. Next step, loginlah menggunakan username dan password Anda seperti biasa. Jika login berhasil, maka OpenSSH Server sudah berjalan dengan baik.
Gambar 11. Tampilan saat berhasil login ke dalam sistem melalui SSH C. Configuration Pada OpenSSH Server, terdapat satu file konfigurasi utama untuk mengkostumasi konfigurasi atau setting dari OpenSSH Server yaitu file “sshd_config” yang berada pada direktori /etc/ssh/. 1. Mengganti Port a. Editlah file konfigurasi SSH menggunakan text editor kesukaan Anda. Pada screenshot di bawah ini digunakan text editor nano.
Gambar 12. Isi file konfigurasi sshd_config 9
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS b. Pada bagian atas file, cari bari “Port” dan gantilah parameter 22 menjadi 212 seperti di bawah ini.
Gambar 13. Mengganti Port SSH c. Kemudian simpan file konfigurasi
Gambar 14. Menyimpan file konfigurasi
10
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS d. Restart service ssh dengan perintah: #service ssh restart
Gambar 15. Me-restart service SSH e. Bukalah kembali putty dan loginlah menggunakan port yang baru. f. Penggantian port ini perlu dilakukan sebagai langkah pengamanan awal bagi service SSH dari serangan. Menggunakan port standar SSH (22) sangat tidak dianjurkan karena sudah menjadi pengetahuan publik bahwa SSH mengguanakan port 22. Dengan demikian, setiap orang dapat melakukan percobaan untuk mengetes apakah pada server kita terinstal SSH atau tidak menggunakan port 22. 2. Menolak Akses Langsung Root a. Buka kembali file konfigurasi SSH. b. Carilah baris “PermitRootLogin”.
Gambar 16. Mencari baris “PermitRootLogin”
11
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS c. Gantilah parameter menjadi “no” seperti pada gambar di bawah ini.
Gambar 17. Mengganti parameter “PermitRootLogin” d. Simpanlah file konfigurasi. Restart kembali service SSH. e. Cobalah untuk login menggunakan putty sebagai root. Jika permintaan login ditolak, maka konfigurasi sudah berhasil.
Gambar 18. Login user root ditolak
f. Sama halnya dengan port 22, sudah menjadi pengetahuan publik bahwa pada setiap sistem linux itu pasti terdapat username root. Oleh karena itu, sangat disarankan untuk menonaktifkan fitur “PermitRootLogin” ini untuk mempersulit usaha penetrasi yang dilakukan oleh penyerang. 12
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS 3. Maksimal Otentikasi Persesi a. Selain port 22 dan username root, satu hal lagi yang perlu kita batasi adalah jumlah maksimal kegagalan untuk login. Secara default, SSH menetapkan bahwa seseorang yang mencoba untuk login mendapat tiga kali kesempatan untuk mencoba. Jika user melakukan kesalahan sebanyak tiga kali (misal salah ketik username atau salah ketik password), kata sesi akan berakhir dan user pun harus memulai sesi baru yang dalam hal ini adalah membuka kembali aplikasi putty. b. Buka kembali file konfigurasi SSH. c. Pada baris paling bawah file konfigurasi, tambahkanlah sintak berikut: MaxAuthTries n huruf n dapat diganti dengan angka sesuka Anda. Pada gambar di bawah, dicontohkan angka dua yang berarti user hanya mendapat kesempatan mencoba dua kali.
Gambar 19. Menambahkan sintaks MaxAuthTries d. Simpanlah file konfigurasi dan kemudian restartlah service SSH. e. Cobalah untuk login menggunakan putty dan buatlah kesalahan dengan sengaja (misal salah ketik password) dan hitunglah apakah jumlah kesempatan yang diberikan kepada Anda sudah sesuai dengan parameter yang Anda berikan pada sintaks MaxAuthTries.
13
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS 4. Mengatur waktu tunggu a. Bayangkanlah bahwa ada seseorang yang mencoba untuk masuk ke dalam sistem secara ilegal dan anggap saja bahwa dia sudah menemukan IP Address server dan Port SSH Anda. Pertama-tama dia akan membuka software putty terlebih dahulu dan kemudian dia memasukkan IP Address serta Port seperti biasa lalu menekan tombol Open. Saat dia menemui tulisan “login as : ” pada putty, sering kali seorang penyerang terdiam sejenak berpikir dan mencoba mereka-reka password yang mungkin digunakan oleh si admin. Waktu yang digunakan oleh penyerang untuk berpikir ini disebut dengan istilah LoginGrateTime. Secara default, OpenSSH Server menyediakan waktu selama 120 detik untuk berpikir. Jika selama waktu tersebut sang penyerang tidak melakukan apapun, maka sesi akan diakhiri langsung oleh SSH. b. Bukalah kembali file konfigurasi SSH. c. Carilah baris LoginGrateTime.
Gambar 20. Mencari baris LoginGrateTime
14
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS d. Gantilah parameternya sesuai dengan keinginan Anda. Pada gambar di bawah, dicontohkan parameternya hanya 10 detik.
Gambar 21. Mengganti parameter LoginGrateTime e. Simpanlah file konfigurasi dan restartlah service SSH. f. Bukalah putty Anda kembali kemudian cobalah login ke server. Saat Anda diminta mengetikkan password, jangan lakukan apapun dan tunggu selama waktu yang Anda tentukan pada parameter LoginGrateTime. Jika putty tertutup sendiri atau menjadi inactive setelah waktu yang ditentukan habis, maka konfigurasi Anda berhasil. 5. Memperkuat kunci a. Langkah pengamanan berikutnya adalah memperkuat kunci keamanan. Memperkuat kunci keamanan ini sangat diperlukan untuk mempersulit penyerang yang mencoba melakukan pengendusan (sniffing) terhadap komunikasi yang Anda lakukan dengan server saat proses login. b. Like usual, open up the SSH's configuration file. c. Carilah baris “ServerKeyBits”.
15
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS
Gambar 22. Mencari sintaks ServerKeyBits d. Gantilah parameternya dengan angka yang lebih besar. Pada gambar di bawah, dicontohkan menggunakan angka 1024 yang artinya kuncinya nanti akan dienkripsi menjadi data 1024 bits.
Gambar 23. Mengganti parameter ServerKeyBits
16
ADMINISTRASI SERVER (C3 - 4) KELAS XI / SEMESTER GASAL
TEKNIK KOMPUTER DAN JARINGAN SMK NEGERI 1 TAPIN SELATAN
MANAJEMEN REMOTE ACCESS e. Save the configuration file and please restart the SSH service. 6. Human Error a. Usually, the weakest part of system is human. Tanya kenapa? Coba perhatikan password yang Anda gunakan! 123? 12345? abcd...z? Nama orang yang Anda sayangi? Nama orang yang Anda sayangi ditambah sedikit angka unik? Tanggal lahir? Tanggal lahir orang yang Anda sayangi? Atau mungkin kombinasi tanggal lahir Anda dan tanggal lahir orang yang Anda sayangi? Semuanya itu password yang lemah dan bisa ditebak. If you administrate a real server someday, never use a password which is easily to be guessed (mudah ditebak).
TUGAS Buatlah laporan praktikum yang minimal berisi hal-hal berikut: •
Cover
•
Tujuan Praktikum
•
Langkah-Langkah Praktikum yang disertai screenshot
•
Kendala dan Penyelesaian
•
Temuan Baru (optional)
DAFTAR PUSTAKA Siyamta. 2013. Administrasi Server. Kementrian Pendidikan dan Kebudayaan: Malang. Wikipedia. SSH. http://id.wikipedia.org/wiki/SSH.
~ Kelemahan terbesar dari sebuah sistem adalah administrator yang ceroboh ~
17