在 Linux 上安裝 DHCP 伺服器

我時常用 Linux 系統當作路由器,理由很簡單,因為虛擬機需要。 但想了想,既然都這樣做了,何不寫下部落格呢? 那麼… 開始安裝吧! 安裝 isc-dhcp-server 首先,我們需要先安裝一個套件,名為 isc-dhcp-server sudo apt install isc-dhcp-server 設置 DHCP Server 安裝完成後,我們需要編輯設定檔 /etc/dhcp/dhcpd.conf 範例大概像這樣 option domain-name "network.steveyi.net"; # 網域名稱 option domain-name-servers 8.8.8.8; # DNS Server default-lease-time 600; # 預設租賃時間 max-lease-time 3600; # 最大租賃時間 authoritative; # 網段,這邊分配 /24 使用 subnet 10.121.210.0 netmask 255.255.255.0 { range 10.121.210.1 10.121.210.253; option subnet-mask 255.255.255.0; option routers 10.121.210.254; } 接著,我們需要編輯發 DHCP 包的網卡 /etc/default/isc-dhcp-server 最後,輸入 service isc-dhcp-server restart 這樣就完成囉~

April 11, 2021 · SteveYi

將任何 Tweet 置頂到自己的 Twitter 上

在今天,我滑 Twitter 時,發現了一篇有趣的推文… 於是我馬上就跟 @edisonlee55 分享這個趣事 很明顯的發現,這個人將別人的推文轉推過來,並置頂在自己的個人頁面 這看似很正常,但事實上「我們只能置頂自己發的推文」 當我們點擊我們 retweet 的推文,我們沒有發現「置頂推文」的選項 那麼… 當然要一點偏方了! 跟 @edisonlee55 進行快速的討論後,我們開始了實驗 首先,我們將瀏覽器的開發者工具打開 理論上,點擊右鍵就可以看見了! 接著,我們先進入 Network 的地方 在對我們想要進行 pin 的推文按個愛心 好那,我們看到了一個 HTTP POST 到 create.json 我們也看到了一個 “id”,這個 ID 則是 Tweet 的 ID。先將他複製下來,等等會用到 接著,我們還需要複製 Cookie, x-csrf-token, Bearer Token(Authorization) 等值,我們可以在 Header 上看到 注意!請記得要保存好,不要隨意洩露這些值 接著,我們打開 Postman,選擇 POST URL 則為https://twitter.com/i/api/1.1/account/pin_tweet.json?tweet_mode=extended&id=<id> 將 Header 與 Authorization 都設定好了後,我們點擊 Send 我在第一次測試的時候,因為我沒有先 retweet 推文,所以系統 return 這個給我 完成 retweet 後,我們再執行一次 POST。成功啦! 接著,我們打開網站,刷新頁面。 果然看到成功 pin 起來了

April 7, 2021 · SteveYi

在 iptables 上設定 NAT

不久之前,小易將家裡的一台電腦裝上了 Ubuntu 20.04,並把它當成了軟路由在使用。 但小易發現了一件事情,就是電腦沒辦法上網RRR! 我們透過 mtr 追蹤路由後發現… 路由送到 Gateway 就出不去了,於是我們在路由器上抓包發現 我們的內部 IP 發給 ISP 了。但沒有回程。 如果 ISP 沒有設定好的話,就容易導致 IP Spoofing。 所以我們必須要在這邊設定好封包轉換(NAT),才可以上網! 在 iptables 上的指令為這樣(注意:eth1 是公網網卡名稱) iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE 另外,如果只想允許某段網段轉換為 NAT,則可以寫成 iptables -t nat -A POSTROUTING -s 10.121.210.0/24 -o eth1 -j MASQUERADE

March 8, 2021 · SteveYi

使用 checkm8 Activation Lock 免費版,繞過 iOS 啟用鎖定

作者:蘿蔔 本文章同步發佈於「蘿蔔ㄉ部落格」 [注意] 請勿用於商業或是非法用途。 這個軟體不是筆者所撰寫,如果使用上產生爭議,筆者恕不負責。 繞過啟用鎖定需要使用到Mac電腦。 筆者使用的是自己的設備和自己的帳號做測試。(iPhone 7 Plus, iOS 14.3) 有時候因為某些原因,將iPhone 重置或更新時沒有關閉「尋找」,重新設定時會被要求Apple ID密碼來解除啟用鎖定,忘記Apple ID的密碼的話iPhone只能當作零件機或是一塊無用的磚頭。因此我們可能會需要繞過這道鎖定,至少還能當作遊戲機或是隨身聽使用。 筆者寫這篇文章時最新的iOS版本是iOS 14.4,官方標示支援的版本從12.4~14.4。< 官方標示支援的設備是: iPhone SE (第一代) iPhone 6 iPhone 6S iPhone 7, 7 Plus iPhone 8, 8 Plus iPhone X iPad Air (1, 2) iPad Mini (2, 3, 4) iPad (5, 6, 7) iPad Pro (1, 2) iPad Pro (9.7 10.5 in.) [注意] 部分功能在繞過啟用鎖定後會暫時失效 (包括但不限於下列): 行動通訊(無法撥打或接聽電話,也無法使用行動數據上網) iCloud雲端同步功能(也包含「接續互通」等需要帳號的功能) 不建議安裝軟體更新 重開機(會跳出啟用鎖定頁面,要重新進行操作) 如果繞過後想起密碼,可以重開機,在啟用鎖定的地方輸入密碼,以上限制會被立馬破除 可以使用的功能(包括但不限於下列): Wi-Fi上網 藍芽功能 (AirPods可用) iTunes Store...

March 4, 2021 · 蘿蔔

將部落格從 WordPress 轉移到 Hugo

從 2018 年註冊了第一個網域 steveyigame.com 後,我也嘗試架設了第一個 WordPress 部落格。 當時也正好學習使用 Linux 系統,順帶了解到 雲端硬碟(像是 Google Drive) 及 檔案伺服器 的差異 為什麼要換成 Hugo?WordPress 不好嗎? 我認為沒有好或不好這件事,一切憑個人感覺。 但由於逐漸學習到後端,會覺得說「如果可以靜態網頁就靜態,不要讓網站伺服器處理東西」。 PS. 其實 WordPress 也可以優化到很好,但我純粹不想優化 XD。 另外,由於 WordPress 是動態網頁,且必須要與資料庫進行連接。一般用戶訪問網站時,網站會先到資料庫抓資料處理後再回應給用戶。 我不想維護資料庫 R 效能對比 我們來看看更換前跟更換後的具體差別好了。 WordPress 載入速度 Hugo 載入速度 很明顯的可以看到,WordPress 網站初次載入需要花費 4.11 秒,而 Hugo 網站只需 1.41 秒,差異非常大。 關於 Hugo 由於 Hugo 是靜態網頁,所以想到可以將其部署在 GitHub,並搭配 GitHub Pages 使用。 於是我開了兩個 Repositories,一個用來放網站的原始檔案。 當然,如果你想要開在同一個 Repo 下,利用不同的 branch 也是可以的! Hugo 原始碼 產生後的網站原始碼 安裝 Hugo 首先,我們先在電腦中裝好 Hugo Hugo 官方提供了以下系統預先編譯版,這代表這些系統不需要自行編譯!...

February 10, 2021 · SteveYi

透過 ASN 指定網路出口

在去年一月時,我申請到了自己的第一個 ASN - AS209557,也做了很多酷實驗! 今天,我改造了我家的路由,並可以指定 ASN 走哪條路出去 首先,先說一下我家的路由器資訊 Ubuntu 20.04 軟路由 Bird2 (Internet Routing Daemon) 網路環境(包括 VPN 隧道) 中華電信 PPPoe 非固定制 IP 100/40M 到 TANet 的 WireGuard Tunnel 到 GCP 的 WireGuard Tunnel 到 Vultr 的 WireGuard Tunnel 那主要做法是要將 AS1659 及 AS6939 的網走 TANet AS60614 走 Vultr 其餘的走中華電信 並全部開啟 NAT 整個家中內網處於一個 VRF (vrf_HOME) 中 PS.但下方文章會直接收入 Kernel 安裝 bird2 首先,我們要先安裝 bird2,這是一個路由進程軟體。 可以處理 BGP, OSPF, ISIS, Static Route… 等等的路由 Debian & Ubuntu:...

February 6, 2021 · SteveYi

成為 MANRS 參與者!

在去年年底時,我送出了 SteveYi Network Service 的 MANRS 申請 今年年初時,我們通過了審核。正式成為 MANRS 的參與者! 我們的會員介紹在這裏 https://www.manrs.org/isps/participants/entry/1484/ 那麼,我們就順便來說說 我們如何實施 MANRS 政策 MANRS 主要有四個政策,分別是這些 避免廣播錯誤的路由 阻止錯誤偽造的IP流量 促進網絡運營商之間的溝通與協調 促進驗證在網際網路內的路由訊息 那我們是如何做到這些呢? 首先,我們在我們的核心路由器上阻斷了 RFC1918 定義的私網 IP 位置流量,來自這些 IP位置 的流量並不會往公網發送 其次,我們遵守 RFC 8212,在沒有明確的路由策略下,我們 不會廣播沒有使用的網段。 並且,我們會從我們的 AS-STEVEYI 中產生對應的 IRR 紀錄,並過濾掉 不屬於我們的路由 我們也會過濾與我們建立私人對等的對等方路由,我們會將所有對等方的 AS-SET 或 ASN 加進我們的 AS-STEVEYI-A 中,並自動產生對應的 IRR 紀錄,過濾無效的路由 我們也歡迎對我們的過濾系統有興趣的網路愛好者/工程師,可以發信至 info_at_steveyi_dot_net 與我們聯繫!

January 25, 2021 · SteveYi

透過 BGP 與朋友組成內網

嗨!好久不見! 在 2020 初時,我拿到了第一個 ASN號碼 - AS209557 我也使用了 RFC 1918 所定義的 IP Address ,與我一些朋友透過 BGP 及 Internet 隧道 組成了一個大內網 那麼,讓我們開始吧! 首先,我們使用 Ubuntu 20.04 來建立隧道,並與其他人建立 BGP 對等 那通常,我都是使用 GRE, SIT 或是 WireGuard 其中,GRE 或 SIT 隧道是屬於非加密隧道,在公網上是可以查看到其封包的。若要加密需要配上 IPsec WireGuard 則是在 2019 年 9 月 推出的點對點隧道,在 2020 年 3 月 已列入 Linux 內核 (其實更早就在 Beta 了,但小易用 WireGuard 時已經是屬於穩定版了) 那接著,是我與我朋友的對等信息 PS. 部分 IP Address 被基於安全因素,可能與實際使用的 IP Address 不同 我的資料 公網 IP Address: 59.126.1.1 隧道內 IP Address: 10....

January 24, 2021 · SteveYi

Google 廣告 – 原來你在 Google 眼中的形象是這樣的…

原本這篇去年12月就要發布的,但剛好遇到伺服器維護就一直沒發XD 有一天筆者在修改Google帳戶資料時,意外發現了「廣告設定」這個地方點開有還滿多資訊的。 資料的來源包括登入狀態下的Google和Youtube各種紀錄,以及Google帳號申請時填寫的基本資料 可以推測出興趣、年齡、家庭收入、感情狀況、雇主等,甚至是小孩數量 不過推測出來的東西也會時常變動,也不是完全準確,不介意的話可以當笑話看看就好🤣 (筆者曾經在三天內看到自己的收入出現「中間偏高、中間偏低、高、低」的極端起伏) 如果真的不喜歡被Google看透的話,上面的廣告個人化開關可以關掉,或是使用無痕模式進行搜尋 Google對筆者的認識,看看參考就好,反正也不是完全準確🤣 如果系統猜測的項目不喜歡,也可以隨時按「停用」,也會把該項目丟到「已關閉的項目」裡面,在登入情況下就再也不會看到囉~ 已關閉的項目大致上會像下圖這樣,不經意地按掉廣告,或是在各種地方按下「不感興趣」的東西都會在這邊 之前按掉的廣告的冰山一角🤣 連結放在下方,歡迎大家有空去玩看看吧 https://adssettings.google.com

January 19, 2021 · 蘿蔔

在 Linux 環境下無腦串接 Google 雲端硬碟

此篇教學使用的是 google-drive-ocamlfuse 這個軟體,筆者使用的環境是基於Ubuntu的Zorin OS 15.2系統作為示範。 首先需要先加入軟體源,請在終端機輸入(可以直接把這一串直接拷貝貼上) sudo add-apt-repository ppa:alessandro-strada/ppa sudo apt-get update sudo apt-get install google-drive-ocamlfuse 註:安裝過程可能需要輸入密碼,有些Linux發行版看不到輸入的密碼,打完按下Return就會繼續 安裝完成後,請在終端機輸入這個指令來啟動掛載的程式 google-drive-ocamlfuse 第一次運行的時候它會跳出瀏覽器視窗給用戶登入並選擇帳號,要求權限時請選擇同意。 成功之後會會跳轉到這個頁面(如下圖),並且在終端機看到這個訊息: Access token retrieved correctly. 接下來請輸入這串指令,在Home Directory建立一個掛載用的檔案夾 mkdir ~/GoogleDrive 再接下來輸入這串指令就會完成掛載囉! google-drive-ocamlfuse ~/GoogleDrive 掛載的位置會在Home Directory 底下的Google Drive資料夾 如果想要退出掛載的話,可以在終端機使用以下指令 fusermount -u ~/GoogleDrive 更多指令如果想要查詢看看,可以終端機輸入這個指令來做查詢 google-drive-ocamlfuse –help

January 19, 2021 · 蘿蔔