Dalam tutorial ini kita akan melihat cara menginstal Shellinabox (Diucapkan sebagai “Shell In A Box”) untuk akses jarak jauh ke terminal SSH Linux menggunakan AJAX/JavaScript dan browser web berkemampuan CSS. Dengan asumsi bahwa server Linux Anda diaktifkan dengan Firewall dan hanya mengizinkan port yang diperlukan (katakanlah HTTP), maka Shellinabox adalah solusi ideal untuk menyediakan terminal Shell berbasis web kepada pengguna.
Menginstal Shellinabox di Linux
Secara default, Shellinabox paket disertakan dalam semua repositori distribusi Linux termasuk Debian, Ubuntu dan CentOS. Pastikan repositori Anda diaktifkan dan tersedia untuk menginstal shellinabox.
Di Debian dan Ubuntu
root@ubuntu:~# apt-cache search shellinabox shellinabox - publish command line shell through AJAX interface root@ubuntu:~#
root@ubuntu:~# apt-get install shellinabox Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: shellinabox .... .... Setting up shellinabox (2.14-1) ... Processing triggers for ureadahead (0.100.0-16) ... root@ubuntu:~#
Di RHEL, CentOS, dan Fedora
Konfigurasikan repositori yum pada distribusi berbasis RedHat. Selanjutnya Anda perlu mengkonfigurasi Repositori EPEL:
Cara mengaktifkan EPEL Repo:
Untuk EL5:
[root@centos export]# rpm -Uvh http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
Untuk EL6:
[root@centos export]# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
Untuk EL7:
[root@centos export]# rpm -Uvh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
Kemudian instal shellinabox menggunakan yum berikut ini perintah.
#yum install shellinabox Loaded plugins: security Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package shellinabox.x86_64 0:2.14-27.git88822c1.el5 set to be updated --> Finished Dependency Resolution .... .... .... Complete!
Konfigurasi Shellinabox
Shellinabox memiliki server web built-in yang berjalan sebagai SSH-Client berbasis web dan mendengarkan pada port 4200. Untuk alasan keamanan, Anda dapat mengubah port default ini ke port acak (Misalnya:4312 atau mana saja yang gratis). Secara default, sertifikat SSL baru yang ditandatangani sendiri akan dibuat secara otomatis di bawah “/var/lib/shellinabox ” untuk menggunakan protokol HTTPS.
Cara menemukan port mana yang gratis
#telnet localhost <port_no>
or
#netstat -anp | grep <port_no>
Di Debian &Ubuntu
#vim /etc/default/shellinabox
# TCP port that shellinboxd's webserver listens on SHELLINABOX_PORT=4200
Di RHEL, CentOS &Fedora
# vi /etc/sysconfig/shellinaboxd
# TCP port that shellinboxd's webserver listens on PORT=4200
Mulai daemon layanan Shellinabox
Setelah konfigurasi selesai, Anda dapat memulai layanan dengan mengeluarkan perintah berikut:
Di Debian &Ubuntu
#service shellinabox start
Di RHEL &CentOS
#service shellinaboxd start
Verifikasi Layanan
Periksa apakah layanan telah dimulai dengan benar dan mendengarkan pada port 4200 (port mungkin berbeda berdasarkan konfigurasi di atas) menggunakan netstat perintah seperti yang ditunjukkan di bawah ini:
root@ubuntu:# netstat -anp | grep shellinabox tcp 0 0 0.0.0.0:4200 0.0.0.0:* LISTEN 31331/shellinaboxd
Cara menggunakan Shellinabox di browser
Buka browser web Anda dan navigasikan ke https://server-ip:4200 . Sekarang Anda seharusnya dapat melihat terminal SSH berbasis web seperti yang ditunjukkan di bawah ini yang meminta login. Anda dapat masuk menggunakan nama pengguna dan kata sandi SSH Anda dan setelah berhasil, Anda akan disajikan prompt shell.
Saat logout: