solusi harddisk server VPS tidak berubah setelah di tambah

Salah satu VPS saya penuh disknya, tapi harddisk server VPS tidak berubah setelah di tambah. setelah saya cari-cari solusinya, akhirnya nemu, walaupun awalnya saya riskan karena bisa saja datanya kehapus setelah di eksekusi. 😀

penampakan hdd tidak berubah

penampakan hdd tidak berubah

padahal sudah saya tambah jadi 1 TB. tapi yang terbaca si sistem masih 20 GB.

solusinya :

melepaskan disknamenya dulu dengan perintah

ant@linux:~$ growpart /dev/sda 1

setelah itu, serize sekaligus memberi diskname baru

ant@linux:~$ resize2fs /dev/vda1

sudah, beres.

penampakan disk sudah jadi 1 TB

penampakan disk sudah jadi 1 TB

sekian, terima gaji.

tambahan, nah di diatas itu adalah VM yang berjalan di atas openstack dengan os ubuntu.

baru0baru ini saya mendapatkan case untuk os centos 7 yang berjalan di atas proxmox.

langkahnya adalah setelah disk berhasil di resize lewat dashboar proxmox, kemudian lanjut login ssh ke VM nya, kemudian ketikkan perintah seperti dibawah ini.;

[root@localhost ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 908M     0  908M   0% /dev
tmpfs                    919M     0  919M   0% /dev/shm
tmpfs                    919M  8,5M  911M   1% /run
tmpfs                    919M     0  919M   0% /sys/fs/cgroup
/dev/mapper/centos-root   50G  1,6G   49G   4% /
/dev/sda1               1014M  194M  821M  20% /boot
tmpfs                    184M     0  184M   0% /run/user/0
/dev/mapper/centos-home  247G  247G  1,2M 100% /home
[root@localhost ~]# lvscan
  ACTIVE            '/dev/centos/swap' [2,00 GiB] inherit
  ACTIVE            '/dev/centos/home' [246,99 GiB] inherit
  ACTIVE            '/dev/centos/root' [50,00 GiB] inherit
[root@localhost ~]# lvextend -r -l +100%FREE /dev/centos/home
  Size of logical volume centos/home changed from 246,99 GiB (63230 extents) to <297,00 GiB (76031 extents).
  Logical volume centos/home successfully resized.
meta-data=/dev/mapper/centos-home isize=512    agcount=4, agsize=16186880 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=64747520, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=31615, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 64747520 to 77855744
[root@localhost ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 908M     0  908M   0% /dev
tmpfs                    919M     0  919M   0% /dev/shm
tmpfs                    919M  8,5M  911M   1% /run
tmpfs                    919M     0  919M   0% /sys/fs/cgroup
/dev/mapper/centos-root   50G  1,6G   49G   4% /
/dev/sda1               1014M  194M  821M  20% /boot
tmpfs                    184M     0  184M   0% /run/user/0
/dev/mapper/centos-home  297G  247G   51G  84% /home
[root@localhost ~]#

 

Bagikan saja, itu tidak berat

Volume haddisk server tidak berkurang walaupun sudah hapus file ? begini solusinya

Halo, catatan kali ini tentang Volume haddisk server tidak berkurang walaupun sudah hapus file.

volume harddisk pada salah satu server sudah mencapai 98 % , biasanya jika sudah 100% , service-service akan macet alias tidak jalan. mengatasi itu, saya melakukan hapus file yang tidak perlu.

biasanya, file-file yang saya hapus itu log, tapi bukan log terakhir ya. melainkan log-log yang sudah lama.

selain file log, ada juga file temporary yang lumayan dan selalu besar.

kedua cara itu bukan solusi yang benar sih, karena bagaimanapun, log itu sangat penting. log itu dalam bahasa manusianya adalah kenangan, jadi menurut saya kenangan itu penting. kenangan kamu penting gak? kalo gak penting ya hapus saja. 😀

oke balik ke solusi. kalau ngomongin kenangan ini bisa panjang ceritanya 😀

solusi yang baik adalah membuat server log berukuran besar, jadi log bisa kita lempar ke server log tsb. server itu hanya berisi kumpulan log log dari berbagai server maupun device seperti router, firewall dan lain-lain.

tapi karena saya belum membuat server log, makanya untuk mengatasinya saya menghapus file tersebut.

hdd 98%

hdd 98%

ini penampakan hdd yang sudah 98%. padahal saya sudah hapus beberapa file. harusnya sudah berkurang ya.

nah, perintah yang digunakan untuk melihat itu adalah lsof ( list open files ) . penjelasan tentang lsof bisa kamu cari di google yah. 😀

kalau belum terinstall, kamu bisa menginstall lsof dengan perintah ( untuk linux centos ) :

[root@kb-management ~]# yum install lsof

yum install lsof

yum install lsof

list open files

list open files

nah, ketahuan itu, jadi maksudnya disini adalah, file-file yang sudah terhapus itu rupanya masih tersimpan di memory, jadi statusnya belum benar-benar terhapus. untuk menghapusnya, kita ketik perintah kill, begini contohnya :

kill -9

kill -9

kill itu bahasa inggris, artinya membunuh kalau tidak salah. jadi maksudnya prosesnya kita bunuh secara kejam dan tanpa maap 😀

setelah di kiil, harddisk saya kembali seperti harapan saya dan semua banyak pihak. hehe

df -h

df -h

ketik df -h untuk melihatnya.

sekian celotehan dari saya yang sangat newbie dan unfaedah ini.

Bagikan saja, itu tidak berat

Hardening Server #2 Instalasi dan konfigurasi Malware Detect pada linux server

Pengalaman kali ini bercerita tentang instalasi dan konfigurasi Malware Detect pada server linux.

akhir-akhir ini jadi konsentrasi sama security karena salah satu server terkena RootKit. jadi Parno 😀

oke, malware detect ini berfungsi untuk mendeteksi script malware yang berada pada server. biasanya, script itu nempelnya di folder website.

oke, berikut langkah-langkahnya.

pertama-tama mari ucapkan do’a, kemudian, download malware detect :

ant@linux:~$ wget http://www.rfxn.com/downloads/maldetect-current.tar.gz

ant@linux:~$ tar -xvf maldetect-current.tar.gz

ant@linux:~$ cd maldetect-1.6.4

ant@linux:~$ ./install.sh

lakukan konfigurasi maldetect dengan perintah :

ant@linux:~$ nano /usr/local/maldetect/conf.maldet

sesuiakan script dengan perintah ini :

email_alert=1
email_addr=gacanepa@localhost
email_subj="Malware alerts for $HOSTNAME - $(date +%Y-%m-%d)"
quar_hits=1
quar_clean=1
quar_susp=1
clam_av=1

setelah di sesuaikan, instalasi clamav , clamav ini anti virus, jadi cara kerja malware detect ini membuat Perjanjian Kerja Sama ( PKS ) antara malware detect dengan clamav.

ant@linux:~$ apt install clamav

freshclam

selesai, instalasi dan konfigurasi selesai, gampang kan ? banget.

sekarang saya uji coba scan di server saya :

ant@linux:~$ maldet –scan-all /var/www/

hasilnya :

cara install malware detect

tiga file terjaring razia malware detect dan langsung dikarantina, otomatis, fungsi dari aplikasi yang didalamnya terdapat file tersebut, tidak bisa berjalan sesuai fungsi sebelum file tersebut dihapus dari folder karantina.

/usr/local/maldetect/quarantine

Bagikan saja, itu tidak berat

Bagaimana bisa sih server terserang Rootkit ? begini kronologinya.

Beberapa waktu lalu, salah satu Virtual Private Server terserang Rootkit.

Rootkit ini adalah kode jahat atau didalam dunia IT biasa disebut Malware. melakukan pekerjaan di server yang terinfeksi sesuai dengan perintah programmernya. ya pokoknya kalau mau tau lengkap tentang rootkit, bisa brosing-brosing yaks.

setelah di telusuri dari log, baik log firewall maupun log sistem operasi. kemungkinan besar rootkit itu masuk melalui port default SSH , yaitu 22.

metode yang digunakan adalah Brute Force, yaitu sebuah teknik mencocokkan kombinasi username dan password untuk akses ke remote SSH.

Brute Force Attack

nah, kok bisa masuk melalui port tersebut ? setelah di telusuri, kombinasi username dan password server yang terjangkir Rootkit untuk remote SSH itu sangat default, dengan loginnya root ( user tertinggi pula ).
username : root
passwd : rahasia

berikut bukti bahwa ada ribuan kali percobaan untuk login,

Brute Force 3

tidak butuh waktu lama untuk Script Brute Force tersebut mampu menebak kombinasi loginnya.

Brute Force Attack 1setelah berhasil masuk ke server, scipt tersebut menanamkan Malware, melakukan Sync Flood ke IP luar Negeri.

ini malwarenya :

Brute Force 5

Screenshot_535

dan ini kegiatannya :

Brute Force 5

ini bisa terjadi juga dikarenakan konfigurasi firewall yang kurang tepat, sehingga mengijinkan trafik yang dinilai tidak lazim untuk melewati jaringan.

sekian, mitigasi dari saya. semoga kejadian ini tidak terjadi lagi. amin.

Bagikan saja, itu tidak berat

Hardening Server #1 . merubah default port akses SSH pada linux

Halo , mau cerita sedikit.

yang pertama mau cerita tentang pekerjaan saya ya, jadi pekerjaan saya adalah sebagai penyedia Hosting dan Virtual Private Server bagi client-client yang membutuhkan.

Hosting digunakan untuk user-user yang menitipkan file aplikasi atau website yang tidak membutuhkan spesifikasi dan konfigurasi khusus. jadi, pengelolaan server dan jaringannya sepenuhnya ditanggung oleh kami, mulai dari konfigurasi, backup sampai dengan maintenance.

berbeda dengan hosting, Virtual Private Server atau yang di singkat VPS adalah server virtual yang biasanya di minta karena user membutuhkan spesifikasi dan konfigurasi khusus. seharusnya dan memang semestinya, urusan konfigurasi, security, backup dan maintenance di kelola oleh user tersebut. ini secara virtual lo ya, kalau secara fisik, masih di kelola oleh penyedianya ( kami ).

jadi itu cerita singkat pekerjaan saya, selain pekerjaan-pekerjaan lagi yang ditugaskan oleh atasan.

lanjut ceritanya, beberapa hari yang lalu, salah satu VPS yang di kelola oleh client terserang rootkit, rootkit ini berjalan di user root , melakukan sync flood ke IP luar negeri

bagaimana bisa terserang rootkit, saya jelaskan pada artikel ini :

Bagaimana bisa sih server terserang Rootkit ? begini kronologinya.

mengandalkan firewall saya tidak cukup, jika itu yang menyerang script, mungkin bisa diatasi oleh firewall, tapi jika yang menyerang manusia ? tidak bisa.

maka dari itu perlu pengamanan tambahan seperti judul diatas. begini teknisnya :

setelah masuk ke server, rubah konfigurasi SSH kamu.

rubah default port ssh

menggunakan perintah editor, kemudian, hapus tanda pagar, dan rubah menjadi port yang unik dan tidak standar terserah kamu.

rubah default port ssh 2

lalu save , kemudian jangan lupa restart service ssh nya

rubah default port ssh 3

dengan begini, port ssh telah berubah. sedikit lebih aman karena biasanya script Brute Force disana menggunakan port default dari service SSH server.

pesan moral : TIDAK ADA SYSTEM YANG AMAN DI DUNIA INI, WALAUPUN ITU BERADA DI LOCALHOSTMU.

Bagikan saja, itu tidak berat

sudo grep -i -r

sudo grep -i -r “katayangkamucari” /foldertujuan

saat migrasi website, terkadang saya kesulitan mencari satu kata yang termuat didalam file diantara ratusan/ribuan file dan terselip didalam banyaknya subfolder yang isinya antah berantah.

cek file satu persatu itu gak mungkin, makanya saya pakai perintah diatas. dan dalam waktu sekejab, saya menemukan kata itu. mudah bukan, itulah teknologi.

hmmm,,,, saat saya melakukan perintah itu, sejenak terlintas didalam fikiran saya. andai kata, kedepannya, perintah grep ini bisa diterapkan tidak hanya di lingkup teknologi, tapi bisa juga diterapkan di lingkup sosiologis. mungkin akan banyak yang mengetik perintah grep itu dengan :

sudo grep -i -r “cinta” /dunia

47271107_2371811062843409_1793376848713875456_n

Bagikan saja, itu tidak berat

Membuat user nologin di ubuntu untuk eksekusi aplikasi

Halo, ceritanya saya sedang instalasi aplikasi di server linux ubuntu.

nah, pengennya saya, aplikasi tersebut dijalankan user user yang bukan sudoers dan tidak memiliki login. setelah googling sana sini, akhirnya nemu juga solusinya.

hal ini saya maksudnya untuk tingkat keamanan saja, dan untuk manajemen user. okeh, mari kita lakukan.

  1. hal pertama adalah membuat user baru.

ant@linux:~$ sudo useradd -s /sbin/nologin nadia

2. kemudian memberi password pada user tsb

ant@linux:~$ sudo passwd nadia
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
ant@linux:~$

3. lanjut, membuat direktory dan hak kepemilikan untuk user tsb.

ant@linux:~$ mkdir nadia
ant@linux:~$ sudo chown -R nadia:nadia nadia
ant@linux:~$ cd nadia
ant@linux:~/nadia$

4. selanjutnya memberikan hak akses bash pada user tersebut, dimana hak akses bash itu diperuntukkan menjalankan perintah-perintah, ya pokoknya gitu deh.

ant@linux:~$ sudo -u nadia bash
nadia@linux:~$

otomatis sudah pindah ya, ke user nadia.

yuk, sekarang saya buat contoh user tersebut untuk mendownload dan mengeksekusi aplikasi.

user nologin

user nologin

pada percobaan ini, user saya gunakan untuk wget. dan berhasil., kemudian

user nologin bash

user nologin bash

setelah extrack , dan saya masuk ke folder extrac untuk menjalankan aplikasi

membuat user nologin

membuat user nologin

oke, perintahnya sukses ya, sekarang kita cek, apakah benar aplikasi tersebut dijalankan oleh user nadia

pertama kita ketik exit dulu untuk kembali ke user sudoers, kemudian ketik perntah seperti digambar.

Screenshot_356oke, berhasil ya. sekian dulu celotehan dari saya.

salam damai :*

Bagikan saja, itu tidak berat

Membuat auto backup database server Mariadb

Halo , catatan kali ini adalah membuat Auto Backup pada database Mariadb/Mysql.

auto backup ini diperlukan dan menurut saya sangat diperlukan untuk antisipasi jika terjadi bencana pada server. misalnya kerusakan pada database server, ataupun terhapusnya data. dengan adanya backup, kita bisa melakukan restore menggunakan file backup tersebut.

kegiatan kali ini saya jalankan pada server saya. dengan komposisi :

  1. server dengan OS ubuntu.
  2. Mariadb versi 10.3
  3. akses SSH

untuk alasan Security, script ini saya jalankan di user root. tahap awal adalah membuat sebuah file bash script pada folder home root dengan perintah editor vi

root@hosting-app:~# vi backupdb.sh

ketik huruf i untuk mengedit, kemudian isi file tersebut dengan script dibawah ini :

#auto backup mariadb
mysqldump –user=’root’ –password=’xxxxx’ -h localhost –all-databases > data_`date +%d%m%Y_%H%M%S`.sql

#Menghapus file setelah tujuh hari
find /root -name “*sql” -mtime +7 -exec rm {} \;

setelah itu, ketik tombol Esc , kemudian save dengan perintah  :wq

setelah disimpan, berikan permisi pada file tersebut agar dapat dieksekusi dengan perintah :

root@hosting-app:~# chmod 777 backupdb.sh

sampai disini, script auto backup berhasil dibangun, namun belum bisa berjalan otomatis karena belum didaftarkan pada cronjob. cara menambahkan pada cronjob adalah dengan mengetikkan perintah :

root@hosting-app:~# crontab -e

tambahkan baris script seperti dibawah ini (yang di blok) :

Screenshot_82

kemudian tekan Ctrl+x , dan pilih Yes

arti dari baris diatas adalah : melakukan eksekusi file backudb.sh pada jam 01.00 dini hari setiap hari. dimana file backupdb.sh itu adalah perintah untuk backup database mariadb dan hapus file setelah tujuh hari.

setelah itu, lakukan restart pada service pada crobjob dengan perintah :

root@hosting-app:~# systemctl restart cron

sampai disini, script auto backup database sudah berhasil, jika belum berhasil, ulangi sampai berhasil :p

sekian dan terima gaji

Bagikan saja, itu tidak berat

Sysadmin siap dalam kondisi apapun

Laptop rusak belum dibenerin.
Quota internet habis belum diisi.

Beginilah sedikit cerita tentang ke misqueenan seorang tukang kebun yang harus menjaga kebun2nya baik siang ataupun malam agar tetap baik2 saja.

Sedang leyeh-leyeh di depan sambil numpang waifi sekolahan TK, tiba-tiba dapet pesan WA dari atasan : “Bro, coba akses web zzz , sepertinya error”. Oke siap cek boss, jawab saya.

Sadar kalau laptop masih rusak dan minimnya akses internet, saya melakukan remote terhadap ‘kebun-kebun’ saya dengan kondisi kadang konek, kadang putus + dinyamukin diluar rumah.

Rasanya lega, bisa mengatasi masalah dengan keadaan yg minim. Tetap optimis dengan keadaan, dan bertanggungjawab terhadap pekerjaan.

sysadmin

Bagikan saja, itu tidak berat

Troubleshooting server error di tengah malam ( pengalaman dan pengamalan )

Tanggal 1 mei kemarin, tepatnya pukul 22.00 wib atau jam 10 malam, saya harus starter dan gas motor supra butut saya. Ya, menuju kantor. Padahal itu sudah malam dan hari libur nasional.

Hal ini terjadi setelah saya dapat pesan singkat, bahwa layanan *sensor* down dan tidak dapat diakses publik. Awalnya saya coba melakukan remote, tapi tidak bisa. Dan saya menduga server mengalami down.

Sesampainya dikantor, dugaan saya benar, dua keping harddisk server mengalami crash. Karena ini barang warisan, jadi tidak ada sistem mirror. Tapi untungnya saya sempat melakukan backup menggunakan script. Setelah cek semua dan melapor kepada atasan, kemudian saya kembali kerumah pukul 12 malam. Padahal, saya harus terbang ke Denpasar jam 8 pagi.

Sesampainya dirumah, malahan asam lambung saya kambuh, saya menahan penyakit itu sampai jam 6 pagi. Dan menghubungi rekan saya, bahwa saya batal ke Denpasar.

Walau batal ke Denpasar, tapi ada hikmahnya. Saya bisa konsentrasi untuk menghidupkan kembali layanan yang down. Karena layanan itu digunakan di penjuru Indonesia, maka akan menjadi lucu kalau downnya berlama-lama.

Pelajaran buat saya, mirror dan backup itu sangat penting dan memang harus segera dibangun untuk High Avaibility yang bagus.

 server errorhdd crashgagal terbang
Bagikan saja, itu tidak berat