จะทราบได้อย่างไรว่าใครใช้แบนด์วิดท์ของฉันอยู่


17

บอกตามตรงว่าฉันยากจนในการดูแลเซิร์ฟเวอร์ แต่เจ้านายของฉันขอความช่วยเหลือจากฉัน เซิร์ฟเวอร์ของเขามีแบนด์วิดท์ จำกัด ที่ 2GB / วันและวันนี้เขาได้รับคำเตือนจาก บริษัท ว่าเขาใช้เกินขนาดและใช้ ... 24GB

เนื่องจากเป็นไปไม่ได้ที่เขาจะไปเขาจึงถามฉันว่าฉันสามารถติดตามปัญหาได้หรือไม่ ฉันไม่รู้ว่าจะเริ่มจากตรงไหนดี

ข้อมูลใด ๆ จะเป็นประโยชน์ฉันจะทราบได้อย่างไรว่ามีอะไรผิดปกติ

เครื่องทำงานบน Ubuntu 12.04 สิ่งที่แปลกที่สุดคือตามแผนภาพที่ได้รับจาก hoster จะมีการใช้การถ่ายโอนขาออกเท่านั้น

แก้ไข

ขอบคุณสำหรับคำแนะนำฉันจะเรียกใช้ tcpdump และลองตรวจสอบผลลัพธ์


โปรดโพสต์ความคิดเห็นของคุณเป็นความคิดเห็นไม่ใช่ในเนื้อหาของคำถามของคุณ
EEAA

นี่คือคำถามของฉันฉันสามารถรัน tcpdump เป็นพื้นหลังได้หรือไม่ดังนั้นมันจะรวบรวมข้อมูลจากวันละหนึ่งคำหรือไม่
Kamil

คุณสามารถใช่ คุณจะต้องเรียกใช้จากภายในเซสชันหน้าจอหรืออะไรแบบนั้น แต่ระวัง ... คุณต้องให้แน่ใจว่าคุณมีดิสก์เพียงพอที่จะเก็บข้อมูลที่บันทึกไว้ทั้งหมด คุณควรอ่านtcpdumpman page และดูวิธีกำหนดค่าเพื่อดักจับส่วนหัว TCP / IP เท่านั้นโดยละทิ้งข้อมูลแพ็กเก็ตที่เหลือ
EEAA

คำตอบ:


18

สำหรับการตรวจสอบทันทีที่คุณสามารถใช้iftop นี่จะแสดงการเชื่อมต่อที่ใช้งานอยู่ในปัจจุบันและแบนด์วิดท์ที่ใช้ เมื่อคุณระบุการเชื่อมต่อทราฟฟิกสูงแล้วให้ค้นหาหมายเลขพอร์ตภายในเครื่องและใช้netstatเพื่อค้นหาว่ากระบวนการใดเป็นของการเชื่อมต่อ

sudo netstat -tpn | grep 12345

สำหรับการตรวจสอบในระยะยาวผมจะแนะนำสิ่งที่ต้องการdarkstat วิธีนี้จะให้รายละเอียดต่อโฮสต์และพอร์ตซึ่งอาจช่วยให้คุณทราบได้ว่าทราฟฟิกเกี่ยวข้องกับอะไร


1
iotop? หรือคุณกำลังนึกถึงiftop ?
EEAA

@ErikA เอ่อใช่ .. นั่นคือสิ่งที่ฉันพูด!
mgorven

7

ฉันแนะนำให้ติดตั้ง ntop

http://www.ntop.org/

วางไว้บนที่ตั้งของเกตเวย์โฮสต์ / เราเตอร์และรับชมปริมาณข้อมูลสำหรับวัน / สัปดาห์ Ntop มี web UI ที่คุณสามารถแยกย่อยได้ด้วย IP / พอร์ต / โปรโตคอล


2

โดยทั่วไปการจับแพ็คเก็ตเป็นสถานที่แรกที่เริ่มต้นในสถานการณ์เช่นนี้ ตรวจสอบให้แน่ใจว่าติดตั้ง tcpdump ( $ sudo apt-get install tcpdump) แล้วจากนั้นเรียกใช้สิ่งต่อไปนี้:

$ sudo tcpdump -w packet.log

packet.logนี้จะเขียนบันทึกของแพ็กเก็ตทั้งหมดไปยัง ให้การทำงานที่ไม่กี่นาทีจากนั้นดาวน์โหลดไฟล์ที่และตรวจสอบการใช้Wireshark หากทราฟฟิกลึกลับยังคงเกิดขึ้นมันควรจะค่อนข้างชัดเจนด้วยคร่าวๆคร่าว ๆ ผ่านข้อมูลการจับแพ็คเก็ต


การใช้ wireshark ใช้เมนูสถิติ - จุดสิ้นสุด จากนั้นคุณสามารถเลือก IP หรือ TCP หรือรายการอื่น ๆ และเรียงลำดับตามจำนวนที่ได้รับ / ส่งโดยแต่ละปลายทาง ที่ปลายทางจะเป็นที่อยู่ IP หรือเครื่อง แต่ปลายทางบางจุดอาจเป็นเกตเวย์หรือสวิตช์ดังนั้นจะต้องทำอีก tcpdump และ wireshark บนเกตเวย์นั้นเพื่อติดตามผู้ใช้แบนด์วิดท์
gaoithe

2

มีลักษณะที่tcpdump สามารถถ่ายโอนข้อมูลเครือข่ายทั้งหมด (ไม่เพียง tcp ตามชื่อที่แนะนำ) ซึ่งคุณสามารถอ่านด้วยแอปพลิเคชันเช่น Wireshark ใน Wireshark มันง่ายมากในการกรองข้อมูลบางประเภทและแม้แต่เขียนกราฟของ I / O เครือข่าย

เครื่องมือที่มีประโยชน์อื่นอาจเป็น netstat ซึ่งแสดงรายการการเชื่อมต่อเครือข่ายที่กำลังดำเนินอยู่ อาจมีการเชื่อมต่อที่ไม่ควรมี Tcpdump มีประโยชน์มากขึ้น (จับภาพไม่กี่นาทีจากนั้นตรวจสอบว่าคุณสามารถดูแหล่งที่มา) แต่ netstat อาจให้ภาพรวมอย่างรวดเร็ว

เมื่ออ่านสิ่งนี้ความคิดแรกของฉันคือคุณมีมัลแวร์บนเซิร์ฟเวอร์ของคุณหรือว่ามันถูกใช้เพื่อการโจมตีแบบขยาย แต่เพื่อตรวจสอบสิ่งนี้คุณจะต้องเรียกใช้ tcpdump ก่อน

แก้ไข: โปรดทราบว่า tcpdump sudo tcpdumpอาจจะต้องมีการทำงานเป็นรากบางทีคุณอาจจำเป็นต้องใช้

การแก้ไขอื่น: เนื่องจากฉันไม่สามารถหาหน้าเว็บที่ดีเพื่อเชื่อมโยงกับการโจมตีของแอมพลิฟายเออร์ทั่วไปนี่เป็นเวอร์ชั่นสั้น ๆ :

โปรโตคอลเช่น DNS ทำงานบน UDP การรับส่งข้อมูลแบบ UDP นั้นไม่มีการเชื่อมต่อดังนั้นคุณจึงสามารถหลอกที่อยู่ IP ของผู้อื่นได้อย่างง่ายดาย เนื่องจากคำตอบ DNS มักจะมีขนาดใหญ่กว่าแบบสอบถามจึงสามารถใช้สำหรับการโจมตี DoS ผู้โจมตีส่งแบบสอบถามเพื่อร้องขอระเบียนทั้งหมดที่เซิร์ฟเวอร์ DNS มีชื่อที่กำหนดและแจ้งให้เซิร์ฟเวอร์ DNS ทราบว่าคำขอมาจาก X ซึ่ง X นี้เป็นเป้าหมายที่ผู้โจมตีต้องการให้ DoS จากนั้นเซิร์ฟเวอร์ DNS โปรดตอบกลับส่งคำตอบ (ใหญ่พูด 4kB) ไปที่ X

นี่คือการขยายเนื่องจากผู้โจมตีส่งข้อมูลน้อยกว่าที่ X ได้รับจริง DNS ไม่ใช่โปรโตคอลเดียวที่เป็นไปได้


1
ใช่. tcpdump -i ใด ๆ -w /tmp/traffic.pcap การใช้ wireshark ใช้เมนูสถิติ - จุดสิ้นสุด เรียงตามจำนวนที่ได้รับ / ส่ง
gaoithe

2

เครื่องมือที่ดีที่สุดสำหรับการนี้คือiftopและ apt-get'able ได้อย่างง่ายดายผ่าน sudo apt-get install iftop มันจะแสดงผลลัพธ์ตามชื่อผู้ร้าย / IP ของผู้ร้าย:

             191Mb      381Mb                 572Mb       763Mb             954Mb
└────────────┴──────────┴─────────────────────┴───────────┴──────────────────────
box4.local            => box-2.local                      91.0Mb  27.0Mb  15.1Mb
                      <=                                  1.59Mb   761kb   452kb
box4.local            => box.local                         560b   26.8kb  27.7kb
                      <=                                   880b   31.3kb  32.1kb
box4.local            => userify.com                         0b   11.4kb  8.01kb
                      <=                                  1.17kb  2.39kb  1.75kb
box4.local            => b.resolvers.Level3.net              0b     58b    168b
                      <=                                     0b     83b    288b
box4.local            => stackoverflow.com                   0b     42b     21b
                      <=                                     0b     42b     21b
box4.local            => 224.0.0.251                         0b      0b    179b
                      <=                                     0b      0b      0b
224.0.0.251           => box-2.local                         0b      0b      0b
                      <=                                     0b      0b     36b
224.0.0.251           => box.local                           0b      0b      0b
                      <=                                     0b      0b     35b


─────────────────────────────────────────────────────────────────────────────────
TX:           cum:   37.9MB   peak:   91.0Mb     rates:   91.0Mb  27.1Mb  15.2Mb
RX:                  1.19MB           1.89Mb              1.59Mb   795kb   486kb
TOTAL:               39.1MB           92.6Mb              92.6Mb  27.9Mb  15.6Mb

อย่าลืมเกี่ยวกับ sar คลาสสิกและมีประสิทธิภาพและสาธารณูปโภค netstat บนเก่า * ระวัง!

เครื่องมือที่ยอดเยี่ยมอีกอย่างหนึ่งคือnloadซึ่งเป็นเครื่องมือที่ยอดเยี่ยมสำหรับการตรวจสอบแบนด์วิดท์แบบเรียลไทม์และติดตั้งได้ง่ายใน Ubuntu หรือ Debian ด้วย sudo apt-get install nload

Device eth0 [10.10.10.5] (1/2):
=====================================================================================
Incoming:


                               .         ...|
                               #         ####|
                           .. |#|  ...   #####.         ..          Curr: 2.07 MBit/s
                          ###.###  #### #######|.     . ##      |   Avg: 1.41 MBit/s
                         ########|#########################.   ###  Min: 1.12 kBit/s
             ........    ###################################  .###  Max: 4.49 MBit/s
           .##########. |###################################|#####  Ttl: 1.94 GByte
Outgoing:
            ##########  ###########    ###########################
            ##########  ###########    ###########################
            ##########. ###########   .###########################
            ########### ###########  #############################
            ########### ###########..#############################
           ############ ##########################################
           ############ ##########################################
           ############ ##########################################  Curr: 63.88 MBit/s
           ############ ##########################################  Avg: 32.04 MBit/s
           ############ ##########################################  Min: 0.00 Bit/s
           ############ ##########################################  Max: 93.23 MBit/s
         ############## ##########################################  Ttl: 2.49 GByte

1

หลังจากค้นหามาระยะหนึ่งแล้วปัญหาคืออะไร (แบนด์วิดท์มากกว่า 60GB ในไม่กี่วัน) ฉันค้นพบว่าเซิร์ฟเวอร์ของฉันเป็นแหล่งโจมตี DDOS

ก่อนอื่นฉันพยายามติดตั้ง Oracle DB บนมันดังนั้นฉันจึงสร้างผู้ใช้ oracle แฮกเกอร์พยายามทำลายรหัสผ่านให้กับผู้ใช้คนนั้น (ฉันเดาว่าฉันควรทำให้มันยากขึ้น :() พวกเขาสร้าง dir ที่ซ่อนอยู่ใต้บ้านของ Oracle ด้วย crontab ที่นั่นซึ่งทำงานด้วยตนเอง deamons ซึ่งท่วมเป้าหมายเซิร์ฟเวอร์ด้วยตนเอง

ยิ่งกว่านั้นแฮ็กเกอร์สร้างผู้ใช้ใหม่ 2 คนบนเซิร์ฟเวอร์ของฉัน: avahi และ colord ฉันควรทำอย่างไรกับพวกเขา ฉัน googled และดูเหมือนว่าซอฟต์แวร์ที่มีชื่อเดียวกันนั้นไม่อันตราย แต่ฉันลบผู้ใช้เหล่านั้น (และ oracle ด้วย)

อีกต่อไปฉันได้ลบ oracle home ทั้งหมดด้วยทุกอย่างในนั้น

ฉันเดาว่าฉันต้องรักษาความปลอดภัยเซิร์ฟเวอร์ของฉันให้มากขึ้นเนื่องจากอาจถูกโจมตีได้อีกครั้งขอบคุณทุกคนสำหรับความช่วยเหลือ!


4
ฉันจะล้างเซิร์ฟเวอร์ของคุณและเริ่มต้นอีกครั้งฉันไม่เชื่อถือเซิร์ฟเวอร์หลังจากการประนีประนอม ทำให้ไซต์จากวงโคจรเป็นวิธีเดียวที่จะทำให้แน่ใจ
นักเลง Unix

Yupp ฉันจะทำอย่างนั้นประการแรกการสำรองข้อมูลของข้อมูลบางส่วน (พื้นที่เก็บข้อมูล SVN สคริปต์ที่มีประโยชน์)
kamil

ตรวจสอบให้แน่ใจว่าข้อมูลยังมีความถูกต้องเป็นที่ทราบกันดีว่าผู้บุกรุกจะแก้ไขซอร์สโค้ดและสคริปต์เพื่อวางประตูหลัง ฉันจะเปรียบเทียบแหล่งที่มา svn ล่าสุดกับรุ่นที่เพิ่งเช็คเอาต์ก่อนที่การบุกรุกจะเข้ามา
The Unix Janitor

0

การจับแพ็กเก็ตทั้งหมดที่ส่งในหนึ่งวันเมื่อคุณเกินโควต้าแบนด์วิดท์ของคุณอาจไม่ใช่วิธีที่เหมาะสมที่สุด - คุณจะรับข้อมูลของระบบเพื่อการวิเคราะห์อย่างไร

คุณมีช่องอะไรในช่อง? พอร์ตใดที่เปิดอยู่ คุณตรวจสอบบันทึกของบริการที่ใช้งานอยู่หรือไม่ บางอย่างเช่น awstats จะสรุปบันทึก FTP, HTTP และ SMTP (สมมติว่าเซิร์ฟเวอร์เหล่านี้ได้รับการกำหนดค่าให้บันทึกข้อมูลในบันทึก) OTOH mrtg จะบันทึกและติดตามการใช้งานเครือข่ายตามปลายทาง / พอร์ต


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.