Darkstat - เครื่องมือวิเคราะห์ปริมาณการใช้เครือข่าย Linux บนเว็บ
Darkstat เป็นเครื่องมือสถิติเครือข่ายแบบเรียลไทม์ข้ามแพลตฟอร์ม น้ำหนักเบา ใช้งานง่าย ซึ่งบันทึกการรับส่งข้อมูลเครือข่าย คำนวณสถิติที่เกี่ยวข้องกับการใช้งาน และให้บริการรายงานผ่าน HTTP
คุณสมบัติ Darkstat:
- เว็บเซิร์ฟเวอร์แบบรวมที่มีฟังก์ชันการบีบอัดแบบยุบ
- เครื่องวิเคราะห์การรับส่งข้อมูลเครือข่ายบนเว็บแบบพกพา เธรดเดียว และมีประสิทธิภาพ
- เว็บอินเตอร์เฟสแสดงกราฟการรับส่งข้อมูล รายงานต่อโฮสต์ และพอร์ตสำหรับแต่ละโฮสต์
- รองรับการแก้ไข DNS ย้อนกลับแบบอะซิงโครนัสโดยใช้กระบวนการลูก
- รองรับโปรโตคอล IPv6
ความต้องการ:
- libpcap – ไลบรารี C/C++ แบบพกพาสำหรับการบันทึกการรับส่งข้อมูลเครือข่าย
เนื่องจากมีขนาดเล็ก จึงใช้ทรัพยากรหน่วยความจำระบบน้อยมาก และติดตั้ง กำหนดค่า และใช้งานใน Linux ได้ง่ายตามที่อธิบายไว้ด้านล่าง
วิธีการติดตั้ง Darkstat Network Traffic Analyzer ใน Linux
1. โชคดีที่ darkstat มีอยู่ในคลังซอฟต์แวร์ของ Linux กระแสหลัก เช่น RHEL/CentOS และ Debian/Ubuntu
sudo apt-get install darkstat # Debian/Ubuntu
sudo yum install darkstat # RHEL/CentOS
sudo dnf install darkstat # Fedora 22+
2. หลังจากติดตั้ง darkstat คุณจะต้องกำหนดค่าในไฟล์การกำหนดค่าหลัก /etc/darkstat/init.cfg
sudo vi /etc/darkstat/init.cfg
โปรดทราบว่าสำหรับวัตถุประสงค์ของบทช่วยสอนนี้ เราจะอธิบายเฉพาะตัวเลือกการกำหนดค่าที่จำเป็นและสำคัญเพื่อให้คุณเริ่มใช้เครื่องมือนี้เท่านั้น
ตอนนี้เปลี่ยนค่าของ START_DARKSTAT จาก no
เป็น yes
และตั้งค่าอินเทอร์เฟซที่ darkstat จะรับฟังด้วยตัวเลือก INTERFACE .
และยังมีตัวเลือก uncoment DIR=”/var/lib/darkstat” และ DAYLOG=”–daylog darkstat.log” เพื่อระบุไดเร็กทอรีและ ไฟล์บันทึกตามลำดับ
START_DARKSTAT=yes
INTERFACE="-i ppp0"
DIR="/var/lib/darkstat"
File will be relative to $DIR:
DAYLOG="--daylog darkstat.log"
3. เริ่มต้น darkstat daemon ในตอนนี้ และเปิดใช้งานเพื่อเริ่มต้นเมื่อบูตระบบดังนี้
------------ On SystemD ------------
sudo systemctl start darkstat
sudo /lib/systemd/systemd-sysv-install enable darkstat
sudo systemctl status darkstat
------------ On SysV Init ------------
sudo /etc/init.d/darkstat start
sudo chkconfig darkstat on
sudo /etc/init.d/darkstat status
4. ตามค่าเริ่มต้น darkstat จะรับฟังพอร์ต 667 ดังนั้นให้เปิดพอร์ตบนไฟร์วอลล์เพื่ออนุญาตการเข้าถึง
------------ On FirewallD ------------
sudo firewall-cmd --zone=public --permanent --add-port=667/tcp
sudo firewall-cmd --reload
------------ On IPtables ------------
sudo iptables -A INPUT -p udp -m state --state NEW --dport 667 -j ACCEPT
sudo iptables -A INPUT -p tcp -m state --state NEW --dport 667 -j ACCEPT
sudo service iptables save
------------ On UFW Firewall ------------
sudo ufw allow 667/tcp
sudo ufw reload
5. สุดท้าย เข้าถึงอินเทอร์เฟซเว็บ darkstat โดยไปที่ URL http://Server-IP:667
คุณสามารถโหลดกราฟซ้ำได้โดยอัตโนมัติโดยคลิกปุ่ม เปิด
และ ปิด
จัดการ Darkstat จาก Command Line ใน Linux
ที่นี่ เราจะอธิบายตัวอย่างสำคัญบางประการเกี่ยวกับวิธีการใช้งาน darkstat จากบรรทัดคำสั่ง
6. หากต้องการรวบรวมสถิติเครือข่ายบนอินเทอร์เฟซ eth0 คุณสามารถใช้แฟล็ก -i
ตามด้านล่างนี้
darkstat -i eth0
7. หากต้องการให้บริการหน้าเว็บบนพอร์ตใดพอร์ตหนึ่ง ให้รวมแฟล็ก -p
เช่นนี้
darkstat -i eth0 -p 8080
8. หากต้องการติดตามสถิติเครือข่ายสำหรับบริการที่กำหนด ให้ใช้ -f
หรือแฟล็กตัวกรอง นิพจน์ตัวกรองที่ระบุในตัวอย่างด้านล่างจะบันทึกการรับส่งข้อมูลที่เกี่ยวข้องกับบริการ SSH
darkstat -i eth0 -f "port 22"
สุดท้ายแต่ไม่ท้ายสุด หากคุณต้องการปิด darkstat ด้วยวิธีที่สะอาดหมดจด ขอแนะนำให้ส่งสัญญาณ SIGTERM หรือ SIGINT ไปยังกระบวนการพาเรนต์ darkstat
ขั้นแรก รับกระบวนการพาเรนต์ darkstat ID (PPID) โดยใช้คำสั่ง pidof:
pidof darkstat
จากนั้นฆ่ากระบวนการดังนี้:
sudo kill -SIGTERM 4790
OR
sudo kill -15 4790
สำหรับตัวเลือกการใช้งานเพิ่มเติม โปรดอ่าน manpage ของ darkstat:
man darkstat
ลิงก์อ้างอิง: หน้าแรกของ Darkstat
คุณอาจต้องการอ่านบทความที่เกี่ยวข้องต่อไปนี้เกี่ยวกับการตรวจสอบเครือข่าย Linux
- 20 เครื่องมือบรรทัดคำสั่งเพื่อตรวจสอบประสิทธิภาพของ Linux
- 13 เครื่องมือตรวจสอบประสิทธิภาพ Linux
- Netdata – เครื่องมือตรวจสอบประสิทธิภาพ Linux แบบเรียลไทม์
- BCC – เครื่องมือแบบไดนามิกสำหรับประสิทธิภาพของ Linux และการตรวจสอบเครือข่าย
แค่นั้นแหละ! ในบทความนี้ เราได้อธิบายวิธีการติดตั้งและใช้ darkstat ใน Linux เพื่อบันทึกการรับส่งข้อมูลเครือข่าย คำนวณการใช้งาน และวิเคราะห์รายงานผ่าน HTTP
คุณมีคำถามที่จะถามหรือคิดที่จะแบ่งปันใช้แบบฟอร์มแสดงความคิดเห็นด้านล่างหรือไม่?