Kamis, 12 Mei 2022

Membuat SSH Keys Pada Linux

SSH Key digunakan untuk mengotorisasi login tanpa perlu menggunakan password server.  Sehingga ketika ingin melakukan koneksi SSH pada server kita tidak perlu menggunakan username dan password.  

Ketika kita menggunakan google cloud, gitlab, github SSH key bisa memudahkan kita dalam keperluan akses. Berikut adalah cara membuat SSH Key pada linux.

Silahakan login SSH ke server kemudian ketikan : ssh-keygen  Jika muncul pertanyaan cukup tekan enter saja pada pertanyaan berikut :

Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): 
Enter same passphrase again:

Silahkan gunakan diserver yang ingin kita login tanpa password. Semoga membantu

Update : Jika hasil private_key dalam bentuk openssh dan  tidak bisa dipakai yang dibutuhkan bentuk RSA silahkan jalankan perintah :

ssh-keygen -p -m PEM -f ~/.ssh/id_rsa

Selasa, 19 April 2022

Cara Melakukan CHMOD Masal Pada Linux




CHMOD pada linux merupakan aturan bagaimana file kita bisa di baca dan edit oleh user yang ada. Terkadang kita tanpa sadar melakukan set chmod 777 pada file untuk kepentingan tertentu. Permission tersebut cukup bahasa karena semua bisa melakukan apapun terhadap folder atau file yang ada. Maka kita perlu melakukan setup default dimana folder seharusnya memiliki permission 644 sedangkan 755 untuk folder. Berikut adalah cara mudah melakukan chmod tersebut secara masal pada sebuah direktori.

Untuk mengubah seluruh direktori menjadi 755, perintahnya adalah: 

$ sudo find folder_project/ -type d -exec chmod 755 {} \;


Untuk mengubah seluruh file menjadi 644, perintahnya adalah: 

sudo find folder_project/ -type f -exec chmod 644 {} \;

Cara Menemukan Lokasi File Besar Pada Linux

Disk atau hardisk penuh sering terjadi pada server yang kita kelola. Meskipun masalah sederhana namun memiliki efek fatal yaitu server menjadi down atau tidak bisa diakses. Ketika sedang terjadi transaksi kejadian tersebut dapat menimbulkan kerugian. Yang jadi masalah adalah kita sudah mengetahui hardisk habis tetapi kita tidak mengetahui penyebabnya apa sedangkan sistem kita misal tidak ada fiture upload file. 

Jika kita mengalami masalah tersebut berikut adalah langkah yang perlu menjadi perhatian.

  1. Cari file ukuran besar yang menjadi penyumbang hardisk penuh.
  2. Jika file tersebut adalah log maka hapus yang memiliki umur lama misal 180 hari.
  3. Jika file dihapus menjadikan error cukup kosongkan isinya tanpa perlu menghapus file.
Berikut adalah contoh sintak untuk melakukan 3 point diatas.
- Mencari file besar
find / -type f -size +20M -exec ls -lh {} \; | awk '{ print $NF ": " $5 }'

- Hapus Log yang sudah 180 hari
find /var/log/ -type f -mtime +180 -delete

- Menghapus isi log
cat /dev/null > /var/log/exim/main.log

Selasa, 22 Maret 2022

Cara Mudah Mematikan Service Pada Ubuntu



Semua service yang berjalan pada Linux memiliki nomor PID. Terkadang ada service yang menjadikan load CPU dan RAM menjadi tinggi sehingga kita memerlukan stop terhadap service tersebut. Untuk beberapa kasus kita mengetahui nomor PID tetapi kita tidak tahu service dari PID tersebut apa.

Ketika kita asal melakukan kill bisa menjadi menjadi masalah baru. Cara mudah untuk mengetahui service apa berdasarkan nomor PID lakukan berikut pada terminal :
ps aux | grep 973

973 kita anggap sebagai nomor PID yang ingin kita lihat nomor tersebut service apa.
setelah kita tahu dan yakin ingin dilakukan stop atau kill jalankan perintah berikut :

sudo kill -9 973

Semoga membantu.

Selasa, 08 Maret 2022

Cara Mengatasi Inode Penuh Pada Server


Inode adalah struktur data yang digunakan untuk menyimpan semua informasi file pada server. Inodes bisa berisi folder, file, image dan apapun file yang kita upload. Ketika server sudah mencapai 100% maka server akan kehabisan ruang penyimpanan. Jika aplikasi kita membuat log maka kondisi ini mengakibatkan webiste atau aplikasi kita tidak bisa diakses. Silahkan ketikan perintah df -i jika hasilnya /dev/sda menunjukan 100 % maka dipastikan server kehabisan ruang penyimpanan karena inode sudah mencapai batas maksimal.

Untuk mencari dimana lokasi folder yang menyebabkan inode penuh ketikan perintah berikut : 
sudo find . -xdev -type f | cut -d "/" -f 2 | sort | uniq -c | sort -n
Selanjutkan silahkan lakukan penghapusan file sesuai hasil pengecekan tersebut. Semoga membantu.

Kamis, 03 Maret 2022

Cara Setting Timezone Asia/Jakarta Pada Ubuntu


Setelah kita setup sebuah server atau vm terkadang kita lupa melakukan pengecekan apakah timezone dari server yang akan kita gunakan sudah sesuai atau belum. Kita akan menyadari ketika aplikasi menggunakan fungsi date dan ternyata tidak sesuai. Berikut adalah cara menjadikan timezone pada Ubuntu kita sesuai waktu Asia / Jakarta. 

Silahkan login ssh ke server yang akan gunakan kemudian ketikan pada terminal dengan hak akses sebagai root:

Semoga membantu.

Jumat, 06 Agustus 2021

Cara Merubah Port SSL Pada Vesta Control Panel



SSL merupakan komponen yang seharusnya kita terapkan ketika ingin melakukan komunikasi antar server. Beberapa aplikasi yang sedang didevelop memberikan syarat menggunakan https dan port custome bukan port 443. Secara teori kita cukup merubah listen 443 menjadi port yang kita inginkan. Kemudian melakukan edit pada settingan http.conf. Bagaimana jika kita menggunakan Vesta Control Panel sebagai dapur pacunya ? Berikut cara mudah untuk merubah port 443 pada vestacp menjadi port yang kita inginkan.

Kita perlu hak akses root untuk melakukan konfigurasi ini. Masuk terminal sebagai root sesuai kan dengna metode akses server kita dan masuk ke directory /usr/local/vesta/conf. 

kemudian tampilkan isi file yang ada dengan perintah ls -l dan akan tampil 


Buka file vesta.conf bisa dengan text editor default dengan cara vi vestacp.conf. 

Kemudian edit bagian WEB_SSL_PORT dengan port yang kita inginkan setup. Contoh kasus saya akan ganti menjadi 8083.




Untuk melakukan edit tekan tombol [i] untuk insert. Kemudian tekan ESC dan ketikan :wq untuk menyimpan dan keluar dari text editor Vi.


Kemudian lanjutkan dengan merubah settingan configurasi nginx dengan cara edit contoh :

vi /home/admin/conf/web/totorajo.web.id.nginx.ssl.conf. 

Silahkan sesuaikan dengan environment yang ada.


Edit pada bagian berikut sesuai port yang kita inputkan di atas:

listen listen      xxx.xx.xxx.xx:8083 ssl;


location @fallback {

        proxy_pass      https://xxx.xx.xxx.xx:8083;

    }


xxx.xx.xxx.xx adalah IP server yang digunakan


Untuk menyimpan seperti biasa esc diikuti :wq. Sampai disini kita sudah selesai. Tapi port 8083 belum bisa diakses karena port belum di accept pada iptables. Lakukan ini untuk memberikan akses.


Login ke panel admin vestacp kemudian Menu Server pada list service iptables lakukan configure dan sesuakan port diatas dibagian akses web seperti kota merah.



Setelah rangkain diatas selesai silahkan reboot server atau vps dan coba akses https://domain.com:8083.

Cara Setup SSL Letsencrypt Pada VestaCp

 


Ketika kita sedang melakukan develop aplikasi dan membutuhkan ssl terkadang menjadi masalah tersendiri. VestaCp sudah memberikan fiture cara mudah untuk mendapatkan ssl dari letsencrypt. Meskipun hanya berlaku 3 bulan tetapi cara ini sudah cukup untuk proses development. 

Berikut cara untuk mendaptkan ssl letsencrypt Pada VestaCp. Silahkan ssh ke vps kita dan jalankan sintak berikut :

letsencrypt-vesta USERNAME DOMAIN
Jika ditemukan error : letsencrypt-vesta: command not found 
gunakan perintah berikut :
/usr/local/vesta/bin/v-add-letsencrypt-domain USERNAME DOMAIN

USERNAME adalah user vestacp yang digunakan membuat add domain.
DOMAIN adalah domain yang kita inginkan bisa diakses https.
Setelah selesai restart vps dan coba akses domain menggunakan https.
Selamat mencoba

Senin, 14 September 2020

Cara Menghitung Kebutuhan Bandwidth Pada Alibaba Cloud


   
         Hari ini 14 September 2020 ada pengalaman yang perlu dibagikan, bisa jadi masalah ini akan dialami kita sebagai sysadmin. Memilih untuk berpindah penyedia cloud itu tidak ada yang salah dan terkadang menjadi keperluan yang bersifat segera. Apalagi untuk kepentingan peningkatan layanan bagi user. Saya sebelumnya menggunakan Digital Ocean sebagai dapur aplikasi ujian online dan saat ini migrasi ke Alibaba Cloud. Proses setup berjalan lancar aplikasi berjalan sesuai rencana. Tidak ada tanda masalah besar bakal terjadi sampai akhirnya sampai pada titik apps digunakan 700 user secara bersamaan. Seperti biasanya sebagai sysadmin tentu siaga untuk masalah yang tidak terduga. User mulai login melakukan klak klik pada menu yang tersedia. Saat itu masih menunjukan indikator aman, semua parameter menunjukan angka bagus. Ketika pada analytic terdeteksi ada 300 user mulai menggunakan apps kejanggalan mulai terjadi. User berikutnya tidak bisa akses apps, cms super admin timeout. Chat error mulai berdatangan. Dan inilah tiba saatnya keputusan cepat harus diambil. Cek CPU, RAM masih jauh dari batas maksimal. Tapi user tidak akses apps. Apa masalahnya ? Bandwidth internet adalah jumlah konsumsi transfer data yang dihitung dalam satuan waktu bit per second (bps). Dan ini sumber masalahnya yaitu apps kekurangan bandwidth. 

            Pada saat kita create instance pada Alibaba Cloud tentunya kita ditanya ingin menggunakan bandwidth berapa. Ini tidak boleh asal saja kita dalam mengisi. Kita harus menghitung berapa kebutuhan apps menggunakan bandwidth dengan jumlah user. Jika kita salah menghitung maka akan terjadi kasus apps terasa sangat lemot sedangkan CPU dan RAM masih cukup. Untuk menghitung kebutuhan bandwidth bisa menggunakan cara sederhana berikut. Tentukan untuk 1 user ketika menggunakan apps secara full butuh berapa, misal 1 MB. Maka silahkan kalikan dengan jumlah user yang akan menggunakan misal 600 user. maka kebutuhan bandwidth yang harus dibeli di Alibaba Cloud adalah 1 MB x 600 user = 600 MB. Alibaba Cloud bandwidth paling kecil 1 Mbps kita bisa upgrade sesuai kebutuhan. Semoga membantu.
DomaiNesia