aboutsummaryrefslogtreecommitdiff
path: root/about
diff options
context:
space:
mode:
authorarf20 <aruizfernandez05@gmail.com>2024-02-25 14:09:08 +0100
committerarf20 <aruizfernandez05@gmail.com>2024-02-25 14:09:08 +0100
commiteeef9373b80022ec3be4a48b01fcabf13192db6e (patch)
tree663da1c021199c37be6bd20e07172c500e9a5f46 /about
parentae085f49f81015e1103f9a54792674f690fef97e (diff)
downloadarfnet2-web-eeef9373b80022ec3be4a48b01fcabf13192db6e.tar.gz
arfnet2-web-eeef9373b80022ec3be4a48b01fcabf13192db6e.zip
Add arfnet2 to about
Diffstat (limited to 'about')
-rw-r--r--about/about.css81
-rw-r--r--about/arfnet2.html1168
-rw-r--r--about/arfnet2.pdfbin0 -> 141075 bytes
-rwxr-xr-xabout/index.html66
4 files changed, 1315 insertions, 0 deletions
diff --git a/about/about.css b/about/about.css
new file mode 100644
index 0000000..5af0aeb
--- /dev/null
+++ b/about/about.css
@@ -0,0 +1,81 @@
+.verticaltext {
+ text-align: center;
+ writing-mode: vertical-rl;
+ transform: rotate(180deg);
+}
+
+.row {
+ display: flex;
+}
+
+.col {
+ flex: 33%;
+ padding: 40px;
+}
+
+.col2 {
+ float: left;
+ width: 100%;
+}
+
+.text {
+ margin-left: 20px;
+}
+
+.invisibletd {
+ padding-left: 20px;
+}
+
+.title {
+ font-size: 36px;
+}
+
+header *{
+ display: inline-block;
+}
+
+*{
+ vertical-align: middle;
+ max-width: 100%;
+}
+
+.pic100 {
+ width: 100%;
+}
+
+.pic50 {
+ width: 49%;
+}
+
+.pic2 {
+ width: calc(100% / 3);
+}
+
+.img {
+ margin-bottom: 10px;
+}
+
+.div {
+ margin: auto;
+ max-width: 1024px;
+}
+
+.aecenter {
+ text-align: center;
+ display: flex;
+ justify-content: space-between;
+}
+
+p, li {
+ font-size: 20px;
+}
+
+@media only screen and (max-width: 600px) {
+ .div {
+ width: 100%;
+ }
+}
+
+table, th, td {
+ border: 1px solid black;
+}
diff --git a/about/arfnet2.html b/about/arfnet2.html
new file mode 100644
index 0000000..d4f7488
--- /dev/null
+++ b/about/arfnet2.html
@@ -0,0 +1,1168 @@
+<!doctype html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title></title>
+ <style>
+ table, td, th {
+ border: 1px solid black;
+ }
+ th {
+ padding-top: 5px;
+ padding-bottom: 5px;
+ }
+ td {
+ padding-top: 2.5px;
+ padding-bottom: 2.5px;
+ }
+ th, td {
+ padding-left: 10px;
+ padding-right: 10px;
+ }
+ </style>
+ </head>
+ <body>
+ <h1 id="arfnet2-deployment">ARFNET2 deployment</h1>
+ <p>After the disastrous ISP <a
+ href="http://arf20.com/explanation.txt">schism</a></p>
+ <h2 id="masterplan">Masterplan</h2>
+ <p>Stage 1: very safe - Close all ports - Nuke (or stop) all old VMs
+ (exclude OPNSense) - Make DMZ - Make new basic VMs (cloning deb12
+ template) - Open basic ports</p>
+ <p>Stage 2: new services - IONOS VPS for mail - Some new very safe
+ services - HE IPv6 tunnel - Own authoritative nameservers for domain
+ zone</p>
+ <p>Stage 3*: finally - Another VPS in unknown provider for - Tor -
+ Reverse-proxying the media library - PHP on main site with more web
+ services from scratch, hopefully secure - More new services</p>
+ <h2 id="domain">Domain</h2>
+ <p>arf20.com</p>
+ <p>Registrar: namecheap</p>
+ <h3 id="name-sever-glue-records-at-registrar">Name sever glue records
+ at registrar</h3>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>Nameserver</th>
+ <th>Name</th>
+ <th>IP</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>NS1</td>
+ <td>ns1.arf20.com</td>
+ <td>2.59.235.35 <br> 2001:470:1f21:125::13</td>
+ </tr>
+ <tr class="even">
+ <td>NS2</td>
+ <td>ns2.arf20.com</td>
+ <td>5.250.186.185 <br> 2001:ba0:210:d600::1</td>
+ </tr>
+ </tbody>
+ </table>
+ <h2 id="networking">Networking</h2>
+ <h3 id="hardware">Hardware</h3>
+ <pre><code> WAP
+ |
+ +-----+ +--------------------------+ +----------------+
+ISP ===| ONT |---| DELL switch |-----| TP-Link switch |
+ +-----+ +--------------------------+ +----------------+
+ | | | |
+ | | | |
+ +---------------+ Rest of devices Living room devices
+ | eno1 eno2 |
+ | server router |
+ +---------------+
+
+- 1000BASE-T
+= GPON fiber</code></pre>
+ <h4 id="dell-powerconnect-5424-switch">DELL PowerConnect 5424
+ switch</h4>
+ <p>Port assignents</p>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>port</th>
+ <th>endpoint</th>
+ <th>options</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>g2</td>
+ <td>ONT</td>
+ <td>VLAN access 2</td>
+ </tr>
+ <tr class="even">
+ <td>g4</td>
+ <td>server eno2 WAN</td>
+ <td>VLAN access 2</td>
+ </tr>
+ <tr class="odd">
+ <td>g6</td>
+ <td>test2</td>
+ <td>VLAN access 2</td>
+ </tr>
+ <tr class="even">
+ <td>g3</td>
+ <td>WAP</td>
+ <td>VLAN access 5</td>
+ </tr>
+ <tr class="odd">
+ <td>g5</td>
+ <td>PC</td>
+ <td>VLAN access 4</td>
+ </tr>
+ <tr class="even">
+ <td>g7</td>
+ <td>Living R.</td>
+ <td>VLAN access 5</td>
+ </tr>
+ <tr class="odd">
+ <td>g9</td>
+ <td>server eno1 DMZ+LAN</td>
+ <td>VLAN trunk 4, 5</td>
+ </tr>
+ <tr class="even">
+ <td>g15</td>
+ <td>test4</td>
+ <td>VLAN access 4</td>
+ </tr>
+ <tr class="odd">
+ <td>g17</td>
+ <td>test1</td>
+ <td>VLAN access 1</td>
+ </tr>
+ <tr class="even">
+ <td>g19</td>
+ <td>test5</td>
+ <td>VLAN access 5</td>
+ </tr>
+ <tr class="odd">
+ <td>g21</td>
+ <td>iDRAC</td>
+ <td>VLAN access 4</td>
+ </tr>
+ <tr class="even">
+ <td>g23</td>
+ <td>printer</td>
+ <td>VLAN access 4</td>
+ </tr>
+ </tbody>
+ </table>
+ <p>Management</p>
+ <ul>
+ <li>interface vlan 4: 192.168.4.2/24 gw 192.168.4.1</li>
+ </ul>
+ <h3 id="public-ips">Public IPs</h3>
+ <ul>
+ <li>AVANZA_STATIC: 2.59.235.35</li>
+ <li>AVANZA_CGNAT: dynamic</li>
+ <li>HE v6 tunnel: 2001:470:1f20:125::2</li>
+ <li>IONOS VPS: 5.250.186.185 2001:ba0:210:d600::1</li>
+ </ul>
+ <h3 id="gateways">Gateways</h3>
+ <ul>
+ <li>AVANZA
+ <ul>
+ <li>WAN_STATIC: 2.59.235.1</li>
+ <li>WAN_CGNAT: dynamic</li>
+ </ul></li>
+ <li>HE v6: 2001:470:1f20:125::1 via 216.66.87.102</li>
+ </ul>
+ <h3 id="physical-and-logical-networks">Physical and Logical
+ Networks</h3>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>name</th>
+ <th>VLAN</th>
+ <th>net</th>
+ <th>desc</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>WAN</td>
+ <td>2</td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>DMZ</td>
+ <td>4</td>
+ <td>192.168.4.0/24 <br> 2001:470:1f21:125::/64</td>
+ <td>Services</td>
+ </tr>
+ <tr class="odd">
+ <td>LAN</td>
+ <td>5</td>
+ <td>192.168.5.0/24</td>
+ <td>Clients</td>
+ </tr>
+ <tr class="even">
+ <td>VPN</td>
+ <td></td>
+ <td>10.5.0.0/24</td>
+ <td>Wireguard clients</td>
+ </tr>
+ </tbody>
+ </table>
+ <h2 id="firewall">Firewall</h2>
+ <h3 id="interface-rules">Interface Rules</h3>
+ <ul>
+ <li>WAN_CGNAT in
+ <ul>
+ <li>deny *</li>
+ </ul></li>
+ <li>WAN_STATIC in
+ <ul>
+ <li>allow from * to {services} –&gt; NAT rules</li>
+ </ul></li>
+ <li>DMZ in
+ <ul>
+ <li>deny from DMZ net to LAN net</li>
+ <li>allow from DMZ net to firewall</li>
+ <li>allow from DMZ net to * gw WAN_STATIC</li>
+ </ul></li>
+ <li>LAN in
+ <ul>
+ <li>allow ICMP from LAN net to firewall</li>
+ <li>allow IP DNS from LAN net to firewall</li>
+ <li>allow from LAN net to DMZ net</li>
+ <li>allow from LAN net to * gw WAN_CGNAT</li>
+ </ul></li>
+ </ul>
+ <h3 id="ipv4-nat-rules">IPv4 NAT Rules</h3>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>Service</th>
+ <th>Customer</th>
+ <th>IPProto</th>
+ <th>Ext Port</th>
+ <th>Host</th>
+ <th>Re Port</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>OpenVPN</td>
+ <td></td>
+ <td>TCP</td>
+ <td>1195</td>
+ <td>router</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>WireGuard</td>
+ <td></td>
+ <td>UDP</td>
+ <td>51820</td>
+ <td>router</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>DNS NS1</td>
+ <td></td>
+ <td>TCP/UDP</td>
+ <td>53</td>
+ <td>misc</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>iperf3</td>
+ <td></td>
+ <td>TCP</td>
+ <td>5201</td>
+ <td>misc</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>NNTP</td>
+ <td></td>
+ <td>TCP</td>
+ <td>119</td>
+ <td>misc</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>Web</td>
+ <td></td>
+ <td>TCP</td>
+ <td>80,443</td>
+ <td>web</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>Git</td>
+ <td></td>
+ <td>TCP</td>
+ <td>9418</td>
+ <td>web</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>bittorrent</td>
+ <td></td>
+ <td>TCP/UDP</td>
+ <td>8999</td>
+ <td>nas</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>rsync</td>
+ <td></td>
+ <td>TCP/UDP</td>
+ <td>873</td>
+ <td>nas</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>IRC</td>
+ <td></td>
+ <td>TCP</td>
+ <td>6667</td>
+ <td>comm</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>IRCS</td>
+ <td></td>
+ <td>TCP</td>
+ <td>6697</td>
+ <td>comm</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>XMPP c2s</td>
+ <td></td>
+ <td>TCP</td>
+ <td>5222</td>
+ <td>comm</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>XMPP s2s</td>
+ <td></td>
+ <td>TCP</td>
+ <td>5269</td>
+ <td>comm</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>TURN STUN</td>
+ <td></td>
+ <td>TCP/UDP</td>
+ <td>3478</td>
+ <td>comm</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>TURN</td>
+ <td></td>
+ <td>TCP/UDP</td>
+ <td>5349</td>
+ <td>comm</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>TURN UDP relay</td>
+ <td></td>
+ <td>TCP/UDP</td>
+ <td>49152-50176</td>
+ <td>comm</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>mc-waterfall-proxy</td>
+ <td></td>
+ <td>TCP</td>
+ <td>25565</td>
+ <td>game</td>
+ <td>25567</td>
+ </tr>
+ <tr class="even">
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>exo-ssh</td>
+ <td>exo</td>
+ <td>TCP</td>
+ <td>4041</td>
+ <td>exovps</td>
+ <td>22</td>
+ </tr>
+ <tr class="even">
+ <td>exo-extra</td>
+ <td>exo</td>
+ <td>TCP</td>
+ <td>4040</td>
+ <td>exovps</td>
+ <td>4040</td>
+ </tr>
+ <tr class="odd">
+ <td>yero-ssh</td>
+ <td>yero</td>
+ <td>TCP</td>
+ <td>1511</td>
+ <td>yerovps</td>
+ <td>22</td>
+ </tr>
+ <tr class="even">
+ <td>yero-sql</td>
+ <td>yero</td>
+ <td>TCP</td>
+ <td>1512</td>
+ <td>yerovps</td>
+ <td>3306</td>
+ </tr>
+ <tr class="odd">
+ <td>FiveM SuperioresRP</td>
+ <td>yero</td>
+ <td>TCP</td>
+ <td>30120,40120</td>
+ <td>yerovps</td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ <h3 id="ipv6-port-rules">IPv6 port rules</h3>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>Service</th>
+ <th>Customer</th>
+ <th>IPProto</th>
+ <th>Host</th>
+ <th>Port</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>DNS NS1</td>
+ <td></td>
+ <td>TCP/UDP</td>
+ <td>misc</td>
+ <td>53</td>
+ </tr>
+ <tr class="even">
+ <td>Web</td>
+ <td></td>
+ <td>TCP</td>
+ <td>web</td>
+ <td>80,443</td>
+ </tr>
+ </tbody>
+ </table>
+ <h2 id="hosts">Hosts</h2>
+ <ul>
+ <li>server - DELL PowerEdge R720 running Proxmox PVE - …</li>
+ <li>mail - IONOS VPS running Debian 12 - 5.250.186.185
+ 2001:ba0:210:d600::1</li>
+ </ul>
+ <h2 id="management">Management</h2>
+ <ul>
+ <li>OPNSense router DMZ.1</li>
+ <li>DELL switch DMZ.2</li>
+ <li>TP-Link WAP LAN.2</li>
+ <li>Proxmox hypervisor DMZ.4</li>
+ <li>DELL server iDRAC DMZ.5</li>
+ <li>HP printer DMZ.7</li>
+ </ul>
+ <h2 id="server-vms-and-services">server VMs and services</h2>
+ <p>server runs Proxmox PVE.</p>
+ <p>All VMs are Debian 12 (templated) with wazuh agent</p>
+ <h3 id="proxmox-dmz.4-hypervisor">proxmox DMZ.4 (hypervisor)</h3>
+ <ul>
+ <li>SSH</li>
+ <li>Proxmox management interface :8006</li>
+ <li>smartmon + node exporter :9100</li>
+ <li>sensor exporter*</li>
+ <li>NUT - Network UPS TOols daemon (and proper UPS)*</li>
+ </ul>
+ <h3 id="router-dmz.1">router DMZ.1</h3>
+ <ul>
+ <li>(routing/firewalling)</li>
+ <li>SSH</li>
+ <li>DHCP</li>
+ <li>unbound DNS</li>
+ <li>OpenVPN</li>
+ <li>WireGuard</li>
+ <li>IPsec*</li>
+ <li>ntopng :3000</li>
+ <li>telegraf - note: editing config via webfig breaks (timeout and
+ unbound config)</li>
+ </ul>
+ <h3 id="nas-dmz.6">nas DMZ.6</h3>
+ <p>RAID attached here (with the grey stuff) (local only)</p>
+ <ul>
+ <li>SSH</li>
+ <li>NFS</li>
+ <li>Samba SMB*</li>
+ <li>MiniDLNA*</li>
+ <li>FTP</li>
+ <li>qBittorrent-nox</li>
+ <li>jellyfin</li>
+ </ul>
+ <h3 id="web-dmz.9">web DMZ.9</h3>
+ <ul>
+ <li>SSH</li>
+ <li>cerbot</li>
+ <li>nginx (status at :8080)</li>
+ <li>fastcgi PHP</li>
+ <li>mariadb SQL</li>
+ <li>nginx-prometheus-exporter :9113</li>
+ <li>prometheus :9090</li>
+ <li>telegraf</li>
+ <li>influxdb :8086</li>
+ <li>grafana :3000
+ <ul>
+ <li>Proxmox</li>
+ <li>nginx</li>
+ <li>iDRAC</li>
+ </ul></li>
+ <li>zabbix*</li>
+ <li>netbox*</li>
+ <li>fcgiwrap</li>
+ <li>git-http-backend - git smart http server CGI</li>
+ <li>gitd - git daemon</li>
+ <li>cgit - web frontend for git</li>
+ <li>phpBB - forum software</li>
+ <li>Jekyll - blog static site generator thing</li>
+ <li>opentracker? - bittorrent tracker*</li>
+ <li>gophernicus - gopher server*</li>
+ </ul>
+ <table>
+ <colgroup>
+ <col style="width: 22%" />
+ <col style="width: 48%" />
+ <col style="width: 29%" />
+ </colgroup>
+ <thead>
+ <tr class="header">
+ <th>vhost</th>
+ <th>webroot/proxy</th>
+ <th>Comment</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>default</td>
+ <td>&lt;return 418 im a teapot&gt;</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>default:8080</td>
+ <td>&lt;return nstub_status&gt;</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>arf20.com</td>
+ <td>/var/www/arf20.com/html/</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>www.arf20.com</td>
+ <td>&lt;301 redirect arf20.com&gt;</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>matrix.arf20.com</td>
+ <td>http://comm.lan:8008/_matrix</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>webmail.arf20.com</td>
+ <td>/var/www/webmail.arf20.com/html/</td>
+ <td>SquirrelMail</td>
+ </tr>
+ <tr class="odd">
+ <td>nextcloud.arf20.com</td>
+ <td>/var/www/nextcloud.arf20.com/html/</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>grafana.arf20.com</td>
+ <td>http://localhost:3000</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>jellyfin.arf20.com</td>
+ <td>http://nas.lan:8096</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>git.arf20.com</td>
+ <td>/srv/git/</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>cgit.arf20.com</td>
+ <td>fastcgi:/usr/lib/cgit/cgit.cgi</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>blog.arf20.com</td>
+ <td>/var/www/blog.arf20.com/_site/</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>forum.arf20.com</td>
+ <td>/var/www/forum.arf20.com/html/</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>deb.arf20.com</td>
+ <td>/d/FTPServer/software/debian/</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>memes.arf20.com</td>
+ <td>/var/www/memes.arf20.com/, /d/FTPserver/{dcimg, dcmemes,
+ explosionsandfire}</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>news.arf20.com</td>
+ <td>Web-News NNTP newsgroups frontend*</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>status.yero.dev</td>
+ <td>http://yerovps.lan:3001</td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ <h3 id="wazuh-dmz.10">wazuh DMZ.10</h3>
+ <ul>
+ <li>SSH</li>
+ <li>wazuh</li>
+ </ul>
+ <h3 id="game-dmz.11">game DMZ.11</h3>
+ <ul>
+ <li>SSH</li>
+ <li>waterfall (minecraft reverse proxy)
+ <ul>
+ <li>mclobby (auth)</li>
+ <li>mcrubenmc</li>
+ <li>mcgrupo4*</li>
+ <li>minepau*</li>
+ </ul></li>
+ <li>csgo server*</li>
+ </ul>
+ <h3 id="comm-dmz.12">comm DMZ.12</h3>
+ <ul>
+ <li>SSH</li>
+ <li>cerbot</li>
+ <li>unrealircd - IRC</li>
+ <li>synapse - matrix</li>
+ <li>postgresql - DB for synapse</li>
+ <li>pantalaimon - encrypt matterbridge traffic to matrix</li>
+ <li>matterbridge - bridge channels with different protocols</li>
+ <li>prosody - XMPP</li>
+ <li>coturn - TURN server for matrix and xmpp</li>
+ <li>asterisk - VoIP SIP PBX*</li>
+ </ul>
+ <h3 id="misc-deb12-lxc-dmz.13">misc (Deb12 LXC) DMZ.13</h3>
+ <ul>
+ <li>SSH</li>
+ <li>iperf3</li>
+ <li>bind9 - master authoritative nameserver for arf20.com zone NS1
+ <ul>
+ <li>public recursive*</li>
+ </ul></li>
+ <li>OpenLDAP LDAP*</li>
+ <li>INN2 - NNTP USENET server with SDF peering</li>
+ <li>Discord servers
+ <ul>
+ <li>gDebrid (gookie)</li>
+ </ul></li>
+ </ul>
+ <h3 id="pubnix">pubnix?*</h3>
+ <h3 id="mail-arfnet-ionos-vps-5.250.186.185-2001ba0210d6001">mail
+ (ARFNET-IONOS VPS) 5.250.186.185 2001:ba0:210:d600::1</h3>
+ <ul>
+ <li>SSH</li>
+ <li>certbot</li>
+ <li>postfix - MTA smtpd, submission, submissions <a
+ href="https://github.com/ARF20NET/mail-conf">config</a></li>
+ <li>dovecot - imapd</li>
+ <li>opendkim</li>
+ <li>majordomo? - mailing list manager*</li>
+ <li>bind9 - slave authoritative nameserver NS2</li>
+ </ul>
+ <h3 id="proxy-arfnet-hostmenow-vps">proxy (ARFNET-HOSTMENOW VPS)
+ *</h3>
+ <ul>
+ <li>SSH*</li>
+ <li>IPsec client*</li>
+ <li>proxy for ftp.arf20.com somehow*</li>
+ </ul>
+ <hr />
+ <h3 id="yerovps-dmz.192-yero">yerovps DMZ.192 (yero)</h3>
+ <ul>
+ <li>SSH</li>
+ <li>mariadb</li>
+ <li>FiveM SuperioresRP</li>
+ </ul>
+ <h3 id="exovps-dmz.195-exo">exovps DMZ.195 (exo)</h3>
+ <ul>
+ <li>SSH</li>
+ <li>netbox</li>
+ </ul>
+ <p>*TODO</p>
+ <h2 id="internal-name-and-number-assignation-table">Internal Name and
+ Number Assignation Table</h2>
+ <p>DMZ IPv4s and IPv6 ends in the same way</p>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>Addr</th>
+ <th>Name</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>DMZ.1</td>
+ <td>router.lan</td>
+ </tr>
+ <tr class="even">
+ <td>DMZ.2</td>
+ <td>switch.lan</td>
+ </tr>
+ <tr class="odd">
+ <td>DMZ.3</td>
+ <td>wap.lan</td>
+ </tr>
+ <tr class="even">
+ <td>DMZ.4</td>
+ <td>proxmox.lan</td>
+ </tr>
+ <tr class="odd">
+ <td>DMZ.5</td>
+ <td>idrac.lan</td>
+ </tr>
+ <tr class="even">
+ <td>DMZ.6</td>
+ <td>nas.lan</td>
+ </tr>
+ <tr class="odd">
+ <td>DMZ.7</td>
+ <td>printer.lan</td>
+ </tr>
+ <tr class="even">
+ <td>DMZ.8</td>
+ <td>desktop.lan</td>
+ </tr>
+ <tr class="odd">
+ <td>DMZ.9</td>
+ <td>web.lan</td>
+ </tr>
+ <tr class="even">
+ <td>DMZ.10</td>
+ <td>wazuh.lan</td>
+ </tr>
+ <tr class="odd">
+ <td>DMZ.11</td>
+ <td>game.lan</td>
+ </tr>
+ <tr class="even">
+ <td>DMZ.12</td>
+ <td>comm.lan</td>
+ </tr>
+ <tr class="odd">
+ <td>DMZ.13</td>
+ <td>misc.lan</td>
+ </tr>
+ <tr class="even">
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>DMZ.192</td>
+ <td>yerovps</td>
+ </tr>
+ <tr class="even">
+ <td>DMZ.195</td>
+ <td>exovps</td>
+ </tr>
+ </tbody>
+ </table>
+ <h2 id="domain-dns-zone">Domain DNS zone</h2>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>Name</th>
+ <th>Type</th>
+ <th>Content</th>
+ <th>Comment</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>@</td>
+ <td>NS</td>
+ <td>ns1.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>@</td>
+ <td>NS</td>
+ <td>ns2.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>ns1</td>
+ <td>A</td>
+ <td>2.59.235.35</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>ns1</td>
+ <td>AAAA</td>
+ <td>2001:470:1f21:125::13</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>ns2</td>
+ <td>A</td>
+ <td>5.250.186.185</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>ns2</td>
+ <td>AAAA</td>
+ <td>2001:ba0:210:d600::1</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>arf20.com</td>
+ <td>A</td>
+ <td>2.59.235.35</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>arf20.com</td>
+ <td>AAAA</td>
+ <td>2001:470:1f21:125::9</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>mail.arf20.com</td>
+ <td>A</td>
+ <td>5.250.186.185</td>
+ <td>ARFNET-IONOS</td>
+ </tr>
+ <tr class="odd">
+ <td>mail.arf20.com</td>
+ <td>AAAA</td>
+ <td>2001:ba0:210:d600::1</td>
+ <td>ARFNET-IONOS</td>
+ </tr>
+ <tr class="even">
+ <td>web.arf20.com</td>
+ <td>A</td>
+ <td>2.59.235.35</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>web.arf20.com</td>
+ <td>AAAA</td>
+ <td>2001:470:1f21:125::9</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>game.arf20.com</td>
+ <td>A</td>
+ <td>2.59.235.35</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>game.arf20.com</td>
+ <td>AAAA</td>
+ <td>2001:470:1f21:125::11</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>comm.arf20.com</td>
+ <td>A</td>
+ <td>2.59.235.35</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>comm.arf20.com</td>
+ <td>AAAA</td>
+ <td>2001:470:1f21:125::12</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>misc.arf20.com</td>
+ <td>A</td>
+ <td>2.59.235.35</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>misc.arf20.com</td>
+ <td>AAAA</td>
+ <td>2001:470:1f21:125::13</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>irc.arf20.com</td>
+ <td>CNAME</td>
+ <td>comm.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>jellyfin.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>matrix.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>nextcloud.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>turn.arf20.com</td>
+ <td>CNAME</td>
+ <td>comm.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>webmail.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>www.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>xmpp.arf20.com</td>
+ <td>CNAME</td>
+ <td>comm.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>xmppconf.arf20.com</td>
+ <td>CNAME</td>
+ <td>comm.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>grafana.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>git.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>cgit.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>blog.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>forum.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>deb.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>zabbix.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>memes.arf20.com</td>
+ <td>CNAME</td>
+ <td>web.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>news.arf20.com</td>
+ <td>CNAME</td>
+ <td>misc.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>_acme-challenge.jellyfin</td>
+ <td>CNAME</td>
+ <td>(challenge)</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>_acme-challenge.irc</td>
+ <td>CNAME</td>
+ <td>(challenge)</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>_acme-challenge.matrix</td>
+ <td>CNAME</td>
+ <td>(challenge)</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>_acme-challenge.mail</td>
+ <td>CNAME</td>
+ <td>(challenge)</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>_acme-challenge.xmpp</td>
+ <td>CNAME</td>
+ <td>(challenge)</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td></td>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>arf20.com</td>
+ <td>MX</td>
+ <td>mail.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>selector._domainkey</td>
+ <td>TXT</td>
+ <td>(DKIM)</td>
+ <td>DKIM for selector ‘selector’</td>
+ </tr>
+ <tr class="even">
+ <td>_dmarc</td>
+ <td>TXT</td>
+ <td>(DMARC)</td>
+ <td></td>
+ </tr>
+ <tr class="odd">
+ <td>arf20.com</td>
+ <td>TXT</td>
+ <td>(SPF)</td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ <h2 id="he-v6-rdns-zone">HE v6 rDNS zone</h2>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>Name</th>
+ <th>Type</th>
+ <th>Content</th>
+ <th>Comment</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>2001:470:1f21:125::13</td>
+ <td>PTR</td>
+ <td>ns1.arf20.com</td>
+ <td></td>
+ </tr>
+ <tr class="even">
+ <td>2001:470:1f21:125::9</td>
+ <td>PTR</td>
+ <td>arf20.com</td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ <h2 id="ionos-rdns-zone">IONOS rDNS zone</h2>
+ <table>
+ <thead>
+ <tr class="header">
+ <th>Name</th>
+ <th>Type</th>
+ <th>Content</th>
+ <th>Comment</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr class="odd">
+ <td>5.250.186.185</td>
+ <td>PTR</td>
+ <td>mail.arf20.com</td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
+ </body>
+</html>
diff --git a/about/arfnet2.pdf b/about/arfnet2.pdf
new file mode 100644
index 0000000..7fc2afd
--- /dev/null
+++ b/about/arfnet2.pdf
Binary files differ
diff --git a/about/index.html b/about/index.html
new file mode 100755
index 0000000..608baef
--- /dev/null
+++ b/about/index.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="UTF-8">
+ <link rel="stylesheet" type="text/css" href="/style.css">
+ <link rel="stylesheet" type="text/css" href="/about.css">
+ <title>ARFNET</title>
+ </head>
+
+ <body>
+ <header><a href="/">
+ <img src="arfnet_logo.png" width="64">
+ <span class="title"><strong>ARFNET</strong></span>
+ </a></header>
+ <hr>
+ <h2 class="center">About ARFNET</h2>
+ <h3><a href="/arfnet2.html">ARFNET technical description</a></h3>
+ <div class="div">
+ <p>
+ ARFNET is a non-profit organization (a homelab really) devoted to several causes such as:
+ </p>
+ <ul>
+ <li>Reenancment of the look and function of the old internet form the 80s, 90s and 2000s</li>
+ <li>Preservation of humanity's knoledge, artwork and entertainment via archival, and its availability to all</li>
+ <li>Free (as in freedom) and Open Source Software, hence all being published under GPLv3 on github</li>
+ </ul>
+
+ <p>
+ The ARFNET infrastructure consists of a network of hosts providing services like this website itself.
+ Some of the services are for my own use, some others are public, for friends or everyone to use them, for example,
+ /FTPServer is the general directory for sharing random stuff.
+ But ARFNET didn't start like it is today, in the begining this was just me opening random ports. Now is (mostly) well organised and administrated.
+ </p>
+
+ <p>
+ A little bit of history now. A long time ago, several years back, I downloaded Apache HTTP Server in my shitty Pentium PC (the first host), and opened port 80 in my router.
+ That is the origin. But I wanted more, I got a FreeDNS domain, the former arf20.mooo.com, and made a HTTPS certificate. Also installed Bitvise SSH server for remote management,
+ with public key authentication, and allowed my NIC to wake the PC with Wake-on-LAN, to have it always available. But this wasn't a very good way of hosting a website, is not 24/7.
+ I had a little Raspberry Pi 2B (<i>raspi</i>), which used to serve PPTP 24/7. But a raspi is not beefy enough to run nginx and to have a big drive. So, the waiting
+ has paid off, and in summer 2021 I got my first real thicc and beautiful enterprise server. A DELL PowerEdge R720, which I inmediately bricked. You are not warned of the
+ <i>special update process</i> that iDRAC needs, so I just tried updating to the last version, which went wrong. So wrong that iDRAC cound't be reflashed again. The only
+ thing that I could do is change the motherboard, but that is even more expensive than another server. Another server? I still got eBay 1 month return warranty,
+ so I applied it. Told the seller <i>"iDRAC broke itself lol"</i>, somehow they accepted. I got my 300€ back, and bought another R720, with better CPU! So I popped the boot drive,
+ for which I choosed Ubuntu Server, and HDD from the old server, and it was almost plug-and-play. ARFNET back in business! From that point on, I have been migrating more services
+ to the server, and adding new ones, like NTP and DNS. Now, my workstation is so linked to the server with SMB mounts that it is useless without it :concern:. I'll be more careful.
+ </p>
+
+ <p>
+ Update 2022-3: Got a rack, mounted server in the rack, also got a Mikrotik RB2011UiaS-RM, but turns out it sucks (can't do NAT fast enough), rewired the network with a nice patch panel,
+ got donated a few DELL switches and Cisco router, and finally kicked Vodafone, in favor of Avanzafibra, local ISP.
+ Pretty nice people, they offer static IPs, 1000/1000 FTTH, separate ONT, and SIP credentials.
+ Then I won an auction for 10x 3TB HGST drives, so now I've got a pretty nice 18TB RAID5 vault. The raspi died, sad. And then I eventually opened my mind and discovered just
+ how shitty ubuntu is, so I installed proxmox and made debian VMs, from which ARFNET is running now. Also got 64GB of 2Rx4 RAM for more VMs, like an OPNSense to replace the Mikrotik,
+ now I can finally make use of a full gigabit backbone, you'll notice a fantastic increase of speed.
+ </p>
+
+ <p>
+ And what will the future hold? Well, the future is not written, but I got a few ideas. Like a 10gig upgrade, but not the whole network, that would be just too expensive.
+ Just a 10GBASE-SR link, between the server and desktop, to make it even more linked together, with SATA speeds network shares. Both with their respectible 1000BASE-T links to
+ the router. I could also get a rackmounted KVM console, one of the coolest things one can have in a rack. Maybe with a KVM switch for future servers? I should get a proper 2U UPS too,
+ this one doesn't last enough.
+ </p>
+ </div>
+
+ </body>
+</html>