Difference between revisions of "Rproxy"
| (14 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | rproxy är en maskin som agerar reverse proxy för ett flertalet tjänster på Stacken. | + | rproxy är en maskin som agerar reverse proxy för ett flertalet tjänster på Stacken. De klassiska IP-numren <code>130.237.234.40</code> samt <code>2001:6b0:1:ea::40</code> pekar på den. Många av stackens webbsidor, t.ex. den här wikin körs genom rproxy. |
| − | == | + | == Konfiguration == |
| − | |||
| + | === Hårdvara === | ||
| + | Maskinen är ett VM | ||
| + | |||
| + | === OS m.m. === | ||
* Ubuntu 18.04 LTS | * Ubuntu 18.04 LTS | ||
| − | * Automatiska säkerhetsuppdateringar | + | ** Automatiska säkerhetsuppdateringar |
| + | |||
| + | === Docker === | ||
| + | |||
* docker-bench-security körd och Docker är lite mer nerlåst | * docker-bench-security körd och Docker är lite mer nerlåst | ||
| − | == | + | # daemon.json |
| + | { | ||
| + | "userns-remap": "dockremap", | ||
| + | "live-restore": true, | ||
| + | "userland-proxy": false, | ||
| + | "no-new-privileges": true | ||
| + | } | ||
| + | |||
| + | === Traefik === | ||
| + | |||
| + | Traefik används för att ta i mot trafik samt terminera TLS. Det finns en systemd unit med samma namn som ser ut så här: | ||
| + | |||
| + | # /etc/systemd/system/traefik.service | ||
| + | [Unit] | ||
| + | Description=Traefik Reverse Proxy | ||
| + | After=network.target | ||
| + | |||
| + | [Service] | ||
| + | Type=notify | ||
| + | ExecStart=/usr/local/bin/traefik --configFile=/etc/traefik/traefik.toml | ||
| + | Restart=always | ||
| + | WatchdogSec=60s | ||
| + | NoNewPrivileges=yes | ||
| + | ProtectSystem=strict | ||
| + | ReadWritePaths=/etc/traefik/state/ | ||
| + | ProtectHome=yes | ||
| + | |||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | |||
| + | Konfiguration hittar du i <code>/etc/traefik</code> | ||
| + | |||
| + | === Fail2ban === | ||
| + | |||
| + | Förutom sshd som är på som standard på Debian så har jag skapat ett filter som heter <code>filter.d/shakespeer-ip.conf</code> som ser ut så här: | ||
| + | |||
| + | [Definition] | ||
| + | failregex = ^<HOST>.+\/~mhe\/ip.shtml.+\"shakespeer\/.+$ | ||
| + | ignoreregex = | ||
| + | |||
| + | Set är sedan laddat från <code>jail.d/customisation.local</code> så här: | ||
| + | |||
| + | [traefik-shakespeer] | ||
| + | enabled = true | ||
| + | filter = shakespeer-ip | ||
| + | logpath = /var/log/traefik/access.log | ||
| + | maxretry = 3 | ||
| + | findtime = 60 | ||
| + | bantime = 6h | ||
| + | port = http,https | ||
| + | |||
| + | Det lägger iptables-regler som blockar alla som kör programmet Shakespeer som spammar sönder oss med att försöka använda ip.shtml som inte har funkat på många, många år ... | ||
| + | |||
| + | === Mediawiki === | ||
| + | |||
| + | Mediawiki körs i en Docker container och startas med Docker Compose. Du hittar konfigurationen för det i <code>/etc/mediawiki</code>. Bilderna ligger i <code>/var/mediawiki/images</code>. | ||
| + | |||
| + | === Bucky === | ||
| − | + | Bucky används som en statsd till carbon relay som Traefik använder för att att skicka in data till [[Graphite]]. Den kör i Docker och startas med Docker Compose och ligger i <code>/etc/bucky</code>. | |
| − | |||
[[Category: Maskiner]] | [[Category: Maskiner]] | ||
Latest revision as of 14:15, 29 December 2018
rproxy är en maskin som agerar reverse proxy för ett flertalet tjänster på Stacken. De klassiska IP-numren 130.237.234.40 samt 2001:6b0:1:ea::40 pekar på den. Många av stackens webbsidor, t.ex. den här wikin körs genom rproxy.
Contents
Konfiguration
Hårdvara
Maskinen är ett VM
OS m.m.
- Ubuntu 18.04 LTS
- Automatiska säkerhetsuppdateringar
Docker
- docker-bench-security körd och Docker är lite mer nerlåst
# daemon.json
{
"userns-remap": "dockremap",
"live-restore": true,
"userland-proxy": false,
"no-new-privileges": true
}
Traefik
Traefik används för att ta i mot trafik samt terminera TLS. Det finns en systemd unit med samma namn som ser ut så här:
# /etc/systemd/system/traefik.service [Unit] Description=Traefik Reverse Proxy After=network.target [Service] Type=notify ExecStart=/usr/local/bin/traefik --configFile=/etc/traefik/traefik.toml Restart=always WatchdogSec=60s NoNewPrivileges=yes ProtectSystem=strict ReadWritePaths=/etc/traefik/state/ ProtectHome=yes [Install] WantedBy=multi-user.target
Konfiguration hittar du i /etc/traefik
Fail2ban
Förutom sshd som är på som standard på Debian så har jag skapat ett filter som heter filter.d/shakespeer-ip.conf som ser ut så här:
[Definition] failregex = ^<HOST>.+\/~mhe\/ip.shtml.+\"shakespeer\/.+$ ignoreregex =
Set är sedan laddat från jail.d/customisation.local så här:
[traefik-shakespeer] enabled = true filter = shakespeer-ip logpath = /var/log/traefik/access.log maxretry = 3 findtime = 60 bantime = 6h port = http,https
Det lägger iptables-regler som blockar alla som kör programmet Shakespeer som spammar sönder oss med att försöka använda ip.shtml som inte har funkat på många, många år ...
Mediawiki
Mediawiki körs i en Docker container och startas med Docker Compose. Du hittar konfigurationen för det i /etc/mediawiki. Bilderna ligger i /var/mediawiki/images.
Bucky
Bucky används som en statsd till carbon relay som Traefik använder för att att skicka in data till Graphite. Den kör i Docker och startas med Docker Compose och ligger i /etc/bucky.