Sharing seputar Dunia Tkj dan Blogging ^^

Showing posts with label SSH. Show all posts
Showing posts with label SSH. Show all posts

Thursday, September 1, 2016

Cara Menyalin Berkas di Server tanpa Root di Centos, Fedora, RHEL

Melanjuti tulisan lalu mengenai tata cara penyalinan berkas dari localhost ke Server / VPS yang mana tulisan itu hanya diperuntukan pengguna distro Debian, Ubuntu dan derivarifnya saja (bisa Anda lihat di: http://www.linuxku.com/2016/05/menyalin-berkas-di-server-tanpa-root.html). Lain hal jika Server / VPS kita berdistro RHEL, Fedora, Centos serta derivatifnya. Ada sedikit kebutuhan dependensi yang perlu Anda pasang di distro tersebut.

Tulisan kali ini adalah membahas mengenai cara yang penulis lakukan ketika menangani VPS berdistro Centos 6 dan 7, dan sudah barang tentu untuk distro lainnya yang serupa seperti Fedora dan RHEL dapat melakukan tutorial pada tulisan ini, karena sebagaimana yang kita tahun mereka adalah derivatif dari Fedora.

Tahap Pemasangan

Langsung saja kita praktek. Pertama-tama, kita pasang openssh-askpass, caranya:

$ sudo yum install -y openssh-askpass
Kemudian dependensinya:
$ sudo yum install -y xorg-x11-xauth xorg-x11-fonts-misc libcanberra-gtk2 dejavu-lgc-sans-fonts
Dependensi di atas wajib dipasang pada VPS/Server Anda, mengapa? Jika tidak openssh-askpass tidak akan dapat berjalan dengan sebagaimana mestinya. Kemudian font dejavu-lgc-sans, jika tidak dipasang kita password dialog muncul akan menampilkan tulisan kotak-kotak saja yang tidak terbaca.

Tahap Penggunaan

Setelah selesai kita memasang openssh-askpass beserta dependensi kebutuhannya, lanjut sekarang kita mulai praktik. Yakni masukan perintah berikut:
$ rsync -chavzPe 'ssh -X' --stats \
--rsync-path='SUDO_ASKPASS=/usr/libexec/openssh/ssh-askpass sudo -A rsync' \
akunSaya@192.168.2.8:/usr/share/nginx/html/ /home/kusuma
Penjelasan Perintah:

c = checksum, adalah untuk mengecek kesamaan antara berkas dalam peladen dengan lokal jika keduanya tidak sama maka ambil yang terbaru.
h = human readable, adalah untuk mengetahui besaran satuan berkas dalam jumlah KB, MB, ataupun GB.
a = archive mode / equal, berkas harus serupa antara peladen dengan lokal.
v = verbose, untuk menampilakan informasi tentang apa saja yang dilakukan oleh rsync.
z = compress file during transfer, yakni berfungsi untuk menghemat bandwidth pada saat transfer.
P = progress, selain verbose metode progress juga dibutuhkan untuk mengetahui informasi progress dari rysnc tersebut.
e = execute / remote ssh, mengekseksi perintah ssh dalam rsync sama halnya seperti Anda mengeksekusi ssh secara langsung.

akunSaya@192.168.2.8:/usr/share/nginx/html/ adalah sumber dari peladen.
/home/kusuma/ adalah tujuan ke lokal.
--rsync-path='SUDO_ASKPASS=/usr/libexec/openssh/ssh-askpasssudo -A rsync' adalah path dimana ssh-askpass disimpan dalam peladen Anda. Jika berhasil maka akan tampil seperti gambar di bawah ini:
Semoga bermanfaat :)

Monday, August 8, 2016

Melindungi Serangan Brute Force dengan Fail2Ban di Centos 6/7

Artikel lalu di Linuxku.com telah membahas mengenai Fail2ban di server berdistro Ubuntu dan Debian, Anda bisa lihat di http://www.linuxku.com/2016/07/mencegah-serangan-brute-force-ssh.html. Sekarang giliran penulis bahas Fail2ban di Centos.

Penulis ulas kembali mengenai apa itu Fail2ban. Fail2ban adalah salah satu aplikasi sumber terbuka simpel dan mudah, yang digunakan untuk mencegah serangan brute force yakni dengan teknik serangan terhadap server dengan menggunakan percobaan terhadap semua kata kunci yang memungkinkan. Cara kerja fail2ban ini adalah dengan memblokir IP address yang memiliki ciri-ciri atau tanda-tanda serangan brute force terhadap server, dengan Fail2ban kita dapat menimalisir kemungkinan-kemungkinan seperti itu bisa saja terjadi, apalagi jika IP server tersebut sudah banyak tersebar.
Perlu diketahui bahwa fail2ban ini tidak terdapat dalam lumbung (repository), jadi perlu Anda tambahkan pada lumbung EPEL.

Lakukan perintah berikut untuk memasang fail2ban:
$ sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Lalu kemudian gunakan yum:
$ sudo yum install fail2ban 

Copy konfigurasi default fail2ban menjadi konfigurasi lokal:
$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Lalu sunting konfigurasi tersebut:
$ sudo nano /etc/fail2ban/jail.local

Perhatikan gambar di atas berikut ini keterangannya saya ambil yang terpenting saja:
  • ignoreip jika dilihat dari namanya saja kita sudah tahu yakni mengabaikan IP tertentu atau pengecualian walaupun salah memasukkan password berkali-kali. Jika Anda ingin IP address berjumlah lebih dari satu, silahkan pisahkan dengan spasi antara IP yang satu dengan yang lainnya.
    Contoh 127.0.0.1/8 128.168.0.0/24
  • findtime adalah jumlah waktu sebuah IP yang akan diblokir dalam satuan detik. Secara default fail2ban memberikan waktu 600 detik ini berarti 10 menit. Jika Anda menginkan diblokir selama satu hari tinggal ganti saja menjadi 86400.
  • maxretry yakni jumlah percobaan yang dapat dilakukan oleh seseorang yang melakukan brute force, sebelum IP tersebut di blok dicatat dahulu oleh fail2ban jika sudah 3 kali maka dibanned. Secara default fail2ban memblokir 3 kali percobaan. Anda bisa mengubahnya menjadi 2 atau lebih banyak. Kalau hemat pribadi saya cukup 3 kali salah maka blokir.
Untuk beberapa pengaturannya silahkan ganti hal berikut:
  • destemail ganti root@localhost dengan alamat email yang Anda inginkan misalnya lapor@linuxku.com, pastikan terlebih dahulu bahwa Server a sudah mempunyai mail server.
  • Kemudian lakukan pengaturan untuk beberapa service yang perlu misalnya ssh, dropbear, dan lain-lain. Anda bisa mengaktifkannya atau mengubah port yang disesuaikan jika memang beberapa port seperti SSH tidak Anda gunakan port defaultnya.
 

Langkah terkakhir yakni restart fail2ban untuk memastikan semuanya berjalan dengan baik:
$ sudo service fail2ban restart
Anda dapat mengecek iptabes apakah fail2ban sudah menangani masalah bruteforce ssh atau belum dengan cara:
$ sudo iptables -L

Semoga bermanfaat :)