TikiWiki adalah sistem manajemen konten sumber bebas dan terbuka yang ditulis dalam bahasa PHP. TikiWiki merupakan CMS yang sangat kuat, memiliki fitur lengkap dan dapat digunakan untuk membuat situs web, wiki, aplikasi Web, basis pengetahuan, portal, galeri gambar dan banyak lagi.
TikiWiki hadir dengan serangkaian fitur yang kaya, termasuk, Forums, Blog, Maps, Workspace, Slideshow, Shopping Cart, Bug and issue tracker, Multilingual, File and image gallery, Events dan banyak lagi.
Dalam tutorial ini, kita akan belajar cara Cara Install dan Konfigurasi CMS Tiki Wiki pada Debian 10.
Prasyarat
- Server yang menjalankan Debian 10
- User non-root dengan hak akses sudo.
Sebelum Mulai, Perbarui paket sistem operasi Anda (software). Ini adalah langkah pertama yang penting karena memastikan Anda memiliki pembaruan terbaru dan perbaikan keamanan untuk paket perangkat lunak default sistem operasi Anda:
sudo apt-get update && sudo apt-get upgrade -y
Setelah seluruh software di server diperbarui, restart server untuk menerapkan perubahan.
Install LAMP Server
TikiWiki berjalan di web server Apache/Nginx, ditulis dalam bahasa PHP dan menggunakan MariaDB/MySQL untuk menyimpan datanya.
Jadi, Anda perlu menginstal Apache, MariaDB, PHP, dan ekstensi lain yang diperlukan di server Anda. Pertama, instal server Apache dan MariaDB dengan perintah berikut:
apt-get install apache2 mariadb-server unzip -y
Secara default, Debian 10 datang dengan PHP versi 7.3. Tapi, TikiWiki tidak mendukung PHP 7.3. Jadi, kita harus menginstal PHP 7.2 dan ekstensi lain yang diperlukan.
Untuk menambahkan repositori SURY, pertama download GPG key dan tambahkan ke sistem.
wget https://packages.sury.org/php/apt.gpg apt-key add apt.gpg
Selanjutnya, tambahkan repositori SURY ke APT dengan perintah :
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
Selanjutnya, update repositori dan instal PHP7.2 bersama semua ekstensi yang diperlukan dengan perintah :
apt-get update apt-get install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-sqlite3 php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-mysql php7.2-gd php7.2-xml php7.2-cli php7.2-zip -y
Setelah menginstal PHP7.2, buka file php.ini
dengan text editor nano
dan ubah beberapa pengaturan:
nano /etc/php/7.2/apache2/php.ini
Tambahkan baris berikut:
memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = Asia/Jakarta
Simpan dan tutup file setelah Anda selesai. Kemudian, lanjutkan ke langkah berikutnya.
Konfigurasikan MariaDB Untuk TikiWiki
MariaDB terinstall secara default. Demi keamanan, Anda dapat melakukannya dengan perintah :
mysql_secure_installation
Pada bagian ini, kita akan mengubah kata sandi root, menghapus pengguna anonim, melarang login root dari jarak jauh dan menghapus database pengujian
Enter current password for root (enter for none): Set root password? [Y/n]: N Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
Setelah MariaDB diamankan, masuk ke shell MariaDB dengan perintah :
mysql -u root -p
Berikan kata sandi root Anda, lalu buat database dan user database untuk TikiWiki dengan perintah :
MariaDB [(none)]> CREATE DATABASE tikidb; MariaDB [(none)]> CREATE USER 'tiki'@'localhost' IDENTIFIED BY 'password';
Selanjutnya, berikan semua hak istimewa ke user database dengan perintah :
MariaDB [(none)]> GRANT ALL ON tikidb.* TO 'tiki'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Selanjutnya, flush privilege dan keluar dari shell MariaDB dengan perintah :
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Download TikiWiki
Pertama, Anda perlu download TikiWiki versi terbaru dari situs Sourceforge. Buat direktori dengan perintah mkdir di dalam direktori /var/www/
dan unzip file yang diunduh dengan perintah :
cd /var/www/ mkdir tikiwiki wget https://sourceforge.net/projects/tikiwiki/files/latest/download -O tikiwiki.zip
Setelah unduhan selesai, unzip tikiwiki.zip dengan perintah berikut :
unzip tikiwiki.zip -d /var/www/tikiwiki
Selanjutnya, berikan izin dan kepemilikan yang tepat ke direktori tikiwiki dengan perintah berikut:
chown -R www-data:www-data /var/www/tikiwiki/ chmod -R 755 /var/www/tikiwiki/
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Konfigurasikan Apache untuk TikiWiki
Selanjutnya, Anda perlu membuat file konfigurasi host virtual Apache untuk TikiWiki. Anda dapat membuatnya dengan perintah berikut:
nano /etc/apache2/sites-available/tikiwiki.conf
Tambahkan konten berikut:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/tikiwiki ServerName example.com <Directory /var/www/tikiwiki/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/tikiwiki_error.log CustomLog ${APACHE_LOG_DIR}/tikiwiki_access.log combined </VirtualHost>
Simpan dan tutup file. Kemudian, aktifkan file konfigurasi virtual host Apache dengan perintah berikut:
a2ensite tikiwiki.conf
Terakhir, aktifkan modul Apache rewrite dan restart layanan Apache untuk menerapkan perubahan konfigurasi dengan perintah berikut:
a2enmod rewrite systemctl restart apache2
Akses Web Interface TikiWiki
Sekarang, buka web browser dan ketik URL domain TikiWiki Anda. Secara otomatis Anda akan diarahkan ke halaman selamat datang TikiWiki:
Pilih bahasa Anda dan klik tombol Continue. Anda akan melihat halaman berikut:
Terima perjanjian Lisensi dan klik tombol Continue . Anda akan melihat halaman berikut:
Konfirmasikan sistem Anda memenuhi persyaratan minimum dan klik tombol Continue. Anda akan melihat halaman berikut:
Berikan nama database, nama user dan kata sandi. Kemudian, klik tombol Continue. Anda akan melihat halaman berikut:
Pilih mesin database dan klik tombol Install untuk memulai instalasi. Setelah instalasi selesai, Anda akan melihat halaman berikut:
Sekarang, klik tombol Continue, Anda akan melihat halaman berikut:
Berikan semua informasi yang diperlukan seperti judul Wiki, Email pengirim, Login aman, Email admin, dan klik tombol Continue. Anda akan melihat halaman berikut:
Baca semua informasi dan klik tombol Continue . Anda akan melihat halaman berikut:
Sekarang, klik tombol “Enter Tiki and Lock Installer“. Anda akan melihat halaman berikut:
Sekarang, atur kata sandi admin Anda dan klik tombol Apply. Anda akan melihat halaman berikut:
Amankan TikiWiki dengan Let’s Encrypt
Di bagian ini, kami akan menjelaskan cara mengamankan situs TikiWiki Anda dengan Let’s Encrypt free SSL.
Pertama, Anda harus menginstal Certbot tool untuk download dan menginstal Let’s Encrypt untuk situs web Anda. Secara default, versi terbaru Certbot tidak tersedia di repositori default Debian 10. Jadi, Anda perlu menambahkan repositori Certbot ke sistem Anda.
Anda dapat menambahkan repositori Certbot dengan perintah berikut:
apt-get install software-properties-common add-apt-repository ppa:certbot/certbot
Selanjutnya, perbarui repositori dan instal Certbot dengan perintah berikut:
apt-get update -y apt-get install certbot python-certbot-apache -y
Setelah diinstal, buat file well-known.conf
untuk Let’s Encrypt untuk memvalidasi domain Anda.
Pertama, buat direktori .well-known dan berikan izin yang tepat:
mkdir -p /var/lib/letsencrypt/.well-known chgrp www-data /var/lib/letsencrypt chmod g+s /var/lib/letsencrypt
Selanjutnya, buat file well-known.conf
dengan perintah berikut:
nano /etc/apache2/conf-available/well-known.conf
Tambahkan baris berikut:
Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" <Directory "/var/lib/letsencrypt/"> AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS </Directory>
Simpan dan tutup file. Kemudian, aktifkan modul yang diperlukan dengan perintah berikut:
a2enmod ssl a2enmod http2 a2enmod headers a2enconf well-known
Selanjutnya, restart layanan Apache untuk menerapkan semua perubahan konfigurasi:
systemctl restart apache2
Sekarang, mari kita mulai menginstal sertifikat SSL gratis untuk domain example.com dengan perintah berikut:
certbot --apache -d example.com
Pertama, Anda harus memberikan alamat email yang valid dan menyetujui persyaratan layanan seperti yang ditunjukkan di bawah ini:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Obtaining a new certificate Performing the following challenges: http-01 challenge for example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/example.com-le-ssl.conf Deploying Certificate to VirtualHost /etc/apache2/sites-available/example.com-le-ssl.conf Enabling available site: /etc/apache2/sites-available/example.com-le-ssl.conf Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Selanjutnya, pilih opsi 2 untuk mengunduh dan menginstal sertifikat SSL gratis untuk domain Anda. Setelah instalasi selesai dengan sukses. Anda harus mendapatkan output berikut:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/example.com.conf to ssl vhost in /etc/apache2/sites-available/ example.com-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/example.com/privkey.pem Your cert will expire on 2019-10-22. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Sekarang, buka browser web Anda dan akses CMS TikiWiki Anda menggunakan URL https://example.com.