Di artikel selanjutnya kita akan melihat GoTTY. Ini adalah program yang memungkinkan pengguna untuk berbagi aplikasi ke terminal Gnu / Linux melalui browser web. GoTTY adalah server web sederhana ditulis dalam Go yang menjalankan program non-GUI, dan dapat diluncurkan sedemikian rupa sehingga browser dapat menampilkannya dan secara opsional memungkinkan pengguna untuk berinteraksi.
Mungkin tidak semua orang akan menemukan kemungkinan itu menjalankan program baris perintah tertentu di jendela browser. Tetapi ada beberapa kasus, seperti ketika kita ingin memantau sistem dari jarak jauh menggunakan top tanpa harus terhubung ke sistem, yang mungkin menarik untuk memiliki kemungkinan ini.
Jika kita bisa mendapatkan keluaran dari atas untuk ditampilkan di jendela browser, ini akan menjadi solusi yang sangat sederhana. Meskipun ada opsi lain untuk mendapatkan hasil yang sama, kami mungkin tertarik untuk memiliki fitur lain dari baris perintah, atau memiliki opsi untuk menggunakan pengguna yang diautentikasi untuk berinteraksi dengan perangkat lunak yang sedang berjalan. Ini dan hal lainnya, GoTTY akan memungkinkan kita melakukannya dengan mudah.
Instalasi GoTTY di Ubuntu
Untuk menggunakan GoTTY, kami harus menginstal Go. Kebanyakan distribusi Gnu / Linux memiliki bahasa Go di repositori resminya, jadi kita bisa menginstalnya dengan mudah. Untuk menginstal dan mengkonfigurasinya di Ubuntu kami, beberapa waktu lalu kami menulis di blog ini a artikel di mana dijelaskan bagaimana melakukannya dengan cara yang sederhana.
Kami juga akan melakukannya perlu menginstal git, yang dapat kita lakukan dengan mengetik di terminal (Ctrl + Alt + T):
sudo apt install git
Ketika kita sudah memiliki Go, kita dapat mulai menulis yang berikut ini. Perintah ini akan menginstal biner GoTTY di variabel lingkungan Anda:
go get github.com/yudai/gotty
untuk periksa apakah semuanya sudah benar, tulis perintah berikut:
ls $GOPATH/bin/
Cara menggunakan GoTTY di Ubuntu
Untuk menjalankannya, kami akan menggunakan sintaks berikut:
$GOBIN/gotty [opciones] <comando>
Dalam hal itu tidak masalah luncurkan dan bagikan perintah teratas, Anda hanya perlu menulis:
$GOBIN/gotty top
Perintah teratas akan berjalan di komputer Anda saat ini di port 8080 (http://127.0.0.1:8080/). Dari browser Anda tidak akan melihat gambar statis, layar diperbarui seolah-olah sedang berjalan di terminal.
Server akan berjalan sampai Anda membunuhnya. Ini dilakukan dengan menekan Ctrl + C. Jika seseorang terhubung ke server, itu akan membutuhkan dua tekanan Ctrl + C. Untuk perintah ini opsi dapat ditambahkan untuk mengubah port (-p) dan alamat (-a).
Anda harus ingat itu secara default, GoTTY tidak mengizinkan klien untuk menulis entri ke TTY, ini hanya memungkinkan Anda untuk mengubah ukuran jendela.
Edit file dari browser
Kami akan mampu gunakan opsi -wo –permit-write untuk memungkinkan klien menulis ke TTY, yang mana tidak disarankan karena kemungkinan ancaman keamanan pada server.
Perintah berikut akan menggunakan vi editor baris perintah untuk membuka file ubunlog.txt dan memungkinkan Anda mengeditnya dari browser web:
$GOBIN/gotty -w vi ubunlog.txt
Gunakan GoTTY dengan Autentikasi Dasar (nama pengguna dan kata sandi)
Dalam kasus pertama yang baru saja kita lihat, kita mungkin tidak terlalu peduli jika orang asing dapat melihat hasil teratas. Jika mesin yang dijalankan GoTTY berada di belakang firewall, pihak luar tidak akan dapat melihatnya. Untuk beberapa aplikasi, itu sudah cukup. Tapi, jika misalnya, jika kita mengizinkan masuk (dengan opsi -w), orang dapat menghentikan proses dari jarak jauh, dan memposting di web mungkin bukan ide yang baik.
Untuk mencoba memberikan semacam solusi untuk ini, kami bisa aktifkan sistem otentikasi dasar. Di sini klien harus memasukkan nama pengguna dan kata sandi yang ditentukan untuk terhubung ke server GoTTY.
Perintah berikut akan membatasi akses klien menggunakan opsi -c dan akan meminta pengguna untuk memasukkan kredensial yang ditentukan. Untuk contoh ini nama penggunanya adalah ubunlog dan kata sandi 12345.
$GOBIN/gotty -w -p "9000" -c "ubunlog:@12345" top
Hasilkan URL Acak di Gotty
Cara lain untuk membatasi akses server menggunakan opsi -r. Di sini, GoTTY akan menghasilkan URL acak sehingga hanya pengguna yang mengetahuinya yang dapat mengakses server.
Yang baru saja kita lihat hanyalah beberapa hal yang dapat dilakukan dengan GoTTY. Mereka bisa konsultasikan ini dan lainnya, lebih detail dari proyek halaman GitHub. Ini adalah salah satu solusi yang bukan untuk segalanya, tetapi jika Anda membutuhkan apa yang dilakukannya, ada baiknya jika kemungkinan ini tersedia.