服务器维护记录

本文最后更新于:2023-09-25 15:50:18 UTC+08:00

服务器挂载的服务

  1. 主站:https://ligen131.com,目前重定向到 https://ligen.life
  2. UptimeRobot Monitorhttps://status.ligen131.com/
  3. NetData 监控:https://netdata.ligen131.com/ 需要密码。
  4. 在线评测系统 LGOJ Online Judge:https://oj.ligen131.com/,同时有网页端和后端评测服务。Powered by SYZOJ
  5. Cloudreve 网盘https://pan.ligen131.com/
  6. React Wordlehttps://wd.ligen131.com
  7. Wechaty Sunbothttp://sun.bot.ligen131.com/

TODO

  • 升级!2C4G -> 4C8G
  • 公安备案(似乎没催了,不管了)
  • 本地内网穿透,开启外网可访问的远程桌面
  • 博客图片加 CDN,或者对图片进行压缩、懒加载等(完整加载整个网页需要很长时间,甚至主页图都很难加载出来,特别是网络差环境下)
  • 主站 https://ligen131.com 添加主页,跳转链接等
  • 添加 RSS(https://ligen.life/atom.xml
  • 关闭不需要的项目,如 https://bbs.ligen131.com 并停止解析
  • 中继服务器优化 / 迁移
  • 部分特殊 / 公共项目或许会注册一个新的域名 / 购置新服务器(已完成:int64.top)
  • Wordle 设置开机自启
  • 邮件服务(第三方 SMTP ?)(zoho)
  • 服务器挂载了两个 QQ bot,每一个占用的内存都很大,有时间进行优化
  • 给每个 QQ bot 做一个网页,可通过 UptimeRobot 实时监控状态
  • 微信机器人 Sunbot 添加新功能:每日统计、定时发送等
  • 文章:如何使用 GitHub Actions 自动更新 Hexo 博客 & 利用中继服务器传输文件 & Rsync 同步文件 commit 时间
  • 文章:(或许可以直接在本文里写?)前端:改造 Fluid 主题:给 link 添加动画效果
  • 文章:完善 About Me 页面
  • 文章:补上日记
  • 文章:年终总结
  • 文章:Ingress 之旅
  • 添加友链及友链页提示
  • 博客评论系统
  • 为本站 / 自己添加新的 Logo 及头像(去哪找?)

Let's Encrypt 创建证书、更新证书

创建证书

1
$ certbot certonly --preferred-challenges dns -d *.ligen131.com -d ligen131.com --server https://acme-v02.api.letsencrypt.org/directory --email i@ligen131.com --manual

3

https://console.dnspod.cn/dns/ligen131.com/record 加入 DNS 记录。

1
2
3
4
$ nginx -t
$ nginx -s reload
$ systemctl restart postfix
$ systemctl restart dovecot

参考:http://g23988.blogspot.com/2018/10/ssl-certbot-lets-encrypt-wildcard.html

--manual 是指手動驗證

--preferred-challenges dns 告訴他我想要使用 dns 的方式 challenge

--server 則是對方 challenge 的來源接著是一連串的對話窗

遇到文件夹已存在的情况,执行 certbot delete 删除证书,再删除证书文件夹(/etc/letsencrypt/live/xxx),再次执行命令。

更新证书

1
$ certbot renew

似乎会报错,如果报错直接用上面创建证书命令直接更新即可。

KMS 服务器(Windows 激活验证)

参考:https://teddysun.com/530.html

重启之后和 nginx 端口号冲突了,解决办法:

1
2
3
$ /etc/init.d/kms stop
$ systemctl restart nginx
$ /etc/init.d/kms start

腾讯云服务器跨账号迁移

腾讯云提供了在线和离线两种方式,因为我只有一个镜像要迁移,研究了一下发现都需要把镜像创建实例开起来,于是直接使用了在线迁移,直接点对点迁移,比较方便。

参考官方文档:https://cloud.tencent.com/document/product/213/65711

失败了两次,给我干了一百多块钱。

FRP 内网穿透

参考

https://cloud.tencent.com/developer/article/1837482

https://itlanyan.com/frp-tunnel-tutorial/

systemd

https://juejin.cn/post/6972566180896702477

Windows 配置 Nginx 为服务开机自启

使用 WinSW 配置服务,下载 Release 中可执行文件,配置同名 xml 文件。如 nginx-service.exe 配置 nginx-service.xml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<service>
<id>nginx</id>
<name>Nginx Service</name>
<description>Nginx Service</description>
<logpath>C:\Programs\nginx-1.22.0</logpath>
<log mode="roll-by-size">
<sizeThreshold>10240</sizeThreshold>
<keepFiles>8</keepFiles>
</log>
<executable>C:\Programs\nginx-1.22.0\nginx.exe</executable>
<startarguments>-p C:\Programs\nginx-1.22.0</startarguments>
<stopexecutable>C:\Programs\nginx-1.22.0\nginx.exe</stopexecutable>
<stoparguments>-p C:\Programs\nginx-1.22.0 -s stop</stoparguments>
</service>
  • 注册服务 nginx-service.exe install
  • 注销服务 nginx-service.exe uninstall
  • 启动服务 nginx-service.exe start
  • 停止服务 nginx-service.exe stop

nginx.exe -s reload 报错 nginx: [error] OpenEvent("Global\ngx_reload_7732") failed (5: Access is denied) 解决方案参考 https://blog.csdn.net/xjcwzp/article/details/122661784,服务启动用户修改为 ligen 即可。

Windows 下 Nginx 配置文件路径格式:C:/Path/to/nginx

Windows Powershell 刷新环境变量

RefreshEnv 似乎无效,如果用 ssh 登录,则 net stop sshd; net start sshd; 然后重新登录即可。

Windows Powershell 查看历史记录

1
2
Get-Content (Get-PSReadlineOption).HistorySavePath
cat $env:APPDATA\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt

服务器维护记录
https://ligen.life/2022/server-maintenance-record/
作者
ligen131
发布于
2022年11月3日
更新于
2023年9月25日
许可协议