https://blog.cuidp.top/ 博客主頁,目前剛建好,沒什麼數據html
服務是 https://github.com/TryGhost/Ghostlinux
現插件是 https://github.com/xiaoluoboding/ghost-theme-kaldoreigit
網絡"架構"github
硬件web
電信光貓(電信寬帶帶公網ip,443可訪問,運行在路由模式,後續詳說)數據庫
1 小米智能插座,控制樹莓派強制重啓用瀏覽器
2 樹莓派 系統(Linux raspberrypi 4.9.41-v7+ #1023 SMP Tue Aug 8 16:00:15 BST 2017 armv7l)網絡
軟件架構
1 天翼網關(各運營可能不同,用其餘路由器的話,也不同,功能真正用的就是一個遠程重啓)app
工做環境以下
電信寬帶(有公網ip,但80端口被禁,國家政策都懂的)
樹莓派2 系統環境具體見 http://www.cnblogs.com/zihunqingxin/p/8638514.html
花生殼 域名1
阿里雲.top 域名2
我的手裏的其餘資源
1 國外某vps 用途都懂,不過這裏是另外的用途
其實樹莓派的部分web服務早就搭建好了,由於80被禁,訪問要求a.b.c:8090輸個端口,太不友好。
好在443沒禁用,自已籤個證書,用443,卻是能夠訪問,但自簽證書不被認可,瀏覽器訪問會報警,也很不友好。
解決的 惟一的辦法就是搞個不報警的證書,不過這種大多都很花錢買。
就僵在這了。
後來瞭解到 certbot https://certbot.eff.org/ 能夠籤免費的證書,缺點是每三月續一次。
就動心思試試,官方文檔說的很細
就不囉嗦了,雖然有各類插件,但最終的認證方式有幾種,dns, 80/443回訪,純ssl
碰到的問題是,我能在樹莓派上安裝certbot,但認證的時候這幾種方式都失敗(這時是用花生殼的域名*.io,還沒買阿里萬網的域名,不肯定是不是域名的問題)。
按理說純ssl應該成功的,或許是certbot的bug或許是樹莓派arm的環境比較特殊,反正也是通不過。
報錯
Client with the currently selected authenticator does not support any combination of challenges that will satisfy the CA
github上也有提問了
https://github.com/certbot/certbot/issues/5405
最終問題也沒有解決,我的沒精力在這上面耗過久,內心原本就預料到arm系統不會很順利,就再也不深究,放棄了在樹莓派上做認證的思路。
吃過飯後轉念一想certbot是對域名全部權的認證,它並不關心真正的ip是多少。
我把域名換個有80端口的機器(國外的vps),作完證書的認證。
再把這證書copy出來在沒80端口,但有443端口的(國內電信寬帶+樹莓派)布服務,這就不通了?立刻去試
家裏的網絡架構是
電信5g光貓(工做在路由模式,光貓自已路由,另外一種模式是網橋模式,光貓只當貓,下掛個路由器,路由器當路由)
下掛樹莓派2(純粹就是個微型linux主機,不當路由用)
如下可跳過
很多人會把樹莓派改爲路由器用,我沒把它當路由器用是由於它的網絡io太差,信號也不好,另外個緣由是如今的運營商,路由器都有自家開發的遠程控制app可用,很方便。
用樹莓派的話這些都用不上了,我我的多花些精力是小事,再說,萬一我哪一個操做失誤了,樹莓派啓不來或網絡出問題,家裏就完全斷網了。
家人徹底不懂,我又不可能跑回去修,叫運營商維護支持吧,就算把網連好了,他確定也把個人這套廢了,遠程再搭起來,更要多費工夫。
最主要的是,這網絡家人也在用,他們只會用app。用樹莓派當路由器,就個人需求而言,純粹費力不討好,沒事找事。
並且會少不少控制辦法,好比下面提的事故恢復,硬重啓pi,重啓網絡分ip。
花生殼的域名是綁在電信光貓上的,無法重指向。
因此買了阿里萬網的域名,就按以前說的做,一切順利,搭建完成。
記一次事故恢復,可跳過
有一次把raspberrypi關機過久,raspberrypi重啓(小米智能插座)後,服務怎麼都連不上,ssh都不行,覺得是花生殼域名的鍋(這域名常常出問題),但可ping通,仍是不能訪問。
硬件壞掉的可能性不大,我初步懷疑是家人以爲raspberrypi奇怪給我拔掉了。 最後登上 天翼網關app,查看在線設備,一看就發現了問題所在 raspberrypi 在線,可是ip變了 網絡的細節不細說,就說外在表現,dhcp池是先檢測到有線的設備,而後才檢測到無線的設備,ip段我設的是3-254。
那惟一的有線設備raspberrypi,重啓光貓後,必然分配的是a.b.c.3。由於有這點保證,沒有給raspberrypi設固定ip。
此次raspberrypi斷電過久,a.b.c.3的ip再也不續租,ip池回去後,分給了其餘新連的設備。
raspberrypi啓動了,但ip不是a.b.c.3,光貓上配的指向a.b.c.3的服務,天然都不可訪問。遠程重啓光貓,從新分配a.b.c.3的ip,服務就所有恢復。
重啓的用途就在這裏,沒有app控制的話,能夠查看192.168.1.1這種配置頁,有沒有一個代理訪問的設備,這須要有另一個公網ip,
經過這個ip走http代理,能夠遠程進入目標設備的192.168.1.1這個頁面,遠程從web控制路由器,做重啓操做。
另外我我的也開發過相似192.168.1.1的配置web,當時公司開發Openwrt的設備,人手不夠,反正是個web頁,我就去幫忙了開發了openwrt上的的192.168.1.1,這是基於luci開發的,lua語言。
之前博客有簡單提過,http://www.cnblogs.com/zihunqingxin/p/4578855.html 不過這只是小插曲,我的寫lua不是太多
其餘 以前買過阿里的建站一年不到30塊
就是給個運行環境,給個數據庫,搭個web服務。
原本運行的好好的,不知是運行環境的要求,仍是.cn域名的要求,某年某月忽然提示備案,否則訪問就報警
由於懶得備案,以後就一直丟那沒管,直到域名網站雙雙過時,30塊等於白花了。
其實我我的不是很喜歡用各類平臺
1是不信任,我的卻是無所謂,若是一個商業公司,數據,代碼都放在別人手裏,不踏實。
2是任人宰割,往小的說,要備案這事,收錢的時候沒說得備案才能訪問,原本好好的,哪天個政策備案啥的,又得折騰。
3是受限,平臺可能會爲了推自個的某些收費服務,把雲主機的功能閹割了一部分,而後讓人花錢買,各類花式問題。