Ghost, Caddy, Cloudflare serta SSL Percuma dari Let's Encrypt

Nota: Panduan ini out-dated

Mungkin dikalangan anda pernah mendengar tentang 2 projek besar dan *opensource *iaitu Ghost dan Caddyserver. Kali ini saya akan mengongsikan langkah-langkah memasang 2 aplikasi hebat ini bersama Cloudflare dan juga menggunakan SSL percuma dari Let’s Encrypt.

Bagi anda yang masih tidak tahu apa itu Ghost, Caddy, Cloudflare, dan Let’s Encrypt, anda boleh membuat carian ringkas di Google atau di mana-mana enjin pencarian.

Dalam panduan ini, saya akan menggunakan Debian 8 dengan akaun yang mempunyai akses sudo. Dengan keyakinan yang tinggi, mari kita mulakan.

Ghost

Pada Debian 8 anda, jalankan perintah dibawah untuk memasang Nodejs yang mana diperlukan untuk menjalankan Ghost.

Pasang pakej yang diperlukan

$ sudo apt-get install screen nano unzip wget

Muat-turun script berkenaan

$ curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash – 

Pasang nodejs

$ sudo apt-get install -y nodejs

Setelah itu, tiba masanya untuk memasang Ghost.

Cipta directory yang akan digunakan untuk memasang Ghost

$ sudo mkdir /var/www  
$ sudo mkdir /var/www/ghost  
$ cd /var/www/ghost

Muat-turun Ghost

$ sudo wget curl -L https://ghost.org/zip/ghost-latest.zip -o ghost.zip

Ekstrak Ghost

$ sudo unzip ghost.zip

Pasang Ghost, Akan menganbil masa beberapa ketika

$ sudo npm install –production

Ghost anda telah sedia dijalankan. Untuk menjalankan Ghost, anda boleh menggunakan beberapa cara, namun saya memilih untuk menjalankannya di dalam screen untuk memudahkan rujukan masa depan.

Cipta sesi screen khas untuk Ghost

$ screen -S ghost

Jalankan Ghost

$ sudo npm start –production

*Minimize sesi screen tersebut

CTRL + A + D

Ghost akan berjalan di belakang pada port 2368.

Caddy

Ghost berupaya untuk digunakan pada port 80 secara terus, namun dianggap bahaya kerana dijalankan pada peringkat root. Sistem anda akan berada di dalam bahaya sekiranya Ghost dikompromi.

Oleh itu, kita perlukan Caddy sebagai proxy.

Muat-turun Caddy di https://caddyserver.com/download. Tandakan Cloudflare pada kotak DNS Provider dan pilih binaan Linux yang anda gunakan untuk memulakan muat-turun. Anda akan diberikan pautan muat-turun Caddy yang diperlukan. Anda boleh wget atau muat-naik fail tersebut ke server anda.

Muat-turun Caddy ke server anda menggunakan pautan yang diberi

$ wget https://caddyserver.com/download/builds/160711203521970/caddy_linux_386_custom.tar.gz 

Ekstrak

$ tar xvf caddy_linux_386_custom.tar.gz 

Cipta fail tetapan bagi Caddy

$ nano Caddyfile

Isikan teks dibawah ke dalam fail Caddyfile yang telah dicipta tadi.

domain.anda { 
    proxy / 127.0.0.1:2368 {
    upstream_header Host {host}
    upstream_header X-Real-IP {remote}
    upstream_header X-Forwarded-Proto {scheme}
    tls {
        dns cloudflare
    }
}

Gantikan domain.anda dengan domain yang anda miliki. Anda juga boleh membuang bahagian tls {} sekiranya anda tidak mahu SSL.

Tutup editor dan simpan perubahan Caddyfile tersebut dengan menekan CTRL + X dan taip y seterusnya tekan ENTER

Seterusnya anda perlu membuat 1 skrip bash untuk memudahkan anda menjalankan Caddy. Penggunaan Cloudflare bersama Caddy juga memerlukan anda menetapkan environment variables.

#!/bin/bash  

export CLOUDFLARE_EMAIL=email_cloudflare_anda_di_sini
export CLOUDFLARE_API_KEY=api_key_anda_di_sini
sudo -E ./caddy

Tutup dan simpan. Anda boleh mendapatkan API Key Cloudflare anda di dalam Account settings. Anda juga oerlu menukar SSL setting kepada sistem Full.

Kemudian, ubah permission caddy.sh

$ chmod +x caddy.sh

Jalankan Caddy dengan menaip

./caddy.sh

Anda boleh menyemak sekiranya Ghost dan Caddy berjaya dijalankan dengan cara membuka domain anda di browser.

Sekiranya anda mengalami apa-aoa masalah, sila komen dan saya akan cuba membantu dengan secepat mungkin.

Entri ini ditulis menggunakan peranti telefon bimbit dan mempunyai banyak kekurangan serta susunan yang tidak begitu baik atas sebab kekurangan fungsi editor telefon bimbit.

Panduan ini tidak disyorkan kepada beginner.

Ghost, Caddy, Cloudflare serta SSL Percuma dari Let's Encrypt
Share this