Melihat top / high 10 process yg sangat besar dalam penggunaan cpu dan memory server .
ps -eo user,pcpu,pmem | tail -n +2 | awk '{num[$1]++; cpu[$1] += $2;
mem[$1] += $3} END{printf("NPROC\tUSER\tCPU\tMEM\n"); for (user in cpu)
printf("%d\t%s\t%.2f\t%.2f\n",num[user], user, cpu[user], mem[user]) }'
Untuk melihat siapa saja user yg memiliki cron aktif dan dijalankan di server secara rutin .
for USER in `ls /var/spool/cron`; do echo "=== crontab for $USER ==="; echo $USER; done
Untuk merelease unused memory in server , flush temp cache
buffer dalam memory server . count ini akan merelase sebesar 1 GB ram (1
M * 1k )
dd if=/dev/zero of=junk bs=1M count=1K
Untuk mencari file dengan ukuran 0 dan langsung menghapusnya auto .
find . -type f -size 0 -delete
Mencari tahu process apa saja yg sedang dilakukan / dijalankan oleh si user .
Ex : ganti username dengan nama user yg mau anda strace intip aktifitasnya.
x=1; while [ $x = 1 ]; do process=`pgrep -u username`; if [ $process ]; then x=0; fi; done; strace -vvtf -s 256 -p $process
Untuk mengetahui berapa banyak ram yang sedang dipakai suatu process , dalam hal ini saya mengambil sample httpd .
Ketika dijalankan cmd tsb maka akan auto calculate penggunaan memory dari seluruh process httpd tersebut diserver .
Info : anda bisa mengganti httpd dengan process lain untuk count memory usage seperti imap , mysqld , ftpd dll
ps -o rss -C httpd | tail -n +2 | (sed 's/^/x+=/'; echo x) | bc
Fungsi :
Untuk melihat 10 list ukuran size terbesar dalam suatu folder / files
du -sk * |sort -rn |head
Mencari string / kata yg kita ingin cari dalam suatu files , baik PHP , GIF , HTML , CGI dsb .
A) cmd dibawah berfungsi untuk scanning php files dalam path
si username dan mencari 1 kata / strings dalam files php yg sesuai
dengan "powered by rapidleech" .
find /home/username/ -name "*".php -type f -print0| xargs -0 grep
"powered by rapidleech" | uniq -c | sort -u | cut -d":" -f1 | awk
'{print "Penting - tolong check files berikut " $2}' | uniq
( jika ketemu maka akan ada dilistnya beserta warning ) .
find /home/username/ -name "*".php -type f -print0| xargs -0 egrep
"rapidleech|c99" | uniq -c | sort -u | cut -d":" -f1 | awk '{print
"Penting - tolong check files berikut " $2}' | uniq
Fungsi :
cmd diatas berfungsi untuk scanning php files dalam path si username
dan mencari beberapa kata / strings dalam files php yg sesuai dengan
rapidleech dan c99
( ini salah satu method yg saya gunakan untuk membuat plugin antivirus dalam cpanel) .
berbeda dengan A yg hanya dapat mencari 1 pattern kata , di B ini bisa memasukan beberapa
anda bisa memodifikasi dengan mencari kata yg sesuai untuk antisipasi
misal untuk virus / rapidleech / shell attacker c99, r57 dsb.
content yg di ubah nama filesnya akan ketahuan juga nanti , jadi buka
dan copas aja isi script didalamnya dan masukan query yg terkandung di
dalamnya beberapa ke string pattern searching
jadi walaupun dia rubah nama files / dir nya yg failed di locate / di
find berdasarkan nama files tetep akan ke scan melalui method ini
karena scan ini mencari pattern text dalam isi filesnya dan bukan dari
nama filesnya.
Untuk melihat detail cpu information .
cat /proc/cpuinfo
Tracking ddos attack berdasarkan jumlah urutan IP dengan koneksi terbanyak
netstat -ntu | awk '{print $5}' | tail --lines=+3 | cut -s -d: -f1 | sort | uniq -c | sort -n -b -r
ex hasil :
# IP
------------------
129 114.58.67.xx
20 114.58.67.xx
dimana 129 adalah jumlah koneksi yg di dapat dari ip 114.58.67.xx
Untuk melihat process server berdasarkan tree status
env LANG=C pstree -c
Sortir process bedasarkan penggunaan memory dan cpu
ps aux --sort=%mem,%cpu
Fixed nobody user yang run wrong permission right uid .
chown -R username:username dir
ex : folder test pada home user andi jalan / run tanpa right permission .
untuk fix lakukan hal sbb :
# cd /home/andi/public_html
# chown -R andi:andi test
setelah selesai lakukan test eksekusi editing dan upload data pada dir tersebut
untuk melihat nilai current koneksi berdasarkan IP.
netstat -ntu | grep ':' | awk '{print $5}' | sed 's/::ffff://' | cut -f1 -d ':' | sort | uniq -c | sort -nr
Realtime Memory usage monitoring realtime
watch vmstat -sSM
Output display:
- total memory
- used memory
- active memory
- inactive memory
- free memory
- buffer memory
- swap cache
- otal swap
- used swap
- free swap
- non-nice user cpu ticks
- nice user cpu ticks
- system cpu ticks
- idle cpu ticks
- IO-wait cpu ticks
- IRQ cpu ticks
- softirq cpu ticks
- stolen cpu ticks
- pages paged in
- pages paged out
- pages swapped in
- pages swapped out
- interrupts
- CPU context switches
- boot time
- forks
Hardisk filesystem monitoring realtime
watch -d -n 2 'df; ls -FlAt;'
Realtime mysql status monitoring
watch mysqladmin pr
Check monitoring open / listening port realtime
lsof -Pni4 | grep LISTEN
Mencari / Analysis siapa saja yg mengirim mail terbanyak yg
ada di top relaying mail serta menampilkan di path apa dia mengirim mail
tersebut .
ini berguna untuk mencari spammer user dan mecari path folder
tempat eksekusi send mail tersebut sehingga bisa dilakukan analysis
serta monitoring rutin diserver.
awk '$3 ~ /^cwd/{print $3}' /var/log/exim_mainlog | sort | uniq -c | sed "s|^ *||g" | sort -nr
Sample output :
1041 cwd=/home/bb/public_html/tester
154 cwd=/home/aa/public_html/beta
Penjelasan :
1041 dan 154 ini adalah total mail yg terkirim
sebelah kanan merupakan path tempat mail tersebut dikirimkan
Cek jumlah proses httpd
ps -def | grep httpd | grep -v grep | wc -l
Cek jumlah koneksi httpd per IP address, diurutkan dari kecil ke paling besar:
netstat -anp | grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
Cek proses httpd yang berstatus SYN_RECV (untuk melihat tipe serangannya SYN FLOOD atau bukan
netstat -an | grep SYN
Mass chmod folder
find /home/*/public_html -type d -exec chmod 755 {} \;
Mass chmod file
find /home/*/public_html -type f -exec chmod 644 {} \;
Menonaktifkan, mematikan dan flush apache/mysql/exim secara langsung jika terjadi ddos
ps -ef | grep httpd | grep -v grep | awk '{print "kill -9", $2}' | sh
Untuk melihat PID zombie
ps aux | grep -w Z | tr -s ' ' | cut -d' ' -f2 | tee zombie ; cat zombie
ICC
0 komentar:
Post a Comment