首先要確認 DNS 託管在 lego 有支援的DNS 廠商 可以到 github 去看,支援的廠商很多!
Category: 筆記 rss
Posts
不久前買了一台對岸斐訊出的 N1 路由器,這台的規格很強,又有大神破解了 boot loader
所以可以被拿來安裝 openwrt/Armbian 之類的系統做其他的應用
因為openwrt 玩很多了,所以這次想說來試試看 Armbian
一開始只弄出了based on ubuntu bionic 的版本,因為覺得有點舊了,所以一直想要換成 ubuntu focal
就在某次亂搞之後,N1 他變磚了…開機完全沒有畫面,只好開始研究怎麼救磚了
最近在逐步的把舊有的VPN Router 汰換掉,改用wireguard 來作 full mesh site-to-site VPN
不過這是另外的故事了…
在把wireguard VPN 都搞定之後,才發現原來 openwrt 的 uhttpd 要加上 letsencrypt 的免費憑證有點難搞
網路上大部分都介紹用 acme.sh ,我是有測試出來啦
但是跟網路上的方法不太一樣了,新增了滿多步驟的,覺得很麻煩
想到向來愛用的 leproxy ,既然是 golang 開發的,又是open source
就拿來compile 給openwrt router 用用看
想不到還真的可以, golang 真是棒!
不過也還是要順手改一些openwrt 東西才行
還是簡單作個筆記好了
自從用了 leproxy 之後,其實就很少在管ssl 憑證的問題,反正leproxy 都會自動處理好
不過LAN裡面的機器越來越多,每次看到警告說沒有加密的訊息就有點不爽,之前用了很多方式去申請全域憑證,申請倒是還好,沒太多問題。但是一碰到要更新,就都無法自動,因為都會要求去修改DNS 的 TXT 或者是 CNAME 記錄。
一般來說,如果是其他DNS 供應商,大部分都會提供API,那就還好。 BUT !! (對,然生就是離不開這個BUT …) 我們的域名是老闆在 iwantmyname 買的,一開始是給 webfaction 代管,後來webfaction 被godaddy 買走,就轉到 namecheap 去(我也不知道為什麼不在godaddy 就好)。
最近又開始在亂搞postgresql ,一直想要玩玩看GPU運算的威力,大概一年多前,有測試了 ubuntu 18.04 + postgresql + pg_strom ,可是當時因為pg_strom 不支援當時手邊的顯示卡,只好作罷。
Breaks here
之前用caddy 作為反向代理,其中一個優勢就是caddy 會自動處理Letsencrypt 憑證的問題
也不用煩惱怎麼去更新一堆有的沒的
不過,實際應用上,還是偶爾會拿這些憑證檔案來用的狀況
雖然可以從caddy 上面取得這些檔案
但是基本上這些檔案都是綁定一個特定的hostname
可是我想要有一個憑證,可以給同網域底下的機器用 ( Wildcard certificates )
手機上的廣告越來越討厭了
但是用手機看頁面、影片的機會越來越高
所以一直想看看有沒有什麼方式可以解決這個問題
不只可以用在safari 上,連APP 裡面的廣告最好都能夠擋掉
在github上面看到有個專案是 wireguard + pihole
滿有趣的,就來研究一下
最近在玩ansible + openwrt + wireguard
ansible 腳本寫好之後,可以把config 佈署到 openwrt 上
當然前提是最好用同樣的機器,不同的機器在config 上會有一些差異
但是這些差異常常就會造成無法連線、無法使用的狀況
BTW 我是用 ubiquiti 的 edgerouter X 來做
都弄好之後,就想說來跑個iperf3 測試一下連線速度
也好和之前做的 IPSEC 比較一下
結果很奇怪的是,明明一樣的機器、一樣用ansible 跑出來的config
但是有一台edgerouter X 的VPN 連接速度就是特別慢
而且速度都剛好卡在 99.X Mb 左右
就讓我很納悶了…
上禮拜某天在開會的時候,LINE不斷傳來訊息
不過因為我向來開會都很認真(驕傲,所以都沒看,接著就變成來電了
看來大概有啥事發生
不過畢竟不是正職的工作,就先放著吧
後來變成連學長都直接打來告訴我,某間公司的伺服器出事了,客戶找不到我
叫我趕快連進去看
是說,啊我又沒跟人家簽維護,趕什麼趕…
總之,開完會後就了解一下狀況
工作用的電腦,昨天終於難得的reboot了(uptime 看了一下,大概是三百多天)
結果重開機之後,發現原本在打tunnel 連 ptt 的 wireguard VPN 掛掉了
手動下指令也啟動不了
查了一下發現是 ubuntu 18.04 kernel 4.15.0-106 的包
看來就連kernel 最好都不要自動升級…
這是之前做過的task,client透過pxe開機後,會自動安裝ubuntu 14.04
在安裝完成後,會發出郵件通知管理者已經安裝完成
可是某次ansible 更新之後,反而沒辦法安裝完成
這次順手修改一下,同時更新了ansible 的template
ubuntu 18.04 的 DNS 設定很煩
系統預設會用NetworkManager 去管理
然後NetworkManager 又很「靈活」的許多種修改 /etc/resolv.conf 的方式
之前都是很粗暴的停用 NetworkManager
但是用筆電的user 又需要用 NetworkManager 來管理無線網路
今天找了一下文件,讓NetworkManager 可以執行,卻不會去異動 /etc/resolv.conf
早上忘了要幹什麼,去看到手上的自然人憑證到期日是今年的 4/17
想說快到期了,看看能不能線上申請展延
結果辦公室沒有Linux 可以用的讀卡機
OOXX 咧,我們可是號稱全Linux 環境捏!
結果居然沒有對應的硬體!?
於是馬上敗了一台據說有支援 Linux 的 IT 850UM 讀卡機!
前幾天修復了因為intel cpu bug 導致無法使用的 synology DS415+
詳情請看 https://h.cowbay.org/post/first-try-synology-ha/
今天趁尾牙前夕,手邊沒啥要緊事
就來玩玩看promox 加上 synology high availability 再加上 NFS share 的環境
上禮拜,原本擔任 proxmox cluster 的主要 storage 的 ds415+ 掛點了
原因應該就是之前的 intel c2000 series cpu 的 bug
只是不知道為什麼這台兩三年來都沒有關機的NAS
比其他三台多撐了那麼久 (已經有兩台送修回來,一台也是同樣症狀,被放在一邊)
趁著這次機會,看看網路上說的換電阻大法有沒有用!
如果有用,就拿這兩台來玩玩 synology high availability !
昨天老闆在slack 上面問說現在的幾台 DB Server 有沒有跑過 pgbench
分數大概如何,想要跟他的筆電做個比較
之前有跑過幾次,這次就順便測試一下不同的硬體配置、以及不同的軟體版本
對於pgbench 跑分會有多大的影響
今天在寫一支客製化 firefox 的playbook
因為firefox 會給每個user 建立一個由亂數字串組成的default profile
所以每個user的 default profile 都不同
也因此在用register處理的時候,碰到了一些問題
正確來說,我不曉得到底怎麼「稱呼」這個 forwardx11 / forwardagent
總之就是在寫一隻ansible playbook
目的是用來安裝、設定 firefox
包含安裝 firefox addon
但是一開始在執行的時候,碰到了一些錯誤
老闆提到想要把新系統的 postgresql 資料庫都撈到記憶體裡面
但是否決了我提出的ramdisk 作法(因為當機的話,資料就沒了)
在找資料的時候,發現了這個postgresql 的 pg_prewarm extension
好像有點意思?就來測試看看吧!
只是目前還不知道該怎麼解讀測試的數據就是了…
幹!林北真的不是 DBA 啦 =.=
剛剛在跑一個修改過的playbook,卻發現一個詭異的狀況
在用template產生檔案之前,爲了避免錯誤,所以我先用 file module 去建立目錄
怪就怪在,建立目錄的task沒錯,但是要產生檔案時,卻出現了目的目錄不存在的錯誤
這幾天在ansible 寫了一份新的playbook給developer 用
然後user反映說,希望能在ubuntu 18.04 內建的dock 裏面新增一個gnome-terminal的icon
我才發現原來之前的寫法不能用在 ubuntu 18.04 上
只好又弄了一份出來
最近在準備升級client 的作業系統,從 ubuntu 14.04 準備升級到 18.04 或明年的 20.04
因為公司政策的關係,所以現在要連接internet ,需要申請
然後 user 再去系統的proxy 設定新增一個 PAC 檔
但是這個動作其實是去叫NetworkManager 這個服務
可是在18.04 上,我會把這個服務關掉,因為他會干擾我的DNS設定
所以想試試看有沒有辦法不使用 NetworkManager 服務
又能夠在 user level 修改 proxy 參數
就想到了用 dconf 來做
最近上班閒得發慌,沒事就上 github 找看看有沒有什麼好玩的專案
就不小心發現了這個 streisand
https://github.com/StreisandEffect/streisand
玩了一下,發現這根本就是終極的VPN Server solution ..
最近都在弄postgresql
備份、還原測試得差不多了,就等著看到時候要用什麼方式
前幾天看到 pg_auto_failover 這個postgresql 的extension
https://github.com/citusdata/pg_auto_failover
感覺挺不錯的,看起來設定很簡單,雖然之前已經測試了 keepalived 做 HA
不過,反正當作練功嘛,多測試一套也不錯!
前幾天在淘寶上買了個 SSK 的USB 3.1 Gen2 (type-c) NVME SSD 外接盒 手邊也剛好有一條多的intel 600p nvme ssd 就順手來做個比較 目標是看看有沒有可能直接用外接的SSD來跑postgresql
因為老闆說要試試看用GPU 來跑postgresql 威力
手邊剛好有一張 geforce gt 720
一開始沒想太多,看到有這張卡的驅動程式,然後CUDA也有支援
就直接從桌機拔下來,接去LAB Server ,然後就開始一連串的難關了…
最近一直在玩 wireguard ,先前把各個分公司和總部的VPN 改用 wireguard 建立
想說再打個VPN tunnel 來當跳板連 ptt 好了
因為wireguard 建立很簡單,而且又可以指定想要繞出去的路由,不會影響原本的網路環境
本來是在vultr 的VPS上面建立這個tunnel
但是那台VPS連去ptt 很頓,卡卡的
所以改用google cloud platform 的free tier 來做
反正只是拿來當跳板,不會有什麼流量、運算產生,可以一直保持免費的狀態
因為實在受夠了現在用的 openwrt + strongswan 建立 IPSec VPN
雖然說其實沒有什麼不好,但是畢竟不是我建立的,而當初的文件也都不見了
完全沒辦法了解當時設計的邏輯,造成後續debug 困難
可以想像一下,一台VPN router ping 不到remote、ping不到internet、甚至ping不到自己 是要怎麼debug !?(翻桌
之前買了兩台edgerouter X 拿來玩了一下 wireguard,感覺還不錯,不過只有測試到點對點
這次試試看躲在gateway後面,看看能不能建立多點的VPN環境
[筆記] 在edgerouter上用wireguard 建立site to site VPN / Site to Site Vpn Using Wireguard in Two Edgerouters
之前總部和分公司之間 是用buffalo 的小AP 灌 openwrt
然後用strongswan 來打 IPSEC site to site VPN
config 看起來不是很難 (只是看起來)
但是實際上已經找不到當初的文件
所以要維護很困難(光那些RSA KEY 就不知道為何、如何產生)
後來採購了兩台edgerouter X 做測試
也用openvpn 成功的建立了 site to site VPN
本來想說 openvpn 已經夠簡單了
今天看到文章說用wireguard 可以更簡單
於是研究了一下,發現還真的很簡單!
最近有個任務,需要大量安裝client
想用PXE來處理,只要user開機按F12(acer 桌機) 選擇PXE Boot
然後選擇OS版本,就可以自動進行安裝
安裝完成後,會自動重新開機,接著就用ansible來做user環境設定
PXE的部份本來是沒有什麼問題,自動安裝系統的部份都做好了
可是因為這次的量比較多,想說讓每一台在完成PXE安裝後的第一次重開機
就送出一封郵件來通知我,說已經完成安裝,可以執行ansible 了
看似很簡單的一件事情,卻搞了我兩天….
之前在LAN/windows環境下,一直都是用ultravnc/winvnc/tigervnc之類的VNC軟體
但是如果要過 internet ,就會碰到各種開port的問題
在這種環境下,就有了當時 teamviewer 的橫空出世
解決了開PORT的問題,讓被控端(通常是資訊技術相對弱勢,需要接受幫助的一方)不需要懂太多
只要下載teamviewer被控端,開啟後報ID 給協助者就好了
最近因為一直碰到硬碟故障的問題,算起來那一批同時購買的5X顆 seagate 2T硬碟,已經有一半以上故障返修了….
然後又因為一直沒有添購新的硬碟,只能用這些快過保/已過保的撐著
所以最近不斷的在更換機器內的硬碟,而且還沒有熱插拔!
也導致原本負責處理盤點資產的同事困擾,因為跟手邊的紀錄已經對不起來了
然後就變成要對資產的時候,需要一台一台登入,然後去下不同的指令,取得想要的硬體資訊,超級麻煩的!
今天發生一件有點詭異的事情,本來應該要經過某個指令才會產生的檔案
居然不知為何自己產生了,在我記憶中沒有去執行過那個指令
翻了一下 bash_history ,裡面也只有下過哪些指令,沒有紀錄時間,完全沒有參考價值(攤手)
所以翻了一下網路,至少把這兩台主要跑ansible的機器的log功能補上紀錄所有指令以及時間的部份
今天把其中一台proxmox 加上10G 光纖網卡,準備和另一台proxmox 組成10G 環境進行測試
想說把本機的zpool 拆掉,重新建立一個raid0 的空間來做clone/migrate
可是一直出現device busy的錯誤訊息
最近要開始測試client安裝 ubuntu 18.04 的 ansible playbook
因為要不斷的修正,所以想到一直有在自己電腦上執行的timeshift這個軟體
可以很簡單快速的備份、恢復系統狀態
可是不知道為什麼,在ubuntu 18.04 上安裝就是會發生錯誤….
最近在弄一台機器,想要把ubuntu 18.04 安裝在software raid上
因為新開的機器大部分都是在proxmox上,所以很少碰實體機器了
結果在安裝過程中,做raid碰到一些問題,來紀錄一下
這兩天在弄兩台Freenas ,準備當作Proxmox 的Storage & Server Backup
因為伺服器的限制,只能接六個SATA,我接了六個2T的硬碟做raid10
然後把Freenas 安裝在隨身碟上
不過會一直出現Smartd failed to start 的錯誤訊息
因為工作的關係,現在很多時間都花在VIM的操作上
所以之前花了滿多時間,調整出一個適合自己的VIM環境
原本的作法是把這個設定好的環境,丟到自己建立的gitea 上面
然後每到一台新的機器,就要去clone 下來
想做一個 10G 的 LAB 環境出來已經很久了。
只是礙於10G RJ45的卡太貴了,然後光纖的種類又太複雜
如果直接在淘寶購買,很怕會買錯(什麼LC/FC LC/LC 多模單模 單芯雙芯 SFP/SFP+ 又是什麼光模塊的一大堆規格)
所以一直沒有付諸行動。
硬體的工作很久沒碰了,剛好在蝦皮看到有個賣家在賣 mellanox 的X2網卡,以在台灣的價格來說,算很便宜的 (550)
聊了一下,跟他請教了關於線材、光纖模塊的問題,回答也都很快很到位
就直接下訂了兩張網卡、兩個光纖模塊、一條LC/LC 光纖線
就是到貨有點久,等了兩個禮拜左右,一直到昨天東西才寄到
今天就花了點時間測試一下
在上一篇 Ansible how to use ‘list’ in yaml file
有提到怎麼用 with_items / set_fact 來取得在yaml 檔案中的清單
不過就是有點醜
這幾天在玩ansible 時,碰到一個問題
假如我有個yaml檔作為資料來源,檔名是 abc.yml
大概長這樣
"teams": [
{
"chinese_name": "TEAM1",
"description": "TEAM1",
"gid": 10125,
"location": [
"hq"
],
"name": "aa",
"users": [
"chen",
"chou",
"huani",
"yey",
"wa"
]
},
{
"chinese_name": "TEAM2",
"description": "TEAM2",
"gid": 10126,
"location": [
"hq"
],
"name": "bb",
"users": [
"chhiao",
"chgc",
"chy",
"hsi",
"li",
"li",
"chgchi"
]
}
]
最近在測試metabase,記得幾個月前就有測試過
但是當時的界面和現在的樣子差很多,看樣子改版還滿勤勞的
所以這次改用docker來建立,根本五分鐘不到就建好了(挖鼻孔)
不過呢,很討厭的是,一進去就發現語系採用的是簡體中文
這是發生在一個夜黑風高的寂寥深夜….. ( What The FXXX … )
來到這個環境之後,有一個很詭異的狀況一直困擾著我
在每個分公司,都會有一台伺服器作為KVM Host
上面跑兩台VM,一台作為ansible controller (目前沒作用)
另一台作為這邊所謂的 “Build Server”
用途包含了DHCP Server / Proxy Server (squid3) / APT Proxy (squid-deb-proxy)
問題就發生在這台 Build Server 上…
最近在重新規劃前人留下的backup爛攤子 各個伺服器統一備份到一台backup storage 想說如果每天能夠看到backup storage的磁碟用量的話 就可以抓出備份空間成長速度、推估需要多大的磁碟空間 找了一些工具,結果發現 durep 這個 ubuntu 內建的工具 基本上可以滿足我的需求
Bookstack 是一套非常好用的線上"筆記"系統
他用圖書館/書本的概念,讓使用者可以建立自己的"圖書館"
同時在圖書館內建立不同的"書籍"
而且支援 Markdown 語法
其他的方式像是在nextcloud上編輯 md檔案(字體太小)
或者是boostnote(只能在本機)
都或多或少有點小缺點
Bookstack則是沒有這些問題,不過就是系統「大」了點…
不過還好有人做成docker的方式來啟動,大大的降低了建置的難度(其實也沒有很難啦,只是要裝個PHP、弄個DB而已)
公司內有幾台NAS,其中有一台用來放開發人員的postgresql dump file 之前都是主要的開發人員上傳到google drive,分享出來 ,然後其他人去抓回來
這樣子有個問題是,當server要存取這些檔案時,就沒辦法了,除非透過一些 3rd party的軟體 像是這篇
https://www.omgubuntu.co.uk/2017/04/mount-google-drive-ocamlfuse-linux
或者是這篇
https://www.maketecheasier.com/mount-google-drive-ubuntu/
但是手邊的伺服器,原則上除非有必要,不然都沒有開放internet 所以導致明明檔案就在那邊,但是要取得就是很麻煩