In der Oracle Cloud kann man kostenlos VPS Server (z.b. mit Ubuntu) hosten. Das wird unter dem Namen „free tier“ vermarktet.
Weiter Informationen finden sich unter: https://www.oracle.com/de/cloud/free/
Nachdem ich dort einen Linux Server mit Ubuntu aufgesetzt habe, gab es die Überlegung zu Anwendungsmöglichkeiten. Ich wollte mich schon immer mit Docker Containern beschäftigen, daher habe ich dazu entschlossen, den Passwortmanager Vaultwarden im Docker zu hosten. Zusätzlich sollte ein Reserve Proxy davor geschaltet werden, um zukünftig weitere Container unter anderen DNS Namen zu hosten.
Dazu habe ich zunächst die notwendigen Pakete installiert.
apt install apache2 docker.io docker-compose curl git wget sudo certbot python3-certbot-apache –y
Danach musste der Virtuelle Server konfiguriert werden.
nano /etc/apache2/sites-available/bitwarden.conf
<VirtualHost *:80>
ServerName <Domänenname>
ProxyPreserveHost On
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://localhost:8081/
ProxyPassReverse / http://localhost:8081/
</VirtualHost>
Nachdem der oben genannte Inhalt in die Datei geschrieben wurde, wird der virtuelle Host aktiviert, zusätzliche Module aktiviert und der Webserver neu gestartet um die Einstellungen zu übernehmen.
a2ensite bitwarden.conf
a2enmod ssl proxy proxy_http proxy_balancer lbmethod_byrequest
systemctl restart apache2
Um im nächsten Schritt mittels Certbot ein SSL Zertifikat zu erstellen, muss der gewünschte Domänenname auf die IP Adresse des Linuxservers zeigen (A Record).
Zusätzlich muss in der Oracle Cloud Adminoberfläche die Firewall des Servers (Instanz) konfiguriert werden und die Ports 80 und 443 für die Protokolle HTTP/HTTPs als Ingress Rule eingetragen werden.
Des weiteren muss in der Firewall der Linux Installation ebenfalls HTTP und HTTPs freigegeben werden.
sudo iptables -I INPUT -s 0.0.0.0/0 -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -s 0.0.0.0/0 -p tcp --dport 443 -j ACCEPT
sudo iptables-save
sudo apt-get update
sudo apt-get install iptables-persistent -y
sudo netfilter-persistent save
sudo netfilter-persistent reload
Danach sollte das Certbot Skript mit dem folgendem Befehl erfolgreich durchlaufen und ein Zertifikat erstellen können.
certbot --apache
Nun wird noch lediglich die aktuelle Version vom Vaultwarden Docker Container geladen und gestartet.
docker pull vaultwarden/server:latest
docker run -d --name vaultwarden -v /vw-data/:/data/ -p 8081:80 vaultwarden/server:latest
Jetzt kann man den Domänennamen über einen Webbrowser aufrufen und sich einen Tresor erstellen.
Dies stellt eine stark verkürzte Anleitung dar. Die Quelle zu den Befehlen und Vorgehensweisen sind hier aufgelistet:
https://smalldata.tech/blog/2021/09/08/how-to-open-ports-on-oracle-cloud-vm-running-on-ubuntu-20-04