S小魚仔S 網誌搜尋

顯示具有 Fortigate 標籤的文章。 顯示所有文章
顯示具有 Fortigate 標籤的文章。 顯示所有文章

2020年2月10日 星期一

S小魚仔S Fortigate 6.0.9 Traffice Shaping QoS 流量管制

1. 配置「流量塑形器」定義「流量

配置「政策&物件」=>「流量塑形器」=>「新增

定義「流量」速度以及「最大頻寬

2. 配置「流量塑形政策」完成限速


配置「來源」與「目的」與「服務」,「Shared Shaper」(上傳速度)、「反向流向塑形器」(下載速度) 

4. 使用「Speedtest」測試「速度

2020年2月5日 星期三

S小魚仔S Fortigate 6.0.9 封鎖外網只允許使用 QQ 或 WeChat 通訊

由於 Fortigate Firmware 更新非常快,每一個跨度版本更新「設定」位置都不一樣,為了避免忘記,再次記錄下來。

啟用「用戶應用程式控制

資安管理設定」=> 「應用程式」=>「新增特徵碼
PS. 建議各位定期更新「Fortigate Firmware」每次都會更新「特徵碼

選擇「全選



預設特徵碼全部都是「封鎖」只要選擇「應用通訊」允許即可



 選擇「政策&物件」在「齒輪」圖示添加「應用程式控制」欄位

在 允許「Internet」ACL, 應用程式控制欄位套用「APP default」 

日誌與報表」瀏覽「通訊程序」相關「日誌


2017年6月3日 星期六

S小魚仔S ELK 收集 Fortigate 60D Syslog 使用 Grok 產生 字段

關於「ELK」簡單來說就是一個「LOG」收集分析軟件,屬於「開源」基於「Linux」環境 架設與佈署,Windows Log、Linux Log、Syslog 照單全收,需要建置角色「Elasticsearch」、「Logstash」、「Kibana」三個套件,個人還是喜歡「Splunk」因為簡單好上手。

由於「Fortigate 60D - Syslog」 送往「ELK」並不會自動做「字段分析」,需要使用「logstash」=>「filter」插件功能 =>啟用「grok」,同時感謝「料理佳餚」作者 分享「ELK」設定「Grok」方法。

先讓各位看一下「Grok」編寫方法

ELK」收集「字段」顯示

使用「Grok」功能,我們需要先獲取「Fortigate 60D」Message

<189>date=2017-06-03 time=05:02:07 devname=FGT60D1112219335 devid=FGT60D1112219335 logid=0000000013 type=traffic subtype=forward level=notice vd=root srcip=192.168.2.100 srcport=50086 srcintf="internal" dstip=117.185.116.152 dstport=80 dstintf="wan1" poluuid=08a76f2c-1110-51e7-d44e-8c9dc0f52380 sessionid=300676 proto=6 action=close policyid=1 policytype=policy dstcountry="China" srccountry="Reserved" trandisp=snat transip=192.168.1.5 transport=50086 service="HTTP" appcat="unknown" applist="default" duration=1 sentbyte=703 rcvdbyte=519 sentpkt=6 rcvdpkt=5 wanin=307 wanout=383 lanin=383 lanout=307

天啊..這麼多訊息,我們要怎麼進行「字段」分析,別擔心前往「Grok Debug」將「內文」貼上,使用「Discover」智能分析「關鍵」字段,由於「畢竟」是「工具」許多「字段」都是寫死,必須改為「變數」。

將「Dicover」智能分析「結果」Copy 過來「Debugger」頁面,依序修改「變數」並且 所見及所得 ( What You See It Waht You Get ) ,一步一步 邁向成功之路.....

得到最後結果如下
%{SYSLOG5424PRI}date=20%{DATE} time=%{TIME:time} devname=%{HOSTNAME:devName} devid=%{HOSTNAME:devId} logid=%{NUMBER:logId} type=%{WORD:logType} subtype=%{WORD:logSubType} level=%{WORD:level} vd=%{DATA:virtualDomain} srcip=%{IP:srcIP} srcport=%{NUMBER:srcPort} srcintf=%{DATA:srcInterface} dstip=%{IP:dstIP} dstport=%{NUMBER:dstPort} dstintf=%{DATA:dstInterface} poluuid=%{DATA:poluuid} sessionid=%{NUMBER:sessionid} proto=%{INT:protocol} action=%{WORD:action} policyid=%{INT:policyId} policytype=%{WORD:policytype} dstcountry=%{QS:dstcountry} srccountry=%{QS:dstcountry} trandisp=%{WORD:trandisp} transip=%{IP:transip} transport=%{NUMBER:transport} service=%{QS:service} appcat=%{QS:appcat} applist=%{QS:applist} duration=%{NUMBER:duration} sentbyte=%{NUMBER:entbyte} rcvdbyte=%{NUMBER:rcvdbyte} sentpkt=%{NUMBER:sentpkt} rcvdpkt=%{NUMBER:rcvdpkt} wanin=%{NUMBER:wanin} wanout=%{NUMBER:wanout} lanin=%{NUMBER:lanin} lanout=%{NUMBER:lanout}

將「結果」貼到「Filter」內「grok


filter {           
   grok { 
                  match => [
                  "message", "%{SYSLOG5424PRI}date=20%{DATE} time=%{TIME:time} devname=%{HOSTNAME:devName} devid=%{HOSTNAME:devId} logid=%{NUMBER:logId} type=%{WORD:logType} subtype=%{WORD:logSubType} level=%{WORD:level} vd=%{DATA:virtualDomain} srcip=%{IP:srcIP} srcport=%{NUMBER:srcPort} srcintf=%{DATA:srcInterface} dstip=%{IP:dstIP} dstport=%{NUMBER:dstPort} dstintf=%{DATA:dstInterface} poluuid=%{DATA:poluuid} sessionid=%{NUMBER:sessionid} proto=%{INT:protocol}
action=%{WORD:action} policyid=%{INT:policyId} policytype=%{WORD:policytype} dstcountry=%{QS:dstcountry} srccountry=%{QS:dstcountry} trandisp=%{WORD:trandisp} transip=%{IP:transip} transport=%{NUMBER:transport} service=%{QS:service} appcat=%{QS:appcat} applist=%{QS:applist} duration=%{NUMBER:duration} sentbyte=%{NUMBER:entbyte} rcvdbyte=%{NUMBER:rcvdbyte} sentpkt=%{NUMBER:sentpkt} rcvdpkt=%{NUMBER:rcvdpkt} wanin=%{NUMBER:wanin} wanout=%{NUMBER:wanout} lanin=%{NUMBER:lanin} lanout=%{NUMBER:lanout}"
                           ]
                }
        }

最終結果如下

重新啟動「ELK」(logstash)

找到 (logstash)「5043」端口「服務」
netstat -ltunp | grep "5043"

強制結束「PID」程序
kill -9 16741

重新啟動「logstash
nohup /opt/logstash-5.4.0/bin/logstash -f /opt/logstash-5.4.0/config/nginx.yml &



登入「ELK」Web UI (Kibana) 更新「字段





終於完成..這麼複雜的方法..我開始懷念「Splunk」好用的工具。


參考資料

2017年3月26日 星期日

S小魚仔S Fortigate 5.4.3 設定 SNMP

登入「Fortigate」Web 介面

1. 點選「網路
2. 點選「介面
3. 進入「介面

允許「SNMP」進行「通訊

1. 點選「系統管理
2. 點選「SNMP
3. 勾選「SNMP 引擎」啟用
4.點選「建立新的

1. 輸入「public」廣播名稱
2. 輸入「允許」通訊「網段
3. 選擇「介面

啟用「SNMP」相關「Log

如何測試「SNMP」與 Linux「監控 主機」(Zabbix) 是/否 連線完成


Linux 安裝「tcpdump
yum install tcpdump -y

查詢「兩端」主機「通訊」,「ens3」是「tcpdump」主機「網卡名稱」介面
tcpdump -n -i ens3 host 10.10.20.254 and 10.10.20.250


2017年1月18日 星期三

S小魚仔S Fortigate 5.4.3 Explicit Web Proxy (網頁代理伺服器)



1. 啟用「Explicit Web Proxy」功能



2. 設定「Network Interface」啟用「Explicit Web Proxy


1.點選「網路
2. 點選「介面
3. 點選「Internal

啟用「顯式網頁代理

3. 設定「顯性代理網頁伺服器


1. 點選「網路
2. 點選「顯性代理
3. 啟用「顯性式的網頁代理伺服器
4. 點選「介面
5. 設定「通訊協定」8080


4.設定「顯性代理政策」防火牆



1. 選擇「Wan Interface」(出去介面)
2. 選擇「Internal_Zone(來源介面)
PS. 需要事先手動建立「政策&物件」=>「位址
3. 目的地址「All
4.時間表「always
5. 採取行動「接受
6. 啟用「Log 紀錄

5.「瀏覽器 (IE)」設定「Proxy 伺服器


點選「工具」=>「網際網路選項

1.點選「連線
2.點選「LAN 設定

啟用「Proxy 伺服器

檢查「顯示式代理政策」流量



參考資料
FortiGate Cookbook」-「Explicit Proxy (5.2)
51cto.Com」-「飞塔防火墙之Explicit Proxy
51cto.Com」-「配置Windows NPS作为FortiGate防火墙的RADIUS服务器

2017年1月15日 星期日

S小魚仔S Fortigate 5.4.3 搭建 IPsec VPN


Fortigate 5.4.3 搭建 IPsec VPN 設定起來並不困難,主要是理解和設定,透過下面「示意圖」接著往下「Setup By Setup」。


1.「Creating A User And A User Group(建立「使用者」加入「群組」)

建立「使用者

建立「群組」加入「使用者

2.「Configuring the IPsec VPN using the IPsec VPN Wizard」(使用 IPsec 設定精靈)

使用「IPsec 精靈」幫助您快速設定「IPsec VPN
3. 輸入「名稱
4. 點選「遠端存取
5.點選「遠端設備類型

3. 「來源」選擇「介面 (WAN)
4. 輸入「共享密碼」必須「六位數
6.選擇「群組

建立「Policy

1. 目的「Local Interface
2. 目的「Local Interface IP Range
PS. 需要事先手動建立「政策&物件」=>「位址
3. 輸入「IPsec VPN」發放「DHCP 範圍
4. 保持「預設值
5. 點選「下一步

最後步驟「預設值」即可


建立完成「檢查」介面「WAN」端會產生「子介面」(Sub-Interface)

政策&物件」=>「位址」會自動產生「IPsec_VPN_Range


3.「Creating A Security Policy For Access To The Internet

設定「IPsec VPN To Internet (網際網路)

1. 輸入「用戶名」 
2. 選擇 來源「IPsec_VPN」介面 (IPsec VPN Sub-Interface
3. 選擇 目的「Internet_Zone2」介面 (Internet - Interface
4. 來源位址「All」 
5. 目的位址「All」 
6. 時間表「always」 
7. 服務「ALL」 
8. 採取行動「接受」 
9. 啟用「紀錄合法流量」=>「全部會話

4.「Configuring FortiClient APP

輸入「名稱
選擇「IPsec VPN

 點選「設置

點選「服務器設置

1. 輸入「FortiGate」( WAN Interface IP )
2. 輸入「共享密碼
3. 點選「返回

進行「登入」帳號、密碼,完成收工。

參考資料
Cookbook Fortinet」-「IPsec VPN with FortiClient
Askasu」-「快速設定 Fortigate Site to Site IPEC VPN