2021年6月24日 星期四

S小魚仔S Grafana 安裝 Traceroute Map Panel 插件

 要使用「Grafana」完成「Traceroute Map Panel」必須先滿足以下條件

1. Centos 8 或 Centos 8 Steam 系統

2. Linux MTR Tools 版本 0.94 以上

3. 安裝「influxdb」( 時間序資料庫)

4. 安裝「Telegraf」 (客戶端採集資料)


~~ 那麼接下來我們開始嚕 ~~


#==修改「電腦」名稱====

hostnamectl set-hostname influxdb


#==關閉「selinux 」======

#關閉「Selinux」為「disabled」才不會阻擋「服務連線」服務

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

setenforce 0


#==開啟「Influx DB」允許端口 ==

sudo firewall-cmd --add-port=8086/tcp --permanent 

sudo firewall-cmd --reload


#== Install Mtr 0.94 以上版本 ==

#離線安裝「mtr」0.94 版本 不能使用「yum」 

yum localinstall /opt/mtr-0.94-2.hs.el8.x86_64.rpm -y

#檢查「mtr」版本 

mtr -v 


#== Install Influx DB  (資料庫) ==

#建立「InfluxDB」Yum 源

cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo

[influxdb]

name = InfluxDB Repository - RHEL \$releasever

baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable

enabled = 1

gpgcheck = 1

gpgkey = https://repos.influxdata.com/influxdb.key

EOF


#安裝「influxdb」

yum install influxdb -y


#啟動「influxdb」

systemctl start influxdb


#開機啟動「influxdb」

systemctl enable influxdb


#進入「influx」資料庫  default  使用 admin 登入

influx


# 建立「route」帳戶 並設定 密碼「passwd」

CREATE USER route WITH PASSWORD 'passwd'


#建立「traceroute」資料庫

create database traceroute


#賦予「route」帳戶 擁有 「traceroute」資料庫 讀/寫 權限

GRANT all ON traceroute TO route


#顯示「資料庫」

show databases


#建立「資料庫」保存週期90天

create retention policy "limlt_90_day" on "traceroute" duration 90d replication 1 default


#== Install Telegraf ( 數據採集客戶端工具 ) ===


#線上安裝「telegraf」

yum install telegraf.rpm -y


#編輯「telegraf」設定文檔

vi /etc/telegraf/telegraf.conf


# # Read metrics from one or more commands that can output to stdout  ( 配置 採集內容 )

PS. 解析「8.8.8.8」、「233.5.5.5」路由

#  interval = 60s 每一分鐘執行一次。

[[inputs.exec]]

 commands=[

 "mtr -C -n 8.8.8.8" ,

  "mtr -C -n 223.5.5.5"

 ]

 interval = "60s"

 timeout = "120s"

 data_format = "csv"

 csv_skip_rows = 1

 csv_column_names=[ "", "", "status","dest","hop","ip","loss","snt","", "","avg","best","worst","stdev"]

 name_override = "mtr"

 csv_tag_columns = ["dest", "hop", "ip"]



# Configuration for sending metrics to InfluxDB  ( 配置 輸出 資料庫 內容 )

[[outputs.influxdb]]

 urls = ["http://127.0.0.1:8086"]

 database = "traceroute"

 retention_policy = ""

 write_consistency = "any"

 timeout = "120s"

#啟動「telegraf」

systemctl start telegraf


#開機啟動「telegraf」

systemctl enable telegraf


#===== InfluxDB 驗證資料(等待1分鐘) ===


#「登入」InfluxDB 驗證資料寫入

influx  -host 'localhost' -port '8086' -username 'route' -password 'passwd'


#指定「traceroute」資料庫 並 顯示「資料表」( measurements ) 找到「mtr」資料表

use traceroute

show measurements


#查詢「mtr」資料表 及前「5」筆資料。

select * from mtr limit 5


#=== 開始配置 Grafana ===


#安裝「gowee-traceroutemap-panel」插件

grafana-cli plugins install gowee-traceroutemap-panel


#重新啟動「Grafana」

sudo systemctl restart grafana-server


#設定「influxdb」來源


# Grafana 添加「Traceroute Map Panel」Dashboard 並填入「InfluxDB」SQL 就完成了

select mean(avg) as rtt, mean(loss) as loss from mtr WHERE ${__to}ms - 5m <= time AND time <= ${__to}ms group by hop, ip, host, dest

參考資料

Grafana」-「Traceroute Map Panel

Gowee」-「traceroute-map-panel

2021年6月22日 星期二

S小魚仔S Dolphin Emulator 模擬器 配置 Switch Joycon 手把

在家裡花時間研究「Dolphin Emulator」配置「Switch Joyon」手把並且玩上「Wii」射擊類遊戲,這邊就做簡單紀錄。

準備軟件工具如下

Dolphin-5.0-14406」( Will 模擬器也支持 NGC )

BetterJoyForCemu」( 連結 Joycon 手柄 或 Switch Pro 手柄 必備軟件 )

Wii 遊戲「ISO」、「ISO」、「ISO


~~ 下面就準備接著開始嚕 ~~

安裝「BetterJoyForCemu」軟件

1. 根目錄\Drivers\ViGEmBus_Setup_1.16.116.exe 進行安裝


2. 根目錄\Drivers\HIDGuardian\HIDGuardian Install (Run as Admin).bat 進行註冊



3. 電腦開啟「藍芽」配置「Joycon」手柄

PS. 注意配對順序先「左」(left-hand) 後「右」配置 Joycon (right-hand) 手柄

按住「Joycon」藍芽配置「按鈕」約「5~10」秒



左手 與 右手  Joycon 配置完成畫面


4. 開啟「BetterJoyForCemu.exe」檢查「本機」端口 並 測試「Joycon」手柄


5. 配置「Dolphin」載入「BetterJoyForCemu」插件




6. 開始配置「Joycon」與「Wii」按鈕對應

PS. 也許您跟我一樣沒碰過「wii」遊戲機「手柄」在「配置」非常痛苦..摸不著頭緒,請瀏覽「最下方參考連結」網址










參考連結

jilaxzone.com」-「How to use Nintendo Switch Joy-Con on Dolphin emulator | Emulating WiiMote, Nunchuck and MotionPlus

2021年5月28日 星期五

S小魚仔S Centos 7 安裝 Zabbix 5.0

 本次安裝採用「Centos 7」 安裝「Zabbix 5.0」這是最後一個支持版本,簡單來說「Zabbix 5.0」以後版本必須使用「Centos 8」或「Centos 8 Stream」。


#修改「電腦」名稱

hostnamectl set-hostname zabbix


#關閉「selinux 」

PS.關閉「Selinux」為「disabled」才不會阻擋「服務連線」服務

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

setenforce 0


#開啟「防火牆」允許端口

sudo firewall-cmd --add-port=80/tcp --permanent 

sudo firewall-cmd --add-port=3306/tcp --permanent 

sudo firewall-cmd --add-port=10051/tcp --permanent 

sudo firewall-cmd --add-port=10051/udp --permanent

sudo firewall-cmd --add-port=10050/tcp --permanent

sudo firewall-cmd --add-port=10050/udp --permanent

sudo firewall-cmd --reload


#安装「Zabbix Rpm」及「阿里」源

rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm


#更換「YUM」源為「阿里雲」

PS. 如果您人在「中國」建議更換「YUM」源

sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

yum clean all

#安装「zabbix server」 和 「zabbix agent」

yum install zabbix-server-mysql zabbix-agent -y


#安装 Software Collections,便于后续安装高版本的 php,默认 yum 安装的 php 版本为 5.4 过低

yum install centos-release-scl -y


#修改「zabbix.repo」將「zabbix-frontend」底下參數改為「enabled=1」

vi /etc/yum.repos.d/zabbix.repo

[zabbix-frontend] 

enabled=1



#安装 zabbix 前端和相关环境

yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y


#安裝「mariadb server」

yum install mariadb-server -y


#啟用「mariadb」並設定「開機啟動」

systemctl enable --now mariadb


#使用以下命令初始化 mariadb 并配置 root 密码

PS. 初始化完成後可以使用「mysql -u root -p」驗證「帳戶」與「密碼」

mysql_secure_installation


#建立「zabbix」資料庫 並 設定「語系」

create database zabbix character set utf8 collate utf8_bin;

#配置「zabbix」帳號 與 密碼 並 限制「本機」登入「zabbix」資料庫

GRANT ALL PRIVILEGES on zabbix.* to 'zabbix'@'localhost' IDENTIFIED BY 'password';

FLUSH PRIVILEGES;

quit


#使用以下命令导入 zabbix 数据库,zabbix 数据库用户为 zabbix,需要驗證密碼「password」

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix


#修改「zabbix_server.conf」驗證「mariadb」密碼

vi /etc/zabbix/zabbix_server.conf

DBPassword=password



#配置「zabbix.conf」修改「時區」

vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf

php_value[date.timezone] = Asia/Shanghai


#启动相关服务,并配置开机自动启动

systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm

systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm


#登入「zabbix」進入「導引配置」==

http://IP/zabbix/setup.php


#配置完成最後遇到此問題==

1. 下載「Download the configuration file」

2. 放到「/etc/zabbix/web/」底下即可。


2021年5月18日 星期二

S小魚仔S Sangfor VPN 與 H3C SecPath V7 搭建 IP SEC VPN

 因為工作關係需要對接「Sangfor VPN」與「H3C SecPath」做 IP SEC VPN ( Site To Site ) 這邊會簡易做一個拓譜環境。

PS. 注意 H3C SecPath WEB UI 操作 IP SEC VPN 問題非常多推薦使用「指令」方式配置 ( WEB UI 不支持 IKE V2 配置 ),本環境採用「IKE V1」配置指令。

簡易拓譜環境


檢查「Sangfor VPN」配置

一. 第一階段 ( IKE Version 1 )


二.  第二阶段 - 入站策略 (對端內網)


三. 第二阶段 - 出站策略 (本地端內網)




四. 安全选项 ( 第二阶段 IPSec 参数 )

配置「H3C SecPath」(指令方式)
PS. 這邊只會講「IP SEC VPN」配置並不會講「策略」應該如何放行這是您自己應該學習的內功。

## Proposal configuration For IKE Version 1 ##
ike proposal 200
authentication-algorithm sha256
encryption-algorithm aes-cbc-256
authentication-method pre-share
dh group5
sa duration 86400
quit

## Keychain configuration For IKE Version 1 ##
ike keychain sangfor_key
pre-shared-key address 193.55.77.2 255.255.255.255 key simple landy
quit

## Profile configuration For IKE Version 1 ##
ike profile sangfor_profile
keychain sangfor_key
local-identity address 193.55.77.1
PS. 若您的「IP SEC VPN」採用「旁掛」透過「Firewall」映射, 就必須採用 (野蠻模式) aggressive」。
PS. 若您的「IP SEC VPN」直接是在「防火牆」配置請採用 (主模式)。
exchange-mode aggressive
match remote identity address 193.55.77.2 255.255.255.255
match local address 193.55.77.1
proposal 200
quit

## ACL Configuration of Customer VPN ##
acl advanced 3111
    rule 10 permit ip source 172.30.0.0 0.0.0.255 destination 172.16.0.0 0.0.0.255

## Transform Set For IPSec ## ( Sangfor 安全选项 )
ipsec transform-set ipsec-sangfor
encapsulation-mode tunnel
protocol esp
esp authentication-algorithm sha1
esp encryption-algorithm aes-cbc-128
pfs dh-group5
quit

## Policy configuration For IPSec ##
PS. 建立連結「策略名稱」為VPN」優先等級「1
ipsec policy vpn 1 isakmp
transform-set ipsec-sangfor
security acl 3111
local-address 193.55.77.1
    remote-address 193.55.77.2
    ike-profile sangfor_profile
    sa duration time-based 3600
#保證「數據」有流量,如果沒有該指令「兩邊沒有數據」就會斷
sa trigger-mode auto
quit

## Apply IPsec Policy  to Outbound Interface ##

PS. 綁定物理「出接口」

interface GigabitEthernet1/0/3

tcp mss 1379

PS. 引用策略名稱為「VPN

ipsec apply policy vpn

quit


## 配置雙方「內網」不做「NAT」數據轉換 ##

object-group ip address h3c_lan

0 network subnet 172.30.0.0 255.255.255.0

object-group ip address sangfor_lan

0 network subnet 172.16.0.0 255.255.255.0


nat policy

rule name VPN_NO_NAT

source-ip h3c_lan

destination-ip sangfor_lan

outbound-interface GigabitEthernet1/0/3

action no-nat


# 檢查「IP SEC VPN」協議是/否協商成功 ##

display ikev sa


PS. 如果「H3C Firewall」同時有「連結」兩組「IP SEC VPN Site」,千萬要注意「名稱要依樣」但「優先級」要分開,這是「H3C Firewall」自身設備「BUG」。


2021年2月18日 星期四

S小魚仔S 華為 eNSP 模擬器 配置 「USG」( Firewall ) 與「AC」( WI-FI Controller)

 因為工作需要索性測試「eNSP」安裝「Workstation 16 Pro」測試這邊有幾點需要注意

1.「VM」請安裝「Windows 7

2. 虛擬機網路配置請採用「橋接」( Bridged ) 不然做實驗會遇到很多奇怪問題。

以下是「魚仔」使用的「eNSP」版本


首先我們先配置「eNSP」的「雲連結」配置這個主要目的是要讓「生產環境」與 eNSP「網路」做連通這樣後面做實驗才方便。

#=== 配置「USG」( Firewall ) ===
PS. Default Console 帳號: admin 密碼: Admin@123
PS. GigabitEthernet 0/0/0 是 Management Port
登入「USG」輸入「Console」帳號 密碼 會要求修改「新密碼


system-view
interface GigabitEthernet0/0/0
 undo shutdown
 ip binding vpn-instance default
# 生產環境「IP」地址
 ip address 192.168.2.111 255.255.255.0
#允許「啟用」所有「服務」 
service-manage all permit 
alias GE0/METH

輸入「https://IP:8443」順利登入「USG」防火牆 密碼就是在「Console」修改過的「密碼

https://192.168.2.111:8443/


#=== 配置「AC」( WI-FI Controller ) ===
PS. 原理大同小異

system-view
#配置「vlan」1 「interface」地址
interface Vlanif 1
ip address 192.168.2.112 255.255.255.0

#啟用「http」登入「服務」
http server enable 

#配置「aaa」修改「admin」登入「密碼」
aaa
#取消「密碼複雜度」
undo local-aaa-user password policy administrator
#配置「admin」pwd
local-user admin password irreversible-cipher 2021##$$

#WEB 登入
PS. 帳號: admin 密碼: 2021##$$
http://192.168.2.112