https://blog.cuidp.top/ 博客主页,目前刚建好,没什么数据

服务是 https://github.com/TryGhost/Ghost

现插件是https://github.com/xiaoluoboding/ghost-theme-kaldorei

网络"架构"

硬件

电信光猫(电信宽带带公网ip,443可访问,运行在路由模式,后续详说)

1 小米智能插座,控制树莓派强制重启用

2 树莓派 系统(Linux raspberrypi 4.9.41-v7+ #1023 SMP Tue Aug 8 16:00:15 BST 2017 armv7l)

软件

1 天翼网关(各运营可能不一样,用其他路由器的话,也不一样,功能真正用的就是一个远程重启)

工作环境如下

电信宽带(有公网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/ 可以签免费的证书,缺点是每三月续一次。

就动心思试试,官方文档说的很细

https://certbot.eff.org/docs/

就不啰嗦了,虽然有各种插件,但最终的认证方式有几种,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.。因为有这点保证,没有给raspberrypi设固定ip。

 这次raspberrypi断电太久,a.b.c.3的ip不再续租,ip池回去后,分给了其他新连的设备。

 raspberrypi启动了,但ip不是a.b.c.,光猫上配的指向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.,这是基于luci开发的,lua语言。

 以前博客有简单提过,http://www.cnblogs.com/zihunqingxin/p/4578855.html 不过这只是小插曲,个人写lua不是太多

其他 之前买过阿里的建站一年不到30块

就是给个运行环境,给个数据库,搭个web服务。

本来运行的好好的,不知是运行环境的要求,还是.cn域名的要求,某年某月突然提示备案,不然访问就报警

因为懒得备案,之后就一直丢那没管,直到域名网站双双过期,30块等于白花了。

其实我个人不是很喜欢用各种平台

1是不信任,个人倒是无所谓,如果一个商业公司,数据,代码都放在别人手里,不踏实。

2是任人宰割,往小的说,要备案这事,收钱的时候没说得备案才能访问,本来好好的,哪天个政策备案啥的,又得折腾。

3是受限,平台可能会为了推自个的某些收费服务,把云主机的功能阉割了一部分,然后让人花钱买,各种花式问题。

个人云主机 博客上线 家用宽带-树莓派2-certbot-docker 运行环境简介的更多相关文章

  1. cdcq的独立博客上线辣!-> http://cdcq.coding.me/blog/

    cdcq的独立博客上线辣!-> http://cdcq.coding.me/blog/ 这个博客会逐渐停更 独立博客被硬盘保护吃掉了,直到省选前独立博客应该不会再上线 (如果没进队就永远不会上线 ...

  2. 基于ECS搭建云上博客

    场景介绍 本文为您介绍如何基于ECS搭建云上博客. 背景知识 本场景主要涉及以下云产品和服务: 云服务器ECS 云服务器(Elastic Compute Service,简称ECS)是阿里云提供的性能 ...

  3. Typora+PicGo+阿里云写博客笔记

    Typora+PicGo+阿里云写博客笔记 选择这三个工具的理由 我一直有在使用typora使用mardown写作,毕竟typora很香,可以实时预览,非常丝滑. 配合上PicGo这个图床工具简直绝了 ...

  4. 基于ECS搭建云上博客(云小宝码上送祝福,免费抽iphone13任务详解)

    码上送祝福,带云小宝回家 做任务免费抽iphone13,还可得阿里云新春限量手办 日期:2021.12.27-2022.1.16 云小宝地址:https://developer.aliyun.com/ ...

  5. 【.NET Core项目实战-统一认证平台】基于jackcao博客使用VSCode开发及感悟One搭建开发环境

    原博客系列文章链接:https://www.cnblogs.com/jackcao/ 金焰的世界 感谢博主无私的奉献,感谢博主幼儿班的教学 基于jackcao博客使用VsCode开发及感悟One搭建开 ...

  6. SAAS云平台搭建札记: (二) Linux Ubutu下.Net Core整套运行环境的搭建

    最近做的项目,由于预算有限,公司决定不采购Windows服务器,而采购基于Linux的服务器. 一般的VPS服务器,如果使用Windows系统,那么Windows Server2012\2016安装好 ...

  7. 【网站搭建】搭建独立域名博客 -- 独立域名博客上线了 www.hanshuliang.com

    博客是安装在阿里云的服务器上. 小结 : -- 进入数据库命令 :mysql -uroot -p123456 ; -- 检查nginx配置语法 :.../nginx/sbin/nginx -t; -- ...

  8. 搭建独立域名博客 -- 独立域名博客上线了 www.hanshuliang.com

    博客是安装在阿里云的服务器上. 小结 : -- 进入数据库命令 :mysql -uroot -p123456 ; -- 检查nginx配置语法 :.../nginx/sbin/nginx -t; -- ...

  9. [置顶] 个人博客上线!欢迎来访~ http://onlyloveyd.cn/

    简介 Hexo + Github + 个人域名 构建静态博客系统. 构建方法 参考 https://yq.aliyun.com/articles/64953 个人博客网站 Cherish Androi ...

随机推荐

  1. Dijkstra与Floyd算法

    1. Dijkstra算法 1.1 定义概览 Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径.主要特点是以起始点为中心向外层层扩展,直到扩展到终点 ...

  2. 阿里云服务器下安装配置phpMyAdmin

    1.下载phpMyAdmin wget http://www.phpmyadmin.net/home_page/downloads.php 2.解压下载的文件 tar -zvxf phpMyAdmin ...

  3. win10开发环境下安装mongodb

    MongoDB 下载 https://www.mongodb.com/download-center/community 在win10系统安装mongodb需要vc++运行库,如果没有则会提示“无法启 ...

  4. 题解 P4171 【[JSOI2010]满汉全席】

    什么,tarjan?那是什么? 码量太大,我选择放弃 为什么不用dfs写2-sat呢?他会伤心的说 这题2-sat的过程大佬们已经讲得非常清楚了,我就略微提一下,主要讲dfs的原理 2_sat原理 我 ...

  5. 题解 P2981 【[USACO10FEB]奶牛在冰Cows on Ice】

    楼上的思路都是从一个石头找跳到另一个石头的路径,但其实这题可以对于上下左右四个方向分别做一个虚拟节点,然后只需要找虚拟节点左边的虚拟节点就行了 问题是:不会用set怎么办??? 其实可以发现用vect ...

  6. Cannot read property 'XXXX' of null/undifined

    这个问题可能的原因有很多 1.如果你的js直接写在自执行函数或者head标签内的script里面,那么可以检查一下你的代码有没有用到页面里的节点,因为这样写的代码在页面加载完成之前就会开始执行,如果有 ...

  7. docker可视化工具

    介绍两款Docker可视化工具 DockerUI(特点:轻量) 下载镜像 docker pull abh1nav/dockerui 启动容器 docker run -d --privileged -- ...

  8. 查看opencv-python编译信息

    python -c "import cv2; print(cv2.getBuildInformation())" General configuration for OpenCV ...

  9. 五、Shell脚本高级编程实战第五部

    一.条件表达式 在bash的各种流程控制结构中通常要进行各种测试,然后根据测试结果执行不同的操作.有时也和if结合,让我们方便判断. test: 1)判断文件是否存在:test -f  file 2) ...

  10. 使用spark

    更新说明 免密码登录 for f in `cat ~/machines`; do scp .ssh/id_dsa.pub $f:~/ ssh $f "cat id_dsa.pub >& ...