第一朵阿里云
最近希望有一个私人的流量中转站,即使在办公室也能访问家里的计算和存储,低延迟低流量低配置的乞丐VPS就可以。
抠门的我挑了半天,还是选择了大厂,阿里云成都分云,这次不用红帽系了,因为最近一直在Debian、Ubuntu和Armbian。
初始化
首次登录好习惯改密码(为了方便,应该把zsh
、git
、oh-my-zsh
、vim
、tmux
、aria2c
装上。):
1 | # VPS上改密码 |
将ssh设置为无法用密码登录(只接受key pair认证),顺便调整ssh超时时间:
1 | # /etc/ssh/sshd_config 中: |
开防火墙策略:
1 | sudo ufw default deny incoming |
注意:若端口已经打开,使用nc
检测端口发现公网IP(即4x.x.x.x
)的端口不通,而内网IP(即172.x.x.x
)端口正常。则需要在云服务器ESC
->网络与安全
->安全组
里添加端口。
开启虚拟内存:
1 | # 检查虚拟内存十分开启: |
安装科学冲浪
安装核心,如果install-release.sh
不能下载,可以直接浏览器打开复制粘贴,然后chmod +x install-release.sh
,运行即可:
1 | # 安装或更新核心 |
安装UI,直接在release中挑了一个arm64的包。如果实在下不下来,就scp ./installer_debian_amd64_1.5.9.1698.1.deb root@47.109.18.231:./
传一个上去吧,或者传到哪个没被ban的公网服务器上下载也行。
1 | wget https://github.com/v2rayA/v2rayA/releases/download/v1.5.9.1698.1/installer_debian_amd64_1.5.9.1698.1.deb |
配置aira2c
配置aria2c
远程下载服务,本地使用AriaNg搭配风味更佳:
1 | mkdir -p ~/.config/aria2 |
配置如下:
1 | ## '#'开头为注释内容, 选项都有相应的注释说明, 根据需要修改 ## |
启动aria2c:
1 | aria2c --conf-path=$HOME/.config/aria2/aria2.conf -D |
安装nps内网穿透服务端
小可怜服务器没多少空间舍不得安装golang,直接从release列表中下载相应的二进制运行:
1 | wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz |
修改配置文件/etc/nps/conf/nps.conf
的用户名和密码,以及默认的http
和https
监听,这台VPS我用打算用来中转流量,所以80
和443
打算暂时留给nginx
:
1 | # ... |
查看日志cat /var/log/nps.log
:
1 | 2022/12/03 19:28:15.920 [I] [nps.go:202] the version of server is 0.26.10 ,allow client core version to be 0.26.0 |
在内网Rock-5B上下载客户端:
1 | wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_arm64_client.tar.gz |
或是在内网树莓派3B+上下载客户端:
1 | wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_arm_v7_client.tar.gz |
按照说明添加一个客户端,并在树莓派上尝试连接nps服务器:
1 | ./npc -server=4x.x.x.x:8024 -vkey=xxxxxxx -type=tcp |
此时刷新nps管理页面,客户端已显示线了。在管理页面的TCP隧道中加一条端口映射,就可以从电脑上连接ssh -p 10022 pi@4x.x.x.x
了。
自动续期SSL证书
教程,我希望用4*服务器上的nps,将443映射给内网120服务器的443端口,并使得证书能够正常验证。
此时我使用apt update
后,apt
报错,很明显mirrors.cloud.aliyuncs.com
这个地址指向我的Justhost服务器了,ping
也是直接被解析成了ping mirrors.cloud.aliyuncs.com.mydomain.tech
,此时dig
、nslookup
都不行,但resolvectl query mirrors.cloud.aliyuncs.com
仍然正常。我查了ping
命令,有文章说ping
的解析靠/etc/nsswitch
中host
项目的配置,于是我改/etc/nsswitch
、/etc/hosts
都不行。然后搜索这个域名发现有的文章说,需要修改/etc/hosts
:
1 | # 这一组不行,v2rayA DNS hijack,这是v2rayA开启时注入的 |
申请SSL证书,
1 | # 安装acme.sh,末尾的`-s email=xxx@xxx.com是用来接受let's encrypt等更新邮件的地址 |
安装证书到nginx:
1 | acme.sh --install-cert -d aliyun.mydomain.tech \ |
安装证书到syncthing
1 | acme.sh --install-cert -d aliyun.mydomain.tech \ |