Griya-nipun Ferry Hendrayana

tempat berlindung dari panasnya hidup ini

Proses Mirroring Website Menggunakan rsync

Pada tutorial ini akan membahas bagaimana melakukan proses mirroring website dari main server ke client website, ini digunakan untuk mendistribusikan website dari server ke client, sehingga proses pembuatan website hanya dilakukan di satu sisi saja yakni server, untuk website pada client cukup dengan memirrorkan website dari server ke client sehingga website pada main server sama dengan website pada client.
Dengan menggunakan rsync maka proses mirroring tidak akan mengirim semua data yang ada pada server ke client melainkan hanya data yang berubah atau data baru saja yang akan dimirrorkan, sehingga kita proses bisa efisien dan cepat.
Untuk proses keamanan saat mirroring maka digunakanlah ssh yang lebih aman, sehingga tidak perlu membuka port baru untuk rsync namun hanya perlu membuka port ssh yakni port 22. Tetapi kita harus memasukan username dan password ketika akan melakukan ssh, sehingga memerlukan interaksi manusia yang tentu saja akan sedikit merepotkan.
Namun Ada cara untuk mengatasi masalah tersebut yakni dengan auto login pada saat melakukan koneksi ssh dengan menggunakan public keys. kita membuat ‘key’ pada client yang kemudian ‘key’ tersebut disimpan pada server, sehingga ketika client melakukan ssh ke server tidak perlu lagi memasukan password.
Persyaratan sebelum melakukan mirroring yakni ssh pada server harus terinstall dahulu dan bisa dijalankan. Jika belum terinstall maka lakukan installasi pada server dan client.

1. Install rsync
Langkah pertama yang perlu dilakukan adalah menginstall rsync pada server dan client.
apt-get install rsync

2. Test rsync
Proses test dilakukan pada client dengan login sebagai root dan menjalankan perintah :
rsync -avz -e ssh server.com:/var/www/ /var/www/
maka akan keluar :

The authenticity of host ‘server.com (192.168.0.100)’ can’t be established.
RSA key fingerprint is 32:e5:79:8e:5f:5a:25:a9:f1:0d:ef:be:5b:a6:a6:23.
Are you sure you want to continue connecting (yes/no)?

ketikan yes
Kemudian masukan password root maka proses mirroring akan berlangsung dengan memirrorkan isi folder /var/www/ pada server ke /var/www/ pada client. Untuk memeriksa keberhasilan proses mirror maka dapat diperiksa file pada server dan client jika sama maka proses mirroring telah berhasil.
3. Auto Login ssh
Pada client Jalankan perintah ssh-keygen -t rsa

client:~# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ae:cd:84:c8:28:67:fa:29:d8:c5:e8:ce:12:d8:84:ae
client:~#

Setiap pertanyaan tekan aja tombol enter, demikian pula dengan pertanyaan passphrase enter saja(kosong). Disini secara default letak file publik keynya di folder .ssh
Salin file id_rsa.pub ke server

client:~# scp .ssh/id_rsa.pub root@server:~
root@server’s password:
id_rsa.pub 100% 393 0.4KB/s 00:00

Pada server buka file konfigurasi ssh yakni /etc/ssh/sshd_config, pastikan bahwa ada baris yang seperti dibawah ini (yang laen tidak perlu diedit)

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys2

Masih pada server salin id_rsa.pub ke file authorized_key2

cat id_rsa.pub >> .ssh/authorized_keys2

Kembali ke client dan lakukan ssh ke server, jika ssh sudah berjalan tanpa memasukan password lagi maka auto login ssh anda sudah berjalan.
4. Test rsync
Lakukan kembali test pada client dengan login sebagai root dan menjalankan perintah :
rsync -avz -e ssh server.com:/var/www/ /var/www/

maka proses mirroring akan langsung berjalan tanpa harus memasukan password lagi.

Tinggalkan komentar