Juniper SRX (Junos OS) 常用監控維護命令


Juniper SRX (Junos OS) 常用監控維護命令

Juniper SRX安全設定與維護:


下列則是一些常用的設定與觀念方面的相關連結:











更改WAN介面的IP設定
若您的WAN介面fe-0/0/0原本設定為使用浮動IP (DHCP),而您要將其改成固定IP 192.168.188.10,則您必須先將WAN介面fe-0/0/0原來的設定刪除後,您才能重新設定成固定IP
root@srx100# set interfaces fe-0/0/0 unit 0 family inet address 192.168.188.10    /* 要在介面上設定固定IP */
root@srx100# commit
[edit interfaces fe-0/0/0 unit 0 family inet]
  'dhcp'
    Incompatible with interface assigned with address
error: commit failed: (statements constraint check failed)    /* 當設定介面上存在任何IP設定時就會失敗無法提交 */
[edit]
root@srx100# delete interfaces fe-0/0/0 unit 0 family inet    /* 請記得先刪除介面上的設定 */
root@srx100# set interfaces fe-0/0/0 unit 0 family inet address 192.168.188.10
root@srx100# set route 0.0.0.0/0 interface ethernet0/0 gateway 192.168.188.254    /* 在配置固定IP的同時,通常我們都要配置預設路由,明確指定WAN介面的下一個閘道位址 */
root@srx100# commit
commit complete    /* 提交設定成功了 */
root@srx100#





如何重新取得WAN(DHCP用戶端)IP?
當您將WAN埠設成DHCP用戶端,若是您重啟中華電信小烏龜或是將WAN埠接到另一台設備時,常常無法迅速自動重新取得DHCP伺服器發配的IP,導致您遲遲無法上網,而重啟Juniper SRX設備又耗時太久,這時通常必須要手動來取得DHCP伺服器發配的IP才行。
重新取得WANIP (fe介面)
root> request system services dhcp renew fe-0/0/0.0

重新取得WANIP (ge介面)
root> request system services dhcp renew ge-0/0/0.0

重新取得WANIP (pppoe介面)
root> request system services dhcp renew pp0.0





如何查看WAN IP ?
1. WebUI(J-Web)
    Monitor > Interfaces

2. 或是從CLI命令列執行下列命令。
root@srx100> show interfaces ge-0/0/0.0
  Logical interface ge-0/0/0.0 (Index 82) (SNMP ifIndex 509)
    Flags: SNMP-Traps 0x0 Encapsulation: ENET2
    Input packets : 337212
    Output packets: 279241
    Security: Zone: untrust
    Allowed host-inbound traffic : http ike ping
    Protocol inetMTU: 1500
      Flags: Sendbcast-pkt-to-re
      AddressesFlags: Is-Preferred Is-Primary
        Destination: 192.168.188/24Local: 192.168.188.7,
        Broadcast: 192.168.188.255
root@srx100>






開放wan端的pinghttps服務
Juniper SRX出廠預設配置如下
system {
    services {
        ssh;
        telnet;
        xnm-clear-text;
        web-management {
            http {
                interface vlan.0;
            }
            https {
                system-generated-certificate;
                interface vlan.0;
            }
        }
    }
}
security {
    zones {
        security-zone untrust {
            interfaces {
                fe-0/0/0.0 {
                    host-inbound-traffic {    /* 管制可從WAN端進入的流量種類 */
                        system-services {
                            dhcp;
                            tftp;
                        }
                    }
                }
            }
        }
    }
}
從上面的設定中我們可以看到出廠預設對內網開放遠端管理的telnetsshhttphttps服務,外網只開放dhcp(出廠預設WAN介面為DHCP Client)tftp(可用來安裝Junos OS)服務。

telnet以及ssh服務只要開啟了,則所有的人都能透過設備IP來登入SRX設備。
http以及https服務就還要受到web-management命令來控管,它能開放讓只有特定介面上的用戶才能使用httphttps服務。

關於Juniper SRX網路設備在遠端管理服務方面的控管,外網方面受到WAN介面(本例為fe-0/0/0.0) host-inbound-traffic system-services的管制,您要在WAN介面開放system-services相關的服務(telnetsshhttphttps),您才可以從外網使用遠端管理服務來管理Juniper SRX網路設備。

而從遠端來管理Juniper SRX網路設備我們建議使用sshhttps兩種方式,因為他們在傳輸過程中資料會經過加密程序來保障資料傳輸安全,而telnethttp服務則建議刪除(其資料傳輸乃用明文傳送,容易被駭客盜取帳號密碼)
刪除telnethttp服務的CLI命令如下:
root@srx100# delete system services telnet
root@srx100# delete system services web-management http
root@srx100# commit


而關於Juniper SRX網路設備的安全相關設定,請參考下列的網路連結:


我們在安裝測試時常常需要從wanping及使用J-Web界面來管理設備而系統預設並未開放所以我們就要自行設定來開放。

以下我們開始說明如何開放wan端的pinghttps服務:

WebUI(J-Web)設定
1. Configure>Security>Zones/Screens>
編輯Untrust Zone點選Host inbound traffic - Zone頁籤
Services:項目 Selected中加入pinghttp服務OK
2. Configure>System Properties>Management Access>
點選Services頁籤勾選Enable HTTP項目並在Selected interfaces
加入ge-0/0/0.0介面OK
最後記得要Actions>Commit即可。

CLI命令列設定
CLI命令列執行下列命令
root@srx100# set security zones security-zone untrust host-inbound-traffic system-services ping
root@srx100# set security zones security-zone untrust host-inbound-traffic system-services http
root@srx100# set security zones security-zone untrust host-inbound-traffic system-services https
root@srx100# set system services web-management http interface ge-0/0/0.0
root@srx100# set system services web-management https interface ge-0/0/0.0
root@srx100# commit

為了方便測試而允許所有的介面都可以執行網頁管理httphttps
root@srx100# set system services web-management http interface all
root@srx100# set system services web-management https interface all
而通常為了安全我們只開放部分內網介面才可以執行網頁管理httphttps
root@srx100# set system services web-management https interface fe-0/0/6.0

另外,wan ip經由DHCP來取得,記得要開放dhcp服務,否則會無法取得ip
root@srx100# set security zones security-zone untrust interface fe-0/0/0.0 host-inbound-traffic system-services dhcp
root@srx100# set security zones security-zone untrust host-inbound-traffic system-services dhcp   ##錯誤只有interface才支援dhcp服務zone並不支援dhcp服務

設定interfaces fe-0/0/0.0 dhcp client以取得WAN IP
root@srx100# set interfaces fe-0/0/0 unit 0 family inet dhcp
設定interfaces fe-0/0/0.0 為固定IP
root@srx100# set interfaces fe-0/0/0 unit 0 family inet address 192.168.188.10/24



關於web-management https(http)命令在設定上的觀念
Juniper SSG/Netscreen 防火牆上,我們要在介面上開放httpshttp的服務,只要進入該介面,並勾選httpshttp服務即可。
因此在Juniper SRX設備上當我們看到下列命令時:set system services web-management https interface vlan.0,我們通常會直觀的認為這是要在vlan.0界面開啟https服務。
換句話說,只要您在網頁瀏覽器上輸入 "https://" + "vlan.0的介面IP",例如:"https://192.168.1.1",您就可以在加密的https網頁上開啓SRX設備的J-Web管理介面。
這在一般的設定情況中通常都不會有問題。
可是當我們要讓遠端的VPN用戶利用VPN連線從本地的vlan.0以及lo0.0界面來開啟https服務好管理本地設備時,通常我們會直觀的設定為set system services web-management https interface [ vlan.0 lo0.0 ],可是卻發現GG了,行不通。
經由我們實際操作發現我們從本地的vlan.0介面可以登入J-WEB網頁管理介面,而從遠端的VPN連線中就無法經由lo0.0vlan.0介面來登入J-WEB了。
可是一旦當我們將設定改成從所有的介面都能開啓https服務時(set system services web-management https interface all),卻又發現這時我們就可以從遠端的VPN連線中經由lo0.0vlan.0介面來登入J-WEB了。
在經過我們不斷的、努力的、認真的試驗之後,才發現原來是我們對使用web-management https命令的觀念不正確所致,原來set system services web-management https interface vlan.0這個命令的實際功用為:開放vlan.0介面上的所有用戶都能使用https服務來開啓J-Web網頁管理介面。也就是說只要您是vlan.0介面上的用戶,您就可以在網頁瀏覽器上輸入這台設備的介面IP來開啓經過加密的J-Web管理介面,而且不一定只限於vlan.0的介面ip,凡是屬於這台設備上的所有介面ip都行,但前提是您必須要有其他介面的使用權才行(我們可透過策略policy來控制)
以本例而言,因為我們的目的是要讓遠端的VPN用戶能透過VPN連線,連接本地的vlan.0以及lo0.0界面並開啟https服務,以便我們能更安全的從遠端來管理本地設備。而遠端VPN的流量到底是從哪個介面來進入設備的? fe-0/0/0.0 WAN介面嗎? 錯,VPN流量都是經由st0(或是st[n])介面(Juniper SRX VPN通道專屬介面)來進入設備的,所以我們只要將st0.0介面加入web-management https命令之中就可以達成我們的需求,例如:
set system services web-management https interface st0.0
當然,這並不只限於只能使用lo0介面來登入J-WEB,只要是您能接觸得到的本地介面,例如vlan.0等,您都可以透過它的介面IP來登入本地SRX設備的J-Web網頁管理介面。






如何清除系統儲存空間?
SRX重新安裝系統,request security idp security-package install 以後,本來很快的就可以安裝好,但是最後等了很長時間,最後出現錯誤訊息說 /cf/var: write failedfilesystem is full (檔案系統滿了),最後發現一條命令就能解決我的問題
SRX@SRX100h> request system storage cleanup
原廠連結如下:





如何大範圍替換運行中配置檔內的字串
大範圍替換運行中配置檔內的字串
replace pattern /26 with /24    ##將設定檔中如192.168.6.6/26字串中之目標字串"/26"置換成取代字串"/24"
您必須確定目標字串"/26"在整個配置檔中是唯一的是專屬於192.168.6.6/26字串的,並沒有其他非目標字串中含有"/26"字串,否則一旦替換了字串並且commit提交後,就容易造成不可預期的災難。
commit之前我們可以使用show | compare 命令來確認更改是否正確,若是真的設定錯誤我們也可以使用rollback命令來恢復先前的設定。
所以上面的命令我們可以更改一下,改用比較精確的方式來設定,以確定目標字串在配置檔中是唯一與專屬的,如下:
replace pattern 192.168.6.6/26 with 192.168.6.6/24

大範圍替介面設置相同的字串命令
wildcard range set interface ge-0/0/[1,3,5,7] mtu 9000  ##設定介面ge-0/0/1ge-0/0/2ge-0/0/3ge-0/0/5ge-0/0/7mtu值為9000

大範圍刪除介面中相同的字串命令
wildcard range delete interface ge-0/0/[1-2] mtu   ##刪除介面ge-0/0/1ge-0/0/2mtu





如何清除Juniper SRX尚未提交的指令:
CLI命令下錯,而造成無法提交commit時,就必須清除尚未提交的所有命令。
常常我們在設定時一次輸入了數十行命令,提交commit時卻發現設定有問題,無法被提交,而從配置異常訊息中又無法明確知道問題在哪,只能縮小範圍再重新測試,而一行一行delete又太慢,這時我們就可以使用下列命令來清除尚未提交的所有命令:
clear system commit

[edit]
root@srx100# commit
  error: Another commit is pending       ##下錯的命令造成系統無法被提交
[edit]
root@srx100# run clear system commit
  Pending commit cleared              ## Pending清除後才能commit
[edit]
root@srx100#

另一個辦法是:
  root@srx100# rollback 0
  root@srx100# commit






手動設定系統日期與時間
手動設定時間 January 25, 2010 and 11:15:00 AM.
user@host> set date YYYYMMDDhhmm.ss
user@host> set date 201001251115.00

手動同步時間 NTP server 118.163.81.61
root@srx100a> set date ntp time.stdtime.gov.tw
 1 Oct 12:28:44 ntpdate[14437]: sendto/sendmsg(2001-b031-5c02-ff00-0000-0000-000
0-0005.hinet-ip6.hinet.net): No route to host
 1 Oct 12:28:45 ntpdate[14437]: sendto/sendmsg(2001-b031-5c02-ff00-0000-0000-000
0-0005.hinet-ip6.hinet.net): No route to host
 1 Oct 12:28:46 ntpdate[14437]: sendto/sendmsg(2001-b031-5c02-ff00-0000-0000-000
0-0005.hinet-ip6.hinet.net): No route to host
 1 Oct 12:28:47 ntpdate[14437]: sendto/sendmsg(2001-b031-5c02-ff00-0000-0000-000
0-0005.hinet-ip6.hinet.net): No route to host
 1 Oct 12:28:48 ntpdate[14437]: no server suitable for synchronization found

root@srx100a> set date ntp 118.163.81.61
 1 Oct 12:28:11 ntpdate[14424]: step time server 118.163.81.61 offset -0.000091 sec

手動同步時間 跟清單中之NTP server同步時間
root@srx100a> set date ntp
 1 Oct 12:29:45 ntpdate[14453]: step time server 211.22.103.158 offset 0.000257 sec




為什麼網路線接上Switches後要等待30
本段節錄自 - iT 邦幫忙
這是因為Spanning Tree Protocol (STP)要去判斷網路狀況,避免有迴圈的情形發生,所以會出現30秒的收斂時間
(這也是為什麼我捫網路設備接上cisco switches設備時要等30秒的原因)
避免迴圈當然是很好,但是會有人覺得等30秒太久,我想要直接接上去就可以用。
這時候你可以在port上面設定。
(config-if)#spanning-tree portfast
這個指令表示說,你不要幫我進行任何檢查,我非常有自信這邊不會有問題,我要直接用。
當然你都這麼有自信的說了,設備當然就是聽從你的吩咐,網路線對接上去就直接給你用了。但是當你的網路環境中因為這個狀況出現了迴圈風暴,你就得自己承擔一下這後果了。

Juniper SRX設備預設開啟stp協定,而不是rstp,下面我們就來敘述。
首先,stp協定作用在ethernet-switching介面上,下面為設定示範:
set interfaces fe-0/0/5 unit 0 family ethernet-switching vlan members vlan-trust
在上面ethernet-switching的介面上接入設備需要等待30秒。
而下面的介面則不需等待:
set interfaces fe-0/0/6 unit 0 family inet address 192.168.4.1/24

我們可以將stp協定單獨設定在個別的介面上:
root@srx100-a# set protocols stp interface ?   ##stp可以單獨設定在個別介面之上
Possible completions:
  <name>               Enter interface name
  fe-0/0/0.0
  sp-0/0/0.0
  sp-0/0/0.16383
  fe-0/0/1.0
  fe-0/0/2.0
  fe-0/0/3.0
  fe-0/0/4.0
  fe-0/0/5.0
  fe-0/0/6.0
  fe-0/0/7.0
  lo0.0
  lo0.16384
  lo0.16385
  lo0.32768
  vlan.0
  all                  All interfaces
[edit]
root@srx100-a#

這是本人試驗後的設定,下面會分開敘述:
root@srx100-a# show | display set | match stp
set protocols stp max-age 6
set protocols stp hello-time 1
set protocols stp forward-delay 4
set protocols stp interface all edge
[edit]
root@srx100-a#

第一階段:
set protocols stp max-age 6
set protocols stp hello-time 1
set protocols stp forward-delay 4
上述三個命令都是個別參數所允許的最小值,設備接入要等待15秒,會有判斷不出迴圈風暴的機率

第二階段:
set protocols stp interface all edge
上面的命令設定後,設備接入要等待5秒,會有迴圈風暴的風險

第三階段:
delete protocols stp   /* 停止stp協定  */
上面的命令設定後,設備接入要等待3秒,會有迴圈風暴的風險







下列操作命令在操作模式下使用,或在配置模式下 run show
show system software 查看當前系統軟體版本號
show system software backup 查看備援系統軟體版本號
show system uptime 查看系統啟動時間
show chassis haredware 查看設備序號,跟設備底部貼紙序號一樣
show chassis environment 查看硬體板卡當前狀態
show chassis routing-engine 查看主控板(RE)資源使用及狀態
show route 查看路由表
show arp 查看ARP
show log messages 查看系統日誌
show interface save interface_config.txt 儲存查看介面運行狀態
show interface terse 查看所有介面運行狀態
show interface terse | match reth 查看所有reth介面運行狀態
show interface ge-0/0/0.0 terse 查看ge-0/0/0.0介面運行狀態
show interface ge-0/0/0.0 brief 查看ge-0/0/0.0介面狀態
show interface ge-0/0/0.0 extensive 查看ge-0/0/0.0介面狀態
show interface ge-x/y/z detail 查看介面運行細節資訊
monitor interface ge-x/y/z 動態統計介面數據包轉發資訊
monitor traffic interface ge-x/y/z 動態報文抓取(Tcpdump,類似ScreenOS snoop命令)
show security flow session summary 查看當前防火牆併發會話數
show security flow session 查看當前防火牆具體併發會話
clear security flow session all 清除當前session
show security alg status 檢查全域ALG 開啟情況

show configuration   /查看設備階層式設定檔
show configuration | display set /查看設備設定檔

show system software /查看軟件版本
show system uptime   /查看系統啟動時間和最後修改配置的帳號及時間
show system core-dumps   /查看系統core-dumps文件
show system alarms       /查看系統告警訊息
show chassis haredware   /查看硬體卡版及序號
show chassis environment /查看硬體卡版狀態(溫度、風扇等)
show chassis routing-engine /查看主CPUMemory資源使用及狀態
show chassis alarms   /查看硬體告警訊息

show chassis cluster status  /查看HA狀態
request chassis cluster failover redundancy-group 1 node 1  /主備機手動切換

show route | find 192.168.1.0  /查看路由表
show arp     /查看ARP狀態
show log messages | no-more   /查看系統log

show system connections   /查看JUNOS系統連接狀態

show interface terse /查看所有介面狀態up/downIP
show interface ge-x/y/z detail  /查看介面詳細狀態(速率、MTU)
monitor interface ge-x/y/z      /監看介面封包轉發狀況
monitor traffic interface ge-x/y/z /監看封包狀況(Tcpdump,類似 ScreenOS snoop 命令)
show security flow session         /查看具體的session及相對應的policy
clear security flow session all    /清除當前session
show security alg status           /檢查全域ALG開啟情況

Case時需要抓取的訊息:
request support information

Applications服務物件設定
set applications application tcp-3389 protocol tcp        /定義服務協定<TCP\UDP\ICMP\OTHER>
set applications application tcp-3389 source-port 1-65535 /定義服務來源埠
set applications application tcp-3389 destination-port 3389-3389 /定義目的服務埠
set applications application tcp-3389 inactivity-timeout never   /定義timeout時間

Scheduler設定
set schedulers scheduler work-time daily start-time 09:00:00 stop-time 18:00:00

SRX 對應ScreenOS debug flow basic 跟蹤報文處理路徑的命令:
set security flow traceoptions flag basic-datapath 開啟SRX基本報文處理Debug
set security flow traceoptions file filename.log 將輸出資訊記錄到指定檔中
set security flow traceoptions file filename.log size <file-size> 設置該檔大小,預設 128k
set security flow traceoptions packet-filter filter1 destination-prefix 5.5.5.2 設置報文跟蹤篩檢程式
run file show filename.log 查看該Log 輸出資訊



這個網誌中的熱門文章

如何測試網路連線--網路斷線了怎麼辦?

筆記電腦刷BIOS失敗無法開機—用CH341A編程器重刷BIOS教學!

查理王的電腦部落格-首頁