1. Kunci SSH
1a. Buat pasangan kunci SSH.
1b. Konfigurasikan pengguna root di server untuk menggunakan kunci SSH Anda. Jika dikonfigurasi dengan benar, Anda tidak akan dimintai sandi saat masuk.
1c. Jika Anda berhasil masuk menggunakan kunci SSH Anda, nonaktifkan otentikasi berbasis kata sandi SSH.
2. Tumpukan LAMP
2a. Instal Apache, MySQL, dan PHP versi stabil terbaru dari repositori CentOS standar di server.
2b. Setel Apache, MySQL, dan SSH untuk memulai saat boot.
2c. Tetapkan kata sandi minimal 20 karakter untuk pengguna root di MySQL.
2d. Temukan dan jalankan skrip di bawah /usr/bin/ yang meningkatkan keamanan instalasi MySQL.
Buat file /root/.my.cnf dengan konten berikut:
[client]
pengguna =root
sandi =
3. Konfigurasi Apache
3a. Setel pengaturan prefork dengan asumsi Anda memiliki RAM 512MB dan setiap proses anak Apache menggunakan 10MB. Konfigurasikan KeepAlive jika menurut Anda perlu.
3b. Setel pengaturan ServerTokens, ServerSignature, dan expose_php sedemikian rupa sehingga meningkatkan keamanan.
4. Memasang Phabricator:http://phabricator.org/
4a. Buat virtualhost seperti yourname-phabricator.com di Apache dan atur Phabricator versi stabil terbaru di dalamnya. (Petunjuk:Mengkloning ke /home/)
Akar dokumen harus seperti /home/phabricator/webroot/
Buat entri file host di server untuk domain/subdomain virtualhost Anda seperti:
127.0.0.1 namaanda-phabricator.com
Gunakan browser seperti links/elinks/lynx untuk melihat situs di server itu sendiri. Respons 200 OK dan beranda aplikasi yang mengatakan "Selamat datang di Phabricator" diharapkan.
4b. File di bawah /home/phabricator/webroot/ harus dimiliki oleh pengguna/grup "phabricator" dan tidak boleh memiliki izin lebih dari 664.
Direktori di bawah /home/phabricator/webroot/ harus dimiliki oleh pengguna "phabricator"/ grup dan tidak boleh memiliki lebih dari 775 izin.
4c. Setel pengalihan 302 dari http://127.0.0.1 ke http://yourname-phabricator.
5. 5a. Aktifkan kompresi konten statis untuk situs fabricator Anda.
5b. Siapkan header kedaluwarsa untuk konten statis situs fabricator.
5c. Periksa header respons menggunakan alat seperti wget/curl di server untuk menentukan apakah header kompresi dan kedaluwarsa berfungsi untuk situs fabricator Anda.
6. 6a. Instal daemon server memcached
6b. Aktifkan modul zendopcache untuk PHP
6c. Aktifkan modul memcached untuk PHP
7. Siapkan iptables/firewall di server sehingga hanya mengizinkan akses ke port 80, port 443, dan port 22. iptables/firewall harus menjatuhkan atau menolak semua paket lain secara default.
8. Pengguna MySQL
8a. Buat pengguna di MySQL yang seharusnya hanya memiliki SELECT, hak istimewa untuk semua database fabricator yang dibuat sebelumnya.
8b. Gunakan pengguna ini untuk membuang konten semua database phabricator ke /root/mydump/.
9. Monitor
9a. Instal monit dan atur untuk memulai saat boot.
9b. Konfigurasikan untuk memulai ulang Apache jika rata-rata beban server> 5 atau penggunaan memori server> 90% atau jika Apache telah mati.
10. 10a. Jadwalkan kompresi /home/phabricator/public_html/ terjadi setiap malam pada pukul 02:30.
10b. File terkompresi harus memiliki tanggal dalam namanya dan harus disimpan di /root/code/ .
10c. File terkompresi yang lebih lama dari 7 hari harus dihapus setiap malam.