服务器IP被ban学到的经验

最近服务器被ban了,然后连续几天晚上都在处理各种数据迁移。真把我累惨了,今天终于处理的差不多了,总结一下经验和教训:

  • 学会网络安全太重要了,要学会在网络上隐身。不过由于我在网络上留下了很多痕迹,想要隐身已经不太可能了,但是可以从现在开始 不泄漏更多隐私
  • 学会网络编程太重要了,必要时可以实现一些网络工具。我又不做坏事,但是也要学习先进技术呀!国内的搜索引擎都做成什么样了, 这是客观事实,不是崇洋媚外
  • 尽量不要自托管,使用SaaS,因此我把除博客主站之外的服务全关掉了,使用GitHub等第三方服务。代价是,数据在别人手上,但是 节省了太多的时间和精力。下次要是再被ban,我就直接带着博客换个机器就好了,不要处理备份什么的了
  • 不要开太多子站,迁移起来太痛苦,一个一个搞,实在是操碎了我的心
  • 尽量避免使用数据库,纯文本容易迁移。例如博客,没有使用数据库,所以是我所有子站里迁移最容易的一个,直接修改一下目标地址, 跑一下部署脚本即可
  • 如果一定要使用数据库,不应该使用大型数据库例如PG,而应该使用SQLite,主要原因还是方便同步和方便备份
  • 如果预算比较充足,应该把博客和网络工具分开部署,这样可以最小化损失
  • 应该使用CDN,IP被ban之后,借助CDN,博客主站仍然可以访问,而服务商不敢随便ban CDN。此处推荐Cloudflare,棒棒哒!
  • 有镜像备份,即使主站挂了,仍然能够在它处可以访问,例如 https://jiajunhuang.com 的镜像便是 https://github.com/jiajunhuang/blog
  • 不要使用国内的云,即使机房在国外

当然了,因祸得福,Cloudflare现在把我博客的路由拨到香港了,因此博客访问速度快了好多,哈哈哈哈😄


参考资料:


更多文章
  • ElasticSearch学习笔记
  • Go设计模式:composite模式
  • 拯救删除ZFS之后的分区表
  • Linux使用redshift自动调整屏幕色温
  • Go设计模式:桥接模式和策略模式
  • Go设计模式:单例模式、原型模式和Builder模式
  • 操作系统也是CRUD
  • Go设计模式:简单工厂模式
  • 把USB设备穿透给虚拟机里的系统
  • debug故事之:事务让生活更美好
  • Go设计模式:模板模式
  • Go设计模式:适配器模式
  • Go设计模式:Iterator
  • glusterfs 笔记
  • 用peewee代替SQLAlchemy