前言
虽然在Scaleway€0.22/月IPv6 only VPS打开方式一文中将硬盘克扣到了3G,但既然追求刺激,就要贯彻到底咯。
这次把硬盘压榨到1G,因此系统只能选择更小的Alpine Linux。
CLI创建实例
curl -o /usr/local/bin/scw -L https://github.com/scaleway/scaleway-cli/releases/download/v2.32.1/scaleway-cli_2.32.1_linux_amd64
chmod +x /usr/local/bin/scw
到Scaleway的后台创建一个API Key,右上角->API Keys
->Generate API key
初始化scw
scw init
创建实例前记得到 https://console.scaleway.com/project/ssh-keys 上传自己的SSH公钥
scw instance server create type=STARDUST1-S zone=fr-par-1 image=debian_bullseye root-volume=l:10G name=FR ip=none project-id=f09e5860-eb42-4784-8c98-*********
ProjectID 可以在 https://console.scaleway.com/project/settings 找到
修改硬盘
现在到 Instances 就可以看到刚刚创建的实例,点击打开详情页面后,先点右上方的关机,然后点击 Attached Volume
,删除硬盘后创建一个 Local Storage
,修改大小为1G
默认打开是 Block Storage ,比 Local Storage 贵一些。
返回 Overview
,点击 Order flexible IP
,添加一个IPv6地址和一个IPv4地址。
IPv4 仅用于启动 netboot.xyz,后面会删除
点开 Console
,然后开机,此时在打开的 Console
页面快速连击 Esc
键,即可进入 UEFI 界面。
进入 Device Manager
-> Network Device List
-> 唯一的网络设备-> HTTP Boot Configuration
->Boot URI
输入链接
http://boot.netboot.xyz/ipxe/netboot.xyz.efi
保存并返回主页,进入 Boot Manager
并选择新添加的启动选项 UEFI HTTP
等待 netboot.xyz
启动后,转到 Utilities (UEFI)
->Kernel cmdline params
并输入
console=ttyS0
这不仅可以让您通过串行端口查看安装程序并与之交互,而且 setup-alpine 会检测到它,并将已安装的系统配置为也使用串行控制台
退出到 netboot.xyz
首页,选择 Linux Network Installs (64-bit)
->Alpine Linux
开始安装 Alpine Linux
安装netboot.xyz
使用 root
用户登录到 Alpine Linux
,设置环境变量
export BOOT_SIZE=33
export SWAP_SIZE=0
Boot分区默认为160M,FAT32 必须大于32M;默认会添加Swap分区,设置swap大小为0以关闭。
输入 setup-alpine
开始安装过程
安装过程中设置网络时可以暂时设置为dhcp,安装完成后再行修改。
硬盘安装模式要设置为 sys
以启用上面设置的环境变量
安装完成后 reboot
即可
开机设置
使用密钥登陆到VPS,根据Scaleway后台Overview页面中的IPv6网络信息修改 /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet6 static
address <ipv6_address>/64
gateway <ipv6_gateway>
修改 /etc/resolv.conf
nameserver 2001:4860:4860::8888
nameserver 2606:4700:4700::1111
重启VPS后到 Scaleway 后台删除 IPv4 地址
优化
添加IPv4
安装必要软件
apk add python3 curl
参考获取适用于Wireguard的WARP Teams(Zero Trust)配置文件,获取后安装wireguard
apk add wireguard-tools-wg-quick iptables wireguard-tools-openrc
mkdir /etc/wireguard
在 /etc/wireguard/warp.conf
创建好配置文件,下面是一个示例
[Interface]
PrivateKey = <PrivateKey>
Address = 172.16.0.2/32
Address = <IPv6_Address>/128
MTU = 1420
[Peer]
PublicKey = bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=
AllowedIPs = 0.0.0.0/0
Endpoint = <IPv6_Endpoint>:2408
PersistentKeepalive = 25
修改权限
chmod 600 /etc/wireguard/warp.conf
设置开机启动
ln -s /etc/init.d/wg-quick /etc/init.d/wg-quick.warp
rc-update add wg-quick.warp
rc-service wg-quick.warp start
开启bbr
创建 /etc/sysctl.d/99-custom.conf
文件
net.core.default_qdisc = cake
net.ipv4.tcp_congestion_control = bbr
结语
服务器的价格是€0.00015/h,1G硬盘的价格是€0.000044/h,所以每月仅需 (0.00015+0.000044)×24×30=0.13968欧,目前大约是1.09元。
硬盘空间剩余空间576M,如下图所示