Mac-Osx-Server

查找使用我所有伺服器頻寬的內容

  • August 16, 2012

TLDR:如何更深入地了解我的 Mac mini OSX 伺服器,以確定哪些程序正在消耗如此多的頻寬,或者所有入站流量來自哪裡?

資源記憶體已打開,所有資源都被縮小或圖像被粉碎,我們的頁面比上個月的網站 (www.vulytrampolines.com) 消耗的頻寬更少,我們的分析流量也是一樣的。

背景故事:我們有 2x mac mini 伺服器執行我們的網站/登台/數據庫等。自從從美國的專用伺服器轉移到城市的託管地點後,我們的頻寬消耗不知何故翻了兩番。兩者之間有一個數據庫複製過程設置,以及DNS和各種網站(例如大文件、數據庫任務、內網包等在暫存伺服器上,網站和數據庫在生產伺服器上)

我們的登台伺服器在3 DAYS內有7GB 的入站流量。有誰知道如何檢查入站流量來源,以了解在 200k 連接時這種一致的入站流量流可能來自哪裡?我們不知道。我們根本不向它發送文件,唯一應該啟動的是 SSH 和數據庫複製過程。netstat

$$ see below $$顯示我們有大約 20 多個已建立和 30 多個 close_weight 連接到埠 625。我們還沒有最模糊的情況是如何發生的。 令人討厭的是,webstats 顯示我們沒有使用接近 11.66GB 的 HTTP 流量(它說我們上個月使用了 22GB,但我們的出站流量記錄為超過 100GB)。數據庫統計數據表明,我們也沒有使用任何接近足夠頻寬來導致問題的地方。

這是我們的登台伺服器 venus1(這已經有幾個星期了): 在此處輸入圖像描述

這是我們的生產伺服器 venus2: 在此處輸入圖像描述

netstat -anp tcpvenus1 上的輸出。大多數外部地址來自我們的工作 IP 地址。11211 已記憶體。

tcp4       0      0  122.99.117.18.49712    204.93.223.143.80      ESTABLISHED
tcp4       0      0  122.99.117.18.11211    122.99.117.18.49711    ESTABLISHED
tcp4       0      0  122.99.117.18.49711    122.99.117.18.11211    ESTABLISHED
tcp4       0     52  122.99.117.18.22       59.167.152.67.56106    ESTABLISHED
tcp4       0      0  122.99.117.18.11211    122.99.117.18.49588    ESTABLISHED
tcp4       0      0  122.99.117.18.49588    122.99.117.18.11211    ESTABLISHED
tcp4       0      0  122.99.117.18.49410    122.99.117.19.3306     ESTABLISHED
tcp4       0      0  122.99.117.18.5432     122.99.117.18.58704    ESTABLISHED
tcp4       0      0  122.99.117.18.58704    122.99.117.18.5432     ESTABLISHED
tcp4       0      0  127.0.0.1.58699        *.*                    LISTEN
tcp4       0      0  122.99.117.18.625      110.142.234.238.62055  CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.71.206.61838    ESTABLISHED
tcp4       5      0  122.99.117.18.625      203.206.171.34.61741   CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.61270  ESTABLISHED
tcp4       0      0  127.0.0.1.54           *.*                    LISTEN
tcp4       0      0  122.99.117.18.53       *.*                    LISTEN
tcp4       0      0  127.0.0.1.53           *.*                    LISTEN
tcp4       0      0  122.99.117.18.625      110.142.234.238.63980  ESTABLISHED
tcp4       0      0  122.99.117.18.625      203.206.171.34.55282   ESTABLISHED
tcp46      0      0  *.80                   *.*                    LISTEN
tcp4       0      0  *.*                    *.*                    CLOSED
tcp46      0      0  *.443                  *.*                    LISTEN
tcp4       0      0  *.*                    *.*                    CLOSED
tcp4       0      0  122.99.117.18.625      122.99.117.19.50766    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      122.99.117.19.63981    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.60214  ESTABLISHED
tcp4       0      0  122.99.117.18.625      27.33.32.204.65196     ESTABLISHED
tcp4       0      0  122.99.117.18.625      110.142.234.238.60274  ESTABLISHED
tcp4       0      0  122.99.117.18.625      122.99.117.19.53201    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      203.206.171.34.59662   CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      122.99.117.19.49869    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      122.99.117.19.53827    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.64678  ESTABLISHED
tcp4       0      0  122.99.117.18.625      122.99.117.19.52810    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.62510  ESTABLISHED
tcp4       0      0  122.99.117.18.625      122.99.117.19.49909    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.56096  ESTABLISHED
tcp4       0      0  122.99.117.18.625      203.206.171.34.53247   ESTABLISHED
tcp4       0      0  122.99.117.18.625      203.206.171.34.62051   ESTABLISHED
tcp4       0      0  122.99.117.18.625      58.111.93.92.59123     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      122.99.117.19.57173    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      203.206.171.34.49352   CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.64362  CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      27.33.32.204.59772     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      59.167.152.67.59528    CLOSE_WAIT
tcp4       0      0  *.3306                 *.*                    LISTEN
tcp4       0      0  122.99.117.18.625      27.33.32.204.56812     ESTABLISHED
tcp4       0      0  122.99.117.18.625      110.142.234.238.52987  CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      59.167.152.67.50598    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.63339  CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.63283  CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      59.167.152.67.61312    ESTABLISHED
tcp4       0      0  122.99.117.18.625      110.142.234.238.52045  CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      122.99.117.19.49172    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      203.206.171.34.50501   CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.93.92.56042     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      27.33.32.204.55882     ESTABLISHED
tcp4       0      0  122.99.117.18.311      58.111.93.92.55875     ESTABLISHED
tcp4       0      0  122.99.117.18.625      203.206.171.34.58776   ESTABLISHED
tcp6       0      0  *.5432                 *.*                    LISTEN
tcp4       0      0  *.5432                 *.*                    LISTEN
tcp4       0      0  122.99.117.18.625      58.111.93.92.52692     ESTABLISHED
tcp4       0      0  122.99.117.18.625      203.206.171.34.57121   CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      27.33.32.204.54673     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      27.33.32.204.53915     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      27.33.32.204.52109     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      27.33.32.204.51807     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      27.33.32.204.65049     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.93.92.64442     ESTABLISHED
tcp4       0      0  122.99.117.18.311      203.206.171.34.51628   ESTABLISHED
tcp4       0      0  122.99.117.18.625      203.206.171.34.51594   ESTABLISHED
tcp4       0      0  122.99.117.18.625      58.111.79.42.62597     ESTABLISHED
tcp4       0      0  122.99.117.18.625      58.111.79.42.62454     ESTABLISHED
tcp4       0      0  122.99.117.18.625      58.111.79.42.58088     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.57305     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.53724     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.62224     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.62064     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.58236     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      203.206.171.34.51320   CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      203.206.171.34.51297   CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      203.206.171.34.50864   CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.49800  CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      27.33.32.204.50894     ESTABLISHED
tcp4       0      0  122.99.117.18.625      59.167.152.67.50411    ESTABLISHED
tcp4       0      0  122.99.117.18.625      27.33.32.204.54446     ESTABLISHED
tcp4       0      0  122.99.117.18.625      58.111.79.42.51680     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.60797     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.60729     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      59.167.152.67.49209    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.63371     CLOSE_WAIT
tcp4      81      0  122.99.117.18.625      113.128.44.66.3842     CLOSE_WAIT
tcp4      11      0  122.99.117.18.625      213.57.189.27.55646    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      110.142.234.238.53655  ESTABLISHED
tcp4       0      0  122.99.117.18.625      110.142.234.238.53644  ESTABLISHED
tcp4       0      0  122.99.117.18.625      58.111.79.42.52146     CLOSE_WAIT
tcp4       0      0  127.0.0.1.8005         *.*                    LISTEN
tcp46      0      0  *.8009                 *.*                    LISTEN
tcp46      0      0  *.8080                 *.*                    LISTEN
tcp4       0      0  122.99.117.18.625      58.111.79.42.50716     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      59.167.152.67.49872    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.63218     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.62471     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.64758     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.64646     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.56788     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.56770     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.56017     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.53131     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.52519     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.51215     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.51131     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      59.167.152.67.57058    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      59.167.152.67.56711    CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.50975     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.57209     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.54753     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.60786     CLOSE_WAIT
tcp4       0      0  122.99.117.18.625      58.111.79.42.56174     CLOSE_WAIT
tcp4       0      0  *.11212                *.*                    LISTEN
tcp6       0      0  *.11212                *.*                    LISTEN
tcp4       0      0  127.0.0.1.5348         127.0.0.1.49167        ESTABLISHED
tcp4       0      0  127.0.0.1.49167        127.0.0.1.5348         ESTABLISHED
tcp4       0      0  122.99.117.18.5218     122.99.117.18.49166    ESTABLISHED
tcp4       0      0  122.99.117.18.49166    122.99.117.18.5218     ESTABLISHED
tcp46      0      0  *.5268                 *.*                    LISTEN
tcp46      0      0  *.5218                 *.*                    LISTEN
tcp4       0      0  127.0.0.1.5348         127.0.0.1.49163        ESTABLISHED
tcp4       0      0  127.0.0.1.49163        127.0.0.1.5348         ESTABLISHED
tcp4       0      0  127.0.0.1.5348         127.0.0.1.49162        ESTABLISHED
tcp4       0      0  127.0.0.1.49162        127.0.0.1.5348         ESTABLISHED
tcp4       0      0  127.0.0.1.5348         127.0.0.1.49161        ESTABLISHED
tcp4       0      0  127.0.0.1.49161        127.0.0.1.5348         ESTABLISHED
tcp4       0      0  127.0.0.1.5348         *.*                    LISTEN
tcp4       0      0  *.11211                *.*                    LISTEN
tcp6       0      0  *.11211                *.*                    LISTEN
tcp4       0      0  *.88                   *.*                    LISTEN
tcp6       0      0  *.88                   *.*                    LISTEN
tcp6       0      0  *.2000                 *.*                    LISTEN
tcp4       0      0  *.2000                 *.*                    LISTEN
tcp6       0      0  *.4190                 *.*                    LISTEN
tcp4       0      0  *.4190                 *.*                    LISTEN
tcp4       0      0  *.464                  *.*                    LISTEN
tcp6       0      0  *.464                  *.*                    LISTEN
tcp6       0      0  *.25                   *.*                    LISTEN
tcp4       0      0  *.25                   *.*                    LISTEN
tcp4       0      0  *.749                  *.*                    LISTEN
tcp6       0      0  *.749                  *.*                    LISTEN
tcp4       0      0  *.22                   *.*                    LISTEN
tcp6       0      0  *.22                   *.*                    LISTEN
tcp4       0      0  *.5900                 *.*                    LISTEN
tcp6       0      0  *.5900                 *.*                    LISTEN
tcp4       0      0  *.625                  *.*                    LISTEN
tcp6       0      0  *.625                  *.*                    LISTEN
tcp4       0      0  127.0.0.1.631          *.*                    LISTEN
tcp6       0      0  ::1.631                *.*                    LISTEN
tcp4       0      0  *.311                  *.*                    LISTEN

除非您有充分的理由不這樣做,否則請**立即為您的 Mac Mini 上的所有非公共埠設置防火牆,並且隻公開您需要的內容!我做了一個快速檢查,您的所有服務目前似乎都對 Internet 完全開放(SSH、SMTP、Tomcat、VNC、MySQL 和 apple-xsrvr-admin (TCP625) 當然是),這是一個非常糟糕的主意。

您看到的大量入站流量很可能是黑客/機器人試圖暴力破解您的服務的登錄名和密碼——我在伺服器上經常看到這種情況,特別是針對 SSH(因為它通常是面向公眾的)和直接針對流行的網路軟體,例如 WordPress 的 /wp-login.php 頁面。從您的 netstat 我可以看到來自以色列和中國的 IP 正在嘗試訪問 TCP625(apple-xsrvr-admin,用於 DirectoryService、Open Directory Assistant 和 Workgroup Manager),這不是一個好兆頭。我希望你所有的使用者名和密碼都是強大的,因為 - 不是想在這裡聽起來危言聳聽,但是 - 7GB 的暴力破解可能會讓一些壞人得到他們不應該訪問的東西,不管安全性/任何軟體的更新檔狀態。

如果您不小心阻止自己訪問您的伺服器,請與您的託管服務提供商/colo 檢查您是否具有某種遠端串列控制台和/或 VNC 訪問權限,然後將您自己遠端管理伺服器所需的絕對最小值添加到規則集中並打開防火牆,我假設他們還沒有。預設情況下,OS X Server 的防火牆會阻止所有傳入埠,但用於遠端配置伺服器的埠除外(TCP22、TCP311、TCP626、TCP625、ICMP 標準 ping(輸入和輸出)、UDP53 DNS 名稱解析),因此您應該可以打開它直截了當,儘管一旦你這樣做了,你想更多地鎖定這些。創建特定於您的辦公室 IP 的地址組(或您的 ISP 的 IP 網路塊,如果您的辦公室沒有靜態 IP 地址)並使用這些來打開管理員訪問權限(例如 SSH、OpenDirectory, VNC) 僅限於這些。為 122.99.117.18 和 122.99.117.19(或​​ 122.99.117.18/31 遮罩)創建另一個具有單一 IP 訪問權限的組以相互通信並允許 MySQL 複製。向全世界開放 SMTP、HTTP、HTTPS 埠,假設它們是面向公眾的。嚴格鎖定所有內容,僅向需要訪問每個埠的 IP 授予權限。考慮對出站流量也這樣做。你想提前計劃好,確保一切順利,但要盡快完成,而不是讓伺服器成為一個空曠的鴨子。嚴格鎖定所有內容,僅向需要訪問每個埠的 IP 授予權限。考慮對出站流量也這樣做。你想提前計劃好,確保一切順利,但要盡快完成,而不是讓伺服器成為一個空曠的鴨子。嚴格鎖定所有內容,僅向需要訪問每個埠的 IP 授予權限。考慮對出站流量也這樣做。你想提前計劃好,確保一切順利,但要盡快完成,而不是讓伺服器成為一個空曠的鴨子。

查看伺服器的日誌並查找可疑活動。特別是尋找從奇怪的位置或在奇怪的時間成功登錄服務。建立一些程序來定期執行此操作。

我不確定您擁有哪個版本的 OS X Server,但猜測是 10.6 或 10.7,這個 Peachpit 文件可能會幫助您開始使用防火牆。

Apple可能支持有關網路服務的 PDF(請參閱第 4 章了解防火牆)。

對於更高級的防火牆配置,請嘗試 Waterroof 或 Icefloor,它們提供了一個簡單的 GUI,而不必在命令行上使用 pf。


(編輯以解決從每個伺服器粘貼的 ipfilter 規則)

好的,讓我們從 venus1 (122.99.117.18) 開始。這裡明顯的問題是沒有包羅萬象的deny ip from any to any,所以我們需要立即解決這個問題。從命令行,您可以發出: sudo ipfw add 65534 deny log logamount 1000 ip from any to any

或者,如果您對從命令行操作 ipfw 規則不太滿意(這會讓您感到緊張,因為如果您滑倒可能會以嚴重的後果結束),請在“高級”子選項卡下的“伺服器管理員”選項卡中執行此操作。應該有一個類似於下圖的高級規則列表。假設該規則已經在底部,勾選它以啟用它: 伺服器管理員設置選項卡,高級

請記住,ipfw 規則沿優先級列表向下流動,因此優先級 1 規則優先於其他所有規則。因此,在 65534 處添加“拒絕一切”規則是列表中的最後一個,這意味著它只會在高於它的所有內容都不允許首先允許的情況下拒絕連接。

好的,讓我們處理一些地址組。您已經定義了一個地址組,它是 122.99.117.16/29,所以 122.99.177.16-22(其中一個 IP 是網關),它是您的 Mac Mini 和其他 co-lo IP 地址。您可能想為您的辦公室位置定義另一個地址組,我猜它的靜態 IP 為 59.167.152.67(或者如果您的工作獲得動態 IP,那麼整個 Internode 網路塊是 59.167.0.0/16)。對 venus1 和 venus2 執行此操作,並為您擁有的任何其他辦公室添加更多。

一旦您定義了您的辦公室組,然後授予這些權限中的每一個訪問 TCP22、TCP311、TCP626、TCP625、TCP3283 和 TCP5900,因此即使您禁用對這些埠的全球訪問,您也可以始終管理您的 Minis。使用 GUI,轉到伺服器管理員設置的服務子選項卡。將“編輯服務:”更改為您的辦公室地址組,然後勾選上述埠的相關框。

現在讓我們解決一些更有問題的 venus1 規則。例如:

12321    1570      78548 allow tcp from any to any dst-port 3306

規則 12321 允許一切連接到 MySQL。為“任何”地址組禁用此規則(再次使用服務子選項卡),當您在那裡時,世界不需要訪問的任何其他服務。您可能希望保持 TCP25(smtp 郵件)、TCP/UDP53(dns)、TCP80(HTTP)、TCP443(HTTPS)全球可訪問,但您是否需要 TCP8080(tomcat 的伺服器狀態)的全球訪問?還要別的嗎?將其全部鎖定並僅在適當的情況下授予對您辦公室地址組和 co-lo 的訪問權限(例如 MySQL 複製)。

記得測試一切!學習使用nmap掃描您的伺服器埠,以便查看打開和關閉的埠。從不同的位置(例如您的辦公室、通過 ssh 連接到您的其他伺服器、在家中通過其他 ISP 等)進行掃描,以確保規則正常執行。小心不要把自己鎖在外面,但要盡可能地把所有東西都鎖緊。重新閱讀上面連結的 Peachpit 文件和 Apple 支持 PDF 並真正學習這些材料,它會讓你受益匪淺。哦,請定期查看您的日誌!

好的,希望這應該讓你正確,或者至少讓你走上一條更好的道路。祝你好運。

引用自:https://serverfault.com/questions/415751