Thursday, November 12, 2015

How to manage a DDoS or DoS attempt directed at your linux server

พอดีอ่านใน facebook ของรุ่นพี่คนนึง แล้วบังเอิญตรงกับเหตุการณ์ที่กำลังพบอยู่พอดีเลยเอามาแบ่งกันนะครับ ยังไงก็ขออนุญาตพี่ด้วยนะครับ

วิธีการตรวจจับ DDoS ใน Linux Server
1. Website ช้าลง
2. สังเกตุพบว่า Process แฮงค์
3. มีการเรียกมาจาก IP เดิมๆซ้ำไปซ้ำมาเยอะๆ
4. Resource ของระบบมีการนำไปใช้ใน Process เยอะ
5. ตรวจจับได้ว่ามี Connection มากผิดปกติโดยใช้คำสั่ง
# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
ส่งผลให้
1. Web Server down
2. System load
สูงมากๆ
3. Server
ไม่ตอบสนอง
4. SSH
ไป server ไม่ได้
5.
เข้าถึงเครื่องไม่ได้เลยจนกระทั่งต้องไป reboot เครื่อง
วิธีป้องกันและแก้ไขปัญหา
1. Enable SYN COOKIES at the kernel level
# echo 1 > /proc/sys/net/ipv4/tcp_syncookies

2. Enable and Configure iptables to prevent the attack or at least work to identify the attack
/sbin/iptables -N syn-flood

/sbin/iptables -A syn-flood -m limit --limit 100/second --limit-burst 150 -j RETURN

/sbin/iptables -A syn-flood -j LOG --log-prefix "SYN flood: "

/sbin/iptables -A syn-flood -j DROP

3. Install APF firewall เพื่อเอาไว้ตรวจสอบพฤติกรรมที่น่าจะเป็นอันตราย
APF ย่อมาจาก Advanced Policy Firewall. สามารถ download ได้จากhttp://www.rfxn.com/projects/
4. ติดตั้ง Script DDoS Deflate เพื่อเอาไว้ป้องกัน DoS แบบ Auto
โดย DDoSDflate สามารถทำได้ดังนี้
It is possible to whitelist IP addresses, via /etc/ddos/ignore.ip.list.
It is possible to whitelist hostnames, via /etc/ddos/ignore.host.list.
Simple configuration file: /etc/ddos/ddos.conf
IP addresses are automatically unblocked after a preconfigured time limit (default: 600 seconds)
The script can run as a cron job at chosen frequency via the configuration file (default: 1 minute)
The script can run as a daemon at chosen frequency via the configuration file (default: 5 seconds)
You can receive email alerts when IP addresses are blocked.
Control blocking by connection state (see man netstat).
Auto-detection of firewall.
Support for APF, CSF and iptables.
Logs events to /var/log/ddos.log
โดยสามารถ download และดูข้อมูลเพิ่มเติมได้ที่ https://github.com/jgmdev/ddos-deflate



แบบของพี่ผมครับ : https://www.facebook.com/hackandsecbook/photos/a.314873568541354.90859.308570299171681/1149404378421598/?type=3&fref=nf&pnref=story

Sunday, October 4, 2015

VMware vRealize Operations Manager configuration


VMware vRealize Operations Manager


     VMware vRealize Operations Manager คือ software management cloud platform ของทาง VMware ซึ่งสามารถจัดการได้ทั้ง private cloud และ public cloud แถมยังติดตั้งง่ายอีกด้วย

Step
  • Download ovf จาก https://my.vmware.com/group/vmware/evalcenter?p=vrops แล้วทำการ deploy
  • config network
  • เปิด browser แล้วไปที่ https://vrops-ip
  • เลือก express install กด next แล้วใส่ password แล้วกด Finish จากนั้นก็รอสักพัก
  • ใส่ user / password admin ที่ตั้ง


  • ไปที่ solution -> VMware vSphere -> รูปเฟือง



  • ใส่ข้อมูลของ vCenter ที่จะ monitor ลงไปตัวอย่างตามภาพ






  • ในส่วนมอนิเตอร์ก็จะแสดงรายละเอียดต่างๆรวมไปถึงการบริโภคทรัพยากรของ vCenter server ที่เรา add ไป






Thursday, September 24, 2015

How to Create Distribute virtual switch on vSphere web client 6

How to Create Distribute virtual switch on vSphere web client 6

step :
  • open vsphere web client and login to your vcenter
  • select vCenter inventory list on left menu

  • select vCenter server

  • select your vcenter server

  • select Distribute switch on left menu or top menu

  • Create distribute switch

  • Enter your distribute switch, choose DC and click next

  • select version

  • Enter your distribute port group

  • click next and click finish
  • Done!!

  • If your go to distribute port group menu.You can see your distribute port group.


Saturday, July 18, 2015

How to kill VM guest by ESXi command

How to kill vm guest by ESXi command

ถ้าเราพบปัญหา vm ค้างแล้วกด power off ไปแล้วไม่ดับ เราสามารถ kill process ของ vm นั้นๆผ่านทาง esxi cmd ได้โดย


  • ssh to ESXi host
  • check process vm on this host
    # esxcli vm process list
  • power off vm ที่ต้องการ
    # esxcli vm process kill --type= [soft,hard,force] --world-id= WorldNumber

    หรือ
    # esxcli vm process kill -t [ soft,hard,force] -w WorldNumber
  • หลังจากนั้นก็จะเห็นว่า vm นั้นดับไป เราก็ค่อยเปิดขึ้นมาใช้งานตามปกติ
credit by : http://kb.vmware.com/

Thursday, July 16, 2015

How to Share ZFS on NFS protocol

How to Share ZFS on NFS protocol.

หลังจากที่เราได้สร้าง zpool และ zfs dataset แล้ว เราจะแชร์ไฟล์ให้เครื่องอื่นๆใน network ได้ใช้ ก็สามารถทำได้โดยใช้คำสั่งตามนี้ครับ

zfs set sharenfs=rw=host1:host2:host3,root=host1:host2:host3 {zpoolname}


แค่นี้ก็สามารถ share ไฟล์ให้ client ต่างๆได้แล้ว

credit : http://zfsonlinux.org/

Wednesday, July 8, 2015

How to install ZFS on Linux(zol) on Debian

          ZFS zeta byte file system คือ file system ชนิดหนึ่งเป็นของ Sun ซึ่งต่อมาทำเป็น open source
 Install package
# wget http://archive.zfsonlinux.org/debian/pool/main/z/zfsonlinux/zfsonlinux_4_all.deb
# dpkg -i zfsonlinux_4_all.deb
# wget http://zfsonlinux.org/4D5843EA.asc -O - | apt-key add -
# apt-get update
# apt-get install debian-zfs parted
Prepare disk
# parted /dev/sd{X} mklabel gpt
Create zpool(Disk)
# zpool create -m none -o ashift=12 {poolname} /dev/sd{X}
Check pool status
# zpool status
or
# zpool get {all,poolname}
Create zfs(partition)
# zfs create iqpool/data
# zfs set dedup={on,off} iqpool/data
# zfs set atime={on,off} iqpool/data
Check zfs status
# zfs list
# zfs get iqpool/data

Tuesday, September 9, 2014

การเปลี่ยน ESXi host IP Address ด้วย ssh command line

วันนี้เราจะมาดูวิธีเปลี่ยน ip address ของ esxi host ด้วย command line กันนะครับ ซึ่งวิธีนี้ถ้าคนที่ใช้คล่องก็จะรู้สึกว่าสะดวกมากเลยทีเดียวนะครับ เพราะไม่ต้องมานั่งล็อกอินเข้า vsphere client หรือ ต่อหน้าจอ console หรือ iLo หรือจะอะไรก็แล้วแต่ครับ และที่สำคัญ linux ก็ใช้ได้เลยโดยไม่ต้องติดตั้งอะไรเพิ่มด้วยครับ เอาล่ะครับมาเริ่มกันเลยดีกว่า

  1. ssh เข้าไปที่ esxi host ก่อนเลยครับ จะด้วย putty หรือถ้าใครใช้ linux ก็เปิด terminal ขึ้นมาแล้วใช้คำสั่ง
    # ssh root@esxi-server
    
  2. ใช้คำสั่งดูก่อนครับว่ามีคอนฟิกเก่าอะไรอยู่บ้าง

    # esxcli network ip interface ipv4 get
    

    Name  IPv4 Address   IPv4 Netmask   IPv4 Broadcast  Address Type  DHCP DNS
    ----  -------------  -------------  --------------  ------------  --------
    vmk0  10.224.199.12  255.255.255.0  10.224.199.255  STATIC           false
    vmk2  192.168.10.13  255.255.255.0  192.168.10.255  STATIC           false
  3. แก้คอนฟิกด้วยคำสั่ง

    # esxcli network ip interface ipv4 set -i vmk2 -I 192.168.10.111 -N 255.255.255.0 -t static
  4. ดูอีกทีครับ

    # esxcli network ip interface ipv4 get
    

    Name  IPv4 Address   IPv4 Netmask   IPv4 Broadcast  Address Type  DHCP DNS
    ----  -------------  -------------  --------------  ------------  --------
    vmk0  10.224.199.12  255.255.255.0  10.224.199.255  STATIC           false
    vmk2  192.168.10.111  255.255.255.0  192.168.10.255  STATIC           false
เท่านี้ก็เป็นอันเรียบร้อยครับ