S小魚仔S 網誌搜尋

2017年6月20日 星期二

S小魚仔S Windows Server 2016 TS Remote App 簡易佈署

因為工作上需要「TS Remote App」使用「Windows Server 2016」開始搭建 ,先決條件必須有「AD (網域)」,否則「無法搭建」。

本次實驗環境「AD+ TS Remote App (遠端桌面服務) 」同一個主機,AD (網域) 搭建就不多加描述。


1. 添加「服務器角色」 (遠程桌面服務)



啟用「遠程桌面服務

2. 添加「角色服務」 ( 遠程桌面 Web 訪問 ) 和 ( 遠程桌面會話主機 )



3. 等待 功能 新增完成 提示「重新開機





4. 進入「服務管理器」=>「遠程桌面服務



提示您 需「建立」 RD 連接代理服務器,需要透過「添加角色和功能」配置才能使用



5. 添加「角色和功能」佈署  (遠程桌面連接代理) (遠程桌面WEB訪問) (遠程桌面會話主機)




使用「標準部署

選擇「基於會話的桌面部署

介紹「三個」主要「角色」用途

配置「RD 連接代理」主機

配置「RD WEB」主機

配置「RD 會話」主機

勾選「需要時自動重新啟動....」接著「部署

6. 「創建會話集合」 ( Create A Collection )

建立「會話集合

輸入「集合名稱

配置「RD 會話主機


允許「使用」群組

配置「Remote APP」使用「資料夾」空間,後續就「下一步」然後「創建

7. 設定「創建集合」發布 Remote App 程序






8. 透過「網頁」瀏覽「Https:// IP or Domain :RDWEB」
PS.「Remote App Server」會自動啟用「防火牆 ( Firewall Rules)」規則。




9. 如果「Clinet」沒有加入「網域」,使用「Firefox」瀏覽器登入「網頁」下載 APPxxx.rdp」 並修改內文「full address」和「workspace id」改為「IP Server」位址,即可連線。






參考資料
The Windows Server HA Blog」-「Step by Step Server 2016 Remote Desktop Services QuickStart Deployment
51cto.com」-「Win2012 下 Remoteapp 的报错 "找不到远程计算机"

2017年6月5日 星期一

S小魚仔S ELK 錯誤訊息 max file descriptors [4096] for elasticsearch process is too low ....

檢查「cat ./elasticsearch-5.3.2/logs/elasticsearch.log

警告
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]」。

解決方案。

切換「root」帳號
su root

編輯「limits.conf
vi /etc/security/limits.conf

加入「下面」配置,「elk」為「elasticsearch」啟動「帳戶
elk soft nofile 65536 
elk hard nofile 65536

檢查「大小
su elk -c 'ulimit -Hn'


警告
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解決方案。

vi /etc/sysctl.conf

vm.max_map_count=655360

sysctl -p

====重啟「elasticsearch」和「kibana」====

檢查「9200」PID 程序
netstat -ltunp | grep "9200"

停用「進程
kill -9 PID

使用「elk」帳號,背景運行「elasticsearch」 程序。TCP-9200
su elk -c 'nohup /opt/elasticsearch-5.3.2/bin/elasticsearch &'

運行「kibana」程序
/opt/kibana-5.3.2-linux-x86_64/bin/kibana &

檢查「elasticsearch.log
cat ./elasticsearch-5.3.2/logs/elasticsearch.log

參考資料
my.oschina.net」-「Elasticsearch5.1.1 启动报错

2017年6月4日 星期日

S小魚仔S ELK 安裝 Head 插件 (Plugin) 檢查 Index 健康狀況

ELK 安裝 Head 插件 可以檢查「index」使用率「大小」以及「健康」狀況。

1. 將檔案「下載」修改「檔名」並「解壓縮」傳到「/opt目錄
https://github.com/mobz/elasticsearch-head
PS.
1. 不能放在「elasticsearch」=> plugins 目錄 
2. 不能使用 「elasticsearch-plugin install




2. 切換 目錄「cd /opt/elasticsearch-5.4.0/config/

3. 編輯「elasticsearch.yml
vi elasticsearch.yml

4. 最後面加入「下面語句
http.cors.enabled: true
http.cors.allow-origin: "*"

6. 安裝「nodejs」套件
yum install -y nodejs

6. 切換「cd /opt/head」目錄



安裝「npm install -g grunt-cli」套件

安裝「npm install

7.重啟「elasticsearch」服務

;檢查「9200」PID 程序
netstat -ltunp | grep "9200"

;停用「進程」

kill -9 28258

;使用「elk」帳號,背景運行「elasticsearch」 程序。TCP-9200

su elk -c 'nohup /opt/elasticsearch-5.4.0/bin/elasticsearch &'

8. 啟動「grunt server」服務器,畫面會顯示某些「錯誤」直接「忽略」,因「ELK」5.0.X 版本 會有相容性「問題

grunt server」 (頁面執行) 或「nohup grunt server &」(背景執行)


8. 使用「http://localhost:9200」瀏覽

點選「Index」索引 =>「索引信息

瀏覽「索引」字段

完成「Head 插件 (Plugin)」安裝,師父領進門,修行在個人。

參考資料
elasticsearch」-「Cannot start Elasticsearch with non loopback address
GitHub」-「elasticsearch-head

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年5月27日 星期六

S小魚仔S FreeNAS 9.10.2 配置 NFS (三)

 1.設定「儲存」配置「權限



2. 配置「共享」選擇「UNIX (NFS)




開啟「NFS」服務



參考資料

S小魚仔S FreeNAS 9.10.2 配置 iSCSI (二)

1.設定「延伸磁區


1. 輸入「名稱
2. 選擇「檔案」類型
3. 延伸磁區「xxx/xxx.entent」(需要自定義副檔名)
4. 輸入「容量
5.選擇「Lun RPM」(空間轉速)
6. 點選「確定

配置「完成」瀏覽 檢查


2. 設定「啟動器



允許 任何「來源」連接。

3. 設定「入口



配置「IP」協議「通訊埠」,點選「確定


4.設定「目標



1. 輸入「名稱
2. 選擇「入口群組
3.選擇「啟動器群組
4.點選「確定


5. 設定「相關目標



1. 輸入「目標」名稱
2. 選擇「LUN ID
3. 選擇「延伸磁區」(Extent)
4. 點選「確定


6. 啟用「iSCSI」服務




7. 設定「Esxi







配置「成功

參考資料
media.jaes.ntpc.edu.tw」-「FreeNAS-開啟 iSCSI 服務