Commit graph

632 commits

Author SHA1 Message Date
Daniel Micay
a6d1e00d07 drop SSH connections to new anycast IPs 2025-05-05 17:29:56 -04:00
Daniel Micay
029882f051 set up certificate replication for ns1 replicas 2025-05-05 17:29:54 -04:00
Daniel Micay
4a9deb48ab add bird and zerotier-one packages to ns1 servers 2025-05-04 16:01:06 -04:00
Daniel Micay
c64bddb5c6 update Arch ISO for VPS deployment to 2025.05.01 2025-05-04 16:01:06 -04:00
Daniel Micay
c7cb5d025e add 2.ns1.grapheneos.org server 2025-05-04 16:01:04 -04:00
Daniel Micay
2784008a65 nftables: add support for rage4 anycast for ns1 2025-05-03 18:13:20 -04:00
Daniel Micay
566f1a10d2 rename ns1.grapheneos.org to 0.ns1.grapheneos.org 2025-05-03 18:13:18 -04:00
Daniel Micay
c41f579a51 raise journal file size for 2.grapheneos.org 2025-05-03 09:21:37 -04:00
Daniel Micay
476d7f4794 raise journal file size for 1.grapheneos.network 2025-05-03 09:21:34 -04:00
Daniel Micay
7cd1fcb8a3 temporarily rename releases certbot configuration 2025-04-30 23:30:49 -04:00
Daniel Micay
7861ef2c30 remove legacy OVH update servers 2025-04-30 23:27:40 -04:00
Daniel Micay
39b5148808 switch back to CUBIC from BBRv1 and keep ECN off
BBRv1 significantly improves throughput in some cases but it also
significantly reduces it in others. We've run into too many network
conditions it handles quite poorly. There's also a bad interaction
between BBR and synproxy where it will cripple the initial throughput
for connections established via synproxy. This means a basic SYN flood
attack could cripple initial TCP throughput for most connections.

Android doesn't enable ECN for outbound connections yet and we don't
want to deviate from that so it mainly only gets activated for macOS
and iOS clients. Linux kernel approach to ECN hasn't been modernized and
there are fierce debates about how it should work. It can cause issues
and it seems best to avoid it until Android enables it.
2025-04-25 13:34:33 -04:00
Daniel Micay
9556ca4b79 use 4.releases.grapheneos.org as primary instance 2025-04-25 00:47:28 -04:00
Daniel Micay
9290c1fd90 add new ReliableSite update servers 2025-04-24 01:15:39 -04:00
Daniel Micay
e38b248b47 raise RAID resync limit for bare metal servers 2025-04-23 21:10:49 -04:00
Daniel Micay
0bbb137959 add new nginx-mod-stream package where required 2025-04-23 21:07:05 -04:00
Daniel Micay
687fd3ddc5 drop unused DHCP configuration for 4.releases.grapheneos.org 2025-04-23 21:07:05 -04:00
Daniel Micay
250d813c56 add IPv4 gateway route for 4.releases.grapheneos.org 2025-04-23 21:07:05 -04:00
Daniel Micay
b20cf862a3 update python dependencies 2025-04-17 10:32:41 -04:00
Daniel Micay
1f4d7316b8 reorganize configurations into etc directory 2025-04-15 12:53:49 -04:00
Daniel Micay
b5fd158374 add cpupower configuration for bare metal 2025-04-15 12:30:33 -04:00
Daniel Micay
0b6e5e017e sshd: use mlkem768x25519-sha256 for key exchange
The default was switched from sntrup761x25519-sha512@openssh.com to
mlkem768x25519-sha256 in OpenSSH 10.0. It's much faster and also matches
the new default TLS key exchange algorithm for OpenSSL 3.5.0.
2025-04-12 11:37:03 -04:00
Daniel Micay
397eac82b6 update sshd_config 2025-04-12 11:06:03 -04:00
Daniel Micay
d7564c99c4 add systemd-boot configuration 2025-04-11 13:44:37 -04:00
Daniel Micay
8db0d61485 add authorized_keys configuration 2025-04-10 15:14:25 -04:00
Daniel Micay
e6311abe40 drop legacy OVH EU update servers 2025-04-10 11:07:31 -04:00
Daniel Micay
fff5e43b89 work around systemd-boot disliking ESP on RAID 1
Using RAID 1 for ESP is the normal approach used by typical automatic
installs on dedicated servers. It's discouraged by systemd since they
don't know if out-of-band writes could happen such as a Windows install
seeing it and mounting it. That's not a problem for us and we want to do
things the normal way instead of a more error prone approach of syncing
changes without RAID 1.
2025-04-05 11:10:52 -04:00
Daniel Micay
9254dead0d deploy-initial: handle fstab split 2025-04-05 09:57:18 -04:00
Daniel Micay
38db9327be switch to BBR for congestion control 2025-04-03 17:08:49 -04:00
Daniel Micay
fd31471ae3 enable CAKE for the new update server
This wasn't initially enabled because we were concerned about a
potential bottleneck due to CAKE being single threaded. We expect the
Ryzen 9950X will be more than powerful enough for CAKE at 25Gbps and it
does appear to help substantially compared to fq_codel with maintaining
high throughput across problematic connections especially when combined
with BBR which we'll likely switch to for congestion control across the
servers, especially with BBRv3 on the horizon.
2025-04-03 17:08:49 -04:00
Daniel Micay
46395cc4e5 raise journald limits for new update server 2025-04-03 17:08:49 -04:00
Daniel Micay
b7aab6e0da rename new update server 2025-04-03 17:08:45 -04:00
Daniel Micay
f32458e296 phase out old update server names 2025-04-03 15:36:37 -04:00
Daniel Micay
4dfae68196 add 8.releases.grapheneos.org server 2025-04-02 14:47:25 -04:00
Daniel Micay
3746befc4e disable systemd-userdbd.socket in initial deployment 2025-04-02 14:46:48 -04:00
Daniel Micay
176fb30a4e drop kernel.sched_energy_aware sysctl 2025-03-19 12:13:06 -04:00
Daniel Micay
86e6dd61e6 replace 0.releases.grapheneos.org server 2025-03-19 12:05:37 -04:00
Daniel Micay
286045f90c update Arch Linux ISO to 2025.03.01 2025-03-19 11:32:40 -04:00
Daniel Micay
2758a47f8a raise log file size for 2.ns2.grapheneos.org 2025-03-17 19:51:58 -04:00
Daniel Micay
a374df4aa3 allow mjolnir to connect via nginx HTTPS
This is needed because mjolnir connecting directly to synapse causes it
to repeatedly disconnect around every hour, likely due to an issue with
keepalive.
2025-02-27 09:03:24 -05:00
Daniel Micay
bd4e51a18c switch to node.js 22 LTS for Mastodon 2025-02-25 12:44:06 -05:00
Daniel Micay
1180ee2638 switch to node.js 22 LTS for mjolnir 2025-02-25 12:43:52 -05:00
Daniel Micay
532bc95715 add iperf package to each server 2025-02-16 04:37:53 -05:00
Daniel Micay
6cce70a859 use CAKE no-split-gso for BuyVM servers 2025-02-16 04:32:21 -05:00
Daniel Micay
54dc10b79f set up systemd runtime watchdog support
Services without a hardware watchdog will need to use softdog and won't
get most of the benefits but it's still useful.
2025-02-12 08:23:11 -05:00
Daniel Micay
0dc18cdc27 update copyright notice 2025-02-05 04:40:50 -05:00
Daniel Micay
5bf4a87d90 raise grapheneos.social journal size 2025-02-05 04:40:50 -05:00
GrapheneOS
7a5080c232 update python dependencies 2025-02-04 03:23:13 -05:00
Daniel Micay
4f49c50ef6 raise 3.grapheneos.network journal size 2025-01-03 10:13:59 -05:00
Daniel Micay
d817740941 count: handle optimized factory image downloads 2025-01-02 23:39:25 -05:00