Hasil project UTS mata kuliah Komunikasi Data dan Jaringan
Sekilas Tentang | Instalasi | Konfigurasi | Cara Pemakaian | Pembahasan | Referensi
Paste adalah suatu aplikasi berbasis web yang memungkinkan para usernya untuk bisa berbagi kode program, teks biasa (plain text) ataupun hal lain yang berwujud teks. Paste dibangun menggunakan bahasa PHP. Paste ini merupakan salinan versi asli dari pastebin.com sebelum akhirnya dijual pada tahun 2010.
- Apache 2.X / Nginx
- PHP 5.3.7 (or later) with php-openssl & GD enabled [PHP7.+ recommended]
- MySQL 5.x+
- Login ke dalam server menggunakan SSH. Disini kami menggunakan aplikasi mobaxterm.
$ ssh -p 2222 student@127.0.0.1
- Install seluruh kebutuhan sistem yang diperlukan
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt install nginx
$ sudo apt install mysql-server
$ sudo apt install php7.3 php7.3-fpm php7.3-mysql
- Konfigurasi awal database
$ sudo mysql_secure_installation
- Buat user serta database baru untuk Paste
$ sudo mysql
GRANT ALL PRIVILEGES ON *.* TO 'akamamara'@'localhost' IDENTIFIED BY '213465@#Qw';
CREATE DATABASE paste;
- Unduh folder pada github paste dan pindahkan ke dalam direktori kita. Setelah itu unzip folder yang sudah di unduh tadi
$ unzip “paste 2.2.zip”
- Ubah nama folder yang telah di unzip menjadi
paste2.2
$ mv jordansamuel-PASTE-217ac17 paste2.2
- Copy direktori “paste2.2” ke root web
$ sudo cp -R paste2.2 /var/www/
- Ubah otorisasi kepemilikan ke user www-data
$ sudo chown -R www-data:www-data html
- Ubah nama folder
paste2.2
menjadi html
$ sudo mv paste2.2 html
- Ubah agar user dan group www-data dapat melakukan read dan execute
$ sudo chmod 755 *
- Konfigurasi nginx
$ sudo apt update
$ sudo apt install php-fpm
- Masuk ke dalam /etc/nginx/sites-available/default
$ sudo nano /etc/nginx/sites-available/default
- Modifikasi beberapa konfigurasi dalam
/etc/nginx/sites-available/default
...
server {
listen 80 default_server;
listen [::]:80 default_server;
...
index index.php index.html index.htm index.nginx-debian.html;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
}
location ~ /\.ht {
deny all;
}
- Lakukan restart untuk service NGINX
$ sudo systemctl restart nginx.service
- Kunjungi alamat IP web server kita untuk meneruskan instalasi.
localhost:8000/install/
-
Setelah install nanti akan keluar tampilan untuk masuk ke akun admin
-
Selesai submit akun admin nanti akan keluar tampilan seperti gambar dibawah dan kita sudah bisa masuk ke dashboard
-
Setelah proses instalasi selesai hapus atau ganti nama direktori install agar saat mengakses web kita tidak diarahkan ke direktori tersebut
$ sudo mv install install_bak
Konfigurasi aplikasi, seluruhnya berada di dalam menu Configuration. Terdapat banyak hal yang bisa diatur di sini: site info, permissions, captcha settings dan mail settings.
Di bagian Site info, ada banyak hal yang berkaitan dengan informasi situs yang bisa diatur.
Di bagian Permissions, Berkaitan dengan perizinan penggunaan situs, apakah user harus punya akun dulu atau tidak sebelum bisa menggunakan Paste bisa diatur di sini.
Di bagian Captcha, jika ingin menambahkan keamanan pada saat login, Captcha beserta pengaturannya bisa diaktifkan di bagian ini.
Terakhir di menu Configuration, Mail Settings, hal-hal yang berkaitan dengan administrasi email user bisa diatur di sini.
Perawatan sistem dapat dilakukan dengan sangat mudah. Seluruh menu telah tersedia di dalam satu laman. Hal-hal yang bisa dilakukan diantaranya: Interface, Pastes, Users, IP Bans, Statistics, Ads, Pages, Sitemap, Task
Digunakan untuk mengatur bahasa dan tema yang digunakan pada situs.
Digunakan untuk melihat informasi tentang Pastes yang dibuat oleh para user.
Digunakan untuk melihat data administrasi user.
Digunakan untuk menolak user menggunakan alamat IP yang digunakan.
Digunakan untuk memantau aktivitas yang terjadi di dalam situs
Digunakan untuk memasang iklan di dalam situs.
Digunakan sebagai catatan admin untuk membantu mendokumentasikan perubahan-perubahan yang dilakukan pada situs.
Digunakan untuk mengatur berapa kali update sitemap dalam kurun waktu tertentu dilakukan.
Maintenance lain di atas hanya digunakan untuk pengamatan saja, sedangkan di bagian ini aksi-aksi yang bisa dilakukan oleh admin dikumpulkan.
Jika ingin mencobanya langsung bisa klik di sini.
Saat dibuka, Anda akan langsung diarahkan ke landing page.
Jika sudah memiliki akun, anda bisa langsung login. Jika belum punya akun, maka anda harus register terlebih dahulu.
Setelah akun selesai dibuat, silahkan login dengan memasukkan username dan password yang benar. Jika lupa password Anda bisa klik "Forgot Password?".
Setelah login, Anda akan langsung diarahkan ke halaman utamanya. Di sini Anda bisa langsung menuliskan kode program lalu menyimpannya. Di sini pula, Anda bisa mengatur judul Paste, jenis text, tanggal kedaluarsa, visibilitas, password, dan opsi enkripsi atau tidak. Setelah diisi, klik "Paste" untuk menyimpan.
Di ujung kanan atas halaman utama terdapat username Anda yang jika diklik akan memunculkan menu Pastes, Settings, dan Logout. Jika menu "Paste" diklik, Anda akan diarahkan ke laman daftar Paste yang anda miliki.
Jika menu "Settings diklik Anda akan diarahkan ke laman Profile Anda. Di sini anda bisa mengganti password Anda.
PASTE ditulis dalam bahasa pemrograman PHP yang support dengan penggunaan MySQL. Paste merupakan hasil fork dari pastebin.com sebelum akhirnya dijual pada tahun 2010. Aplikasi ini memiliki kelebihan, diantaranya:
- Build-in berbagai macam highlighting code sehingga enak dipandang mata
- Tampilannya simple dan tidak ribet
- Flexible untuk maintenance dan konfigurasi web yang diinginkan
- Memiliki pengaturan tambahan untuk paste, seperti password, paste dihapus setelah lebih dari rentang waktu tertentu, visibility, dan juga password.
- Build-in pengaturan ads bagi admin
- Bisa menambahkan pages selain tampilan awal paste saja
Kekurangan dari aplikasi ini adalah
- Kurangnya pemberitahuan bagi admin saat konfigurasi krusial belum terisi, seperti setting email, sehingga rawan untuk tertinggal ketika dilakukan konfigurasi
- Kurangnya dokumentasi untuk pengaturan custom, seperti pengaturan email, contoh penggunaan laman ads, dan juga sitemap.
- Tema yang diterapkan tidak berlaku untuk laman admin
- Instalasi yang menyulitkan jika diinstall di vm lokal, pada konfigurasi awal ia akan langsung redirect ke localhost tanpa port