Kategorien
Fotos Reisen

Bukarest, Paris des Ostens

Tag 1

Eines vorweg, Bukarest als Paris des Ostens zu bezeichnen ist etwas übertrieben. Es gibt zwar einige Referenzen wie der Triumphbogen, aber das kann mit dem Original auf keinen Fall mithalten.

Die Fahrt mit dem Bus vom Flughafen ins Zentrum über 16 km kostet für zwei Personen 1,22 €. Wir kommen in unserem schönen Boutique-Hotel an.

Zimmer

Viele Frauen haben aufgespritzte Lippen und lange, glatte, unnatürlich schwarze Haare. Bei den Männern ist schwarz unbedingt notwendig als Oberbekleidung.

Abends steht eine Familie vor dem Eingang zu unserem Hotel, und kommt mit dem Code nicht rein. Sie überlegen sich schon, wo sie die Nacht verbringen sollen. Doch nach mehrmaligen Versuchen mit dem Touchpad geht die Tür auf und alles ist gut.

Der Zigarettenkonsum scheint wesentlich höher zu sein als bei uns. Kippen liegen überall herum, aber ansonsten ist die Stadt sehr sauber.

Auch die Toiletten waren alle sehr sauber.

Die wahren Herrscher der Stadt sind die Tauben, die manchmal auch gefüttert werden.

Tag 2

Wir machen eine Führung im Parlamentsgebäude. Nach ca. einem Kilometer haben wir ungefähr 5 % der gesamten Flächen gesehen. Es ist bombastisch, wie groß alles ist!

Parlamentsgebäude

Bis jetzt sind alle Kellner sehr unfreundlich. Vermutlich liegt das an der kommunistischen Geschichte. Damals machte es keinen Sinn freundlich zu sein, man bekam deswegen nicht mehr Geld.

Wir haben die ersten Radfahrer gesehen, eine etwas seltene Spezies hier.

Und das erste ausländische Auto, ein Österreicher aus Wien 🙂

Tag 3

Wir machen einen Streifzug in den Norden, vorbei am tollen Athenäum, an tollen Villen, aber auch an verfallenen.

Hier gibt es einen gut ausgebauten Radweg. Ansonsten ist es eher unangenehm, mit dem Rad in Bukarest unterwegs zu sein.

Tag 4

Nach dem langen Weg bis zum hervorragenden Museum der zeitgenössischen Kunst finden wir den ersten freundlichen Servicemitarbeiter. Vermutlich hat er als ca. 20-Jähriger eine etwas andere Einstellung und hat die kommunistische Zeit hinter sich gelassen bzw. nie erlebt.

Beim Trambahnfahren mit einer alten Trambahn muss man sehr laut schreien, um sich unterhalten zu können. Der Trambahnfahrer bei den alten Linien muss immer aussteigen, wenn er die Weichen umstellen will. Ein Fahrplan hängt nirgends aus. Der einfache Fahrpreis pro Person beträgt 3 Lei. Und wenn es quietscht, fährt die Trambahn um die Kurve.

Tickets kann man nur an speziellen Kiosken kaufen, jedenfalls haben wir keinerlei Automaten gefunden.

Die wieder aufladbare Karte muss dann in der Tram oder Bus validiert werden, dann kann man damit 90 Minuten unterwegs sein. Das Guthaben auf der Karte war uns nicht ersichtlich.

In manchen Trambahnen kann man auch direkt mit Kreditkarte bezahlen. Das ist fortschrittlich!

Tag 5

Mit dem Bus fahren wir zum Park Herăstrău im Norden.

Die Kellner sagen meistens „CashCard“, ohne ein „oder“ und auch nicht „wollen sie mit Karte oder bar bezahlen?“.

Der Park war langweilig, der japanische Garten eine Katastrophe.

Gefühlt haben sie irgendwo auf der Welt etwas Tolles gesehen, und dann gedacht, „das machen wir auch in unserer Stadt“.

Aber eine Kopie ist halt immer eine Kopie, und wenn sie dann auch noch schlecht ist …

Im neureichen Viertel trinken wir den schlechtesten und teuersten Lambrusco Rose.

Tag 6

Heute ist ein religiöser Tag geplant.

Zuerst wollen wir in eine Synagoge, dort wollten sie 30 Lei / Person, was wir aber als Bargeld nicht mehr hatten.

Dann haben wir uns in ein Café gesetzt und ein gutes Croissant gegessen.

Nun ab zum Geldautomaten um die Ecke. Der wollte aber nur Überweisungen mit QR-Code annehmen. Also zum nächsten Automaten. Karte rein, 200 Lei gewählt, „das tägliche Limit ist erreicht“. Was? Ich hab’s noch mit dem debit account probiert, es kam aber die gleiche Fehlermeldung.

Anschließend sah ich auf dem Handy, dass ich zu wenig abheben wollte, das Minimum sind 50 € …

Um 13:15 waren wir wieder bei der Synagoge, die eigentlich bis 14:30 offen ist. Aber der Pförtner hat trotzdem behauptet, dass sie schon geschlossen ist -:(

Zwischen Bank und Synagoge sind wir ca. 5-mal über die gleiche Kreuzung gegangen, was wegen der Wartezeiten an der Ampel eine gefühlte halbe Stunde gedauert hat.

Es geht weiter auf den jüdischen Friedhof, in den wir nicht hineinkommen.

Wir sehen das zweite ausländische Auto, aus Frankreich!

Aber in den Belu Friedhof schaffen wir es. Bei manchen Grabsteinen fehlt das Sterbe-Datum. Wir vermuten, dass die Personen während des Kommunismus verschleppt wurden, und das Sterbe-Datum nicht bekannt ist.

Wir haben zur Abwechslung einen netten Kellner, der mehr als 3 Worte mit uns spricht.

Oh ja, das Bier war OK 😉

Tag 7

Wir machen einen Ausflug zum sogenannten Dracula Schloss. Es geht schon um 07:00 mit dem Bus los.

Die Tickets bekommen wir via GetYourGuide. Mit denen haben wir bis jetzt immer nur sehr gute Erfahrungen gemacht.

Auf nach Transsylvanien! Der Name kommt von den Römern, „trans“ von überqueren, „Silva“ von Wald.

Das Schloss Bran (Dracula Schloss) kann man für einen Tag zu 500.000 $ mieten. Elon Musk hat das letztes Jahr getan, ist dann aber selbst nicht auf der Party erschienen. Jedenfalls sagt die Flight Radar App, dass sein Privatflugzeug nicht hier war.

Weitere Stationen auf der Tour sind das Schloss Peles und die mittelalterliche Stadt Brasov.

Wir sahen Schnee, auf ca. 2400 m, auf einem Berg war ein Kreuz mit einer Höhe von 44 m. In einem populären Skigebiet in den Karpaten.

Next stop: Brasov oder auch Kronstadt. Neben der schönen schwarzen Kirche mit tollen Teppichen und einer schönen Orgel gibt es dort nicht viel zu sehen.

Schloss Bran und Brasov wurden von den Sachsen im 13. Jahrhundert gegründet.

Das Schloss Peles ist innen außergewöhnlich toll. Es ist das erste Schloss, das komplett elektrisch ausgestattet ist. Besonders der florentinische Saal mit den Murano Glas Lüstern hat uns beeindruckt.

Tag 8

Rumänisch Orthodoxe Kirchen gibt es unheimlich viele, und sehr viele davon sind wirklich sehenswert, wie zum Beispiel das Kloster Radu Voda.

Kloster Radu Voda

Zum dritten Mal machen wir einen Versuch in der Synagoge. Aber auch diesmal sind wir nicht erfolgreich, weil sie heute geschlossen hat – 🙁

In manchen Restaurants kann man elektronisch bestellen und auch elektronisch wieder für seinen Tisch auschecken und bezahlen. Damit werden die Bedienungen bald überflüssig 🙁

Es war ja schon schwierig, einigermaßen schöne Postkarten zu finden, aber Briefmarken war noch schwieriger bzw. da waren wir nicht erfolgreich. Briefmarken gibt es in ganz Rumänien nur im Postoffice und das hat am Feiertag natürlich geschlossen. Am Flughafen gab es auch eines, aber das war um diese Uhrzeit geschlossen.

Definitiv macht es Sinn ein Automatengeschäft in Rumänien aufzumachen, entweder für Briefmarken oder für Tram Tickets. Also wurden die Postkarten in Deutschland abgeschickt.

Sehr viel Aufwand verwenden Sie für die Restaurierung von Gebäuden, was ganz toll ist.

Bei uns dagegen wird das Geld gefühlt in den Straßenbau gesteckt.

Fotos

Hier wie üblich ein Link zu meinem Fotoalbum, das erste Mal von meiner eigenen Cloud (Nextcloud).

Parlamentsgebäude

Und meine Liste der hot Spots.

Kategorien
Software

Nextcloud with an RPi

To complete my home network, I installed Nextcloud with an RPi.

The bigger vision is to get independent of the big companies, specifically from the US companies.

Let’s see which services I will provide with my own cloud, options are:

  • Files
  • Contacts
  • Calendar
  • Photos

It’s quite easy to use a package specifically built for the RPi called Nextcloudpi.

Nextcloud with an RPi

However, it does not run in a docker container, as the providers stopped creating an image. On the other hand, you can adjust much more on the LAMP system itself.

I just followed https://help.nextcloud.com/t/raspberry-pi-4-booting-from-usb-device-no-microsd/126320 and https://help.nextcloud.com/t/how-to-access-nextcloudpi-first-time-activation/126309 for the setup.

After that, everything was running locally already.

It became tricky with accessing the nextcloud server from outside my local network, as I had to configure the Reverse Proxy (NPM) accordingly.

The prerequisite is that you have configured a domain and routed that to the Dynamic DNS server.

At the NPM side the configuration looks like that:

Proxy Host:

  • Scheme: http
  • Cache Assets: On
  • Block Common Exploits: On
  • Websockets Support: On

SSL Certificate:

  • Force SSL: On
  • HTTP/2 Support: On
  • HSTS Enabled: On
  • HSTS Subdomains: Off

Advanced:

location / {
    proxy_pass http://yourIP_of_the_Nextcloud;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }

location /.well-known/carddav {
    return 301 $scheme://$host/remote.php/dav;
}

location /.well-known/caldav {
    return 301 $scheme://$host/remote.php/dav;
}

location ^~ /.well-known {
    return 301 $scheme://$host/index.php$uri;
}
proxy_hide_header Upgrade;

At nextcloudpi configure the following parameters:

nc-trusted-domains
nc-trusted-proxies

Very important is also to switch off the Force SSL at the Nextcloudpi configuration!

This means we are now terminating the SSL at the Reverse Proxy (NPM), as usual. The communication between the Reverse Proxy and the Nextcloud server runs via http.

Kategorien
Software

Installing RPis with MQTT in Home Assistant

To add RPis to the Home Assistant, we are installing on each RPi a Python script as a daemon that sends data via MQTT messages to the MQTT Broker installed on the Home Assistant.

Unfortunately, if your Home Assistant is also running on an RPi but based on HAOSS, you can not use that approach. Later more to that.

First, install the MQTT Integration on the Home Assistant.

Adding RPis to the Home Assistant

Just make sure that the automatic detection of MQTT devices is still enabled.

Then go to System / Add-Ons / Mosquitto Broker. Make sure it’s started while booting.

Under Configuration, add a username and a password. The YAML Code looks like this:

logins:
  - username: username
    password: password
require_certificate: false
certfile: fullchain.pem
keyfile: privkey.pem
customize:
  active: false
  folder: mosquitto

Now, let’s go to the RPi that we want to control. We need to install the script there. This includes the daemon that sends the MQTT messages to the Home Assistant.

Perform all the steps mentioned in https://github.com/ironsheep/RPi-Reporter-MQTT2HA-Daemon/blob/master/README.md

In the config.ini file, configure at least the following parameters:

hostname = 192.xx.yyy.zz
sensor_name = rpi-5
username = MQTT-UserName
password = MQTT-Password

Ironsheep did a great job. Thank you very much!

As soon as everything is set up and you see the data in your Home Assistant, you can also use the custom card that ironsheep compiled.

https://github.com/ironsheep/lovelace-rpi-monitor-card

Further options can be configured based on https://thesmarthomejourney.com/2021/11/15/monitoring-raspberry-pi-with-ha/

Also very nice are the mini graph cards, checkout https://github.com/kalkih/mini-graph-card

If you have your Home Assistant running on an RPi you can setup Monitoring via that approach https://www.youtube.com/watch?v=WcmxI06TAuI&t=1696s

Kategorien
Software

Self-hosted Bitwarden Password Manager

Another RPi application is a self-hosted Bitwarden Password Manager.

The advantages of that solution are:

  • You own your data, as it’s not in the cloud
  • Reduced risk that your passwords get stolen
  • Passwords are synced over all your devices

What you need is:

  • RPi
  • Docker installed
  • NPM Nginx Proxy Manager
  • Subdomain configured

I installed it based on the following setup guide: https://pimylifeup.com/raspberry-pi-bitwarden

Self-hosted Bitwarden Password Manager

Just make sure that you configure the container with the correct ports without the IP Address, like

sudo docker run -d --name bitwarden \
    --restart=always \
    -v /bw-data/:/data/ \
    -p 8080:80 \
    -p 3012:3012 \
    vaultwarden/server:latest

You need a domain configured at your DNS provider with a CNAME entry like

bitwarden.example.de

If you are using a Dynamic DNS Provider, route the traffic there.

It is also necessary to have SSL terminated, in this case, at the NPM Proxy Manager.

Configure the Proxy Host with the following parameter:

Details
IP: The IP Address of your server, e.g. 192.168.178.34
Forward Port: 8080
Block Common Exploits
Websockets Support

SSL
Force SSL
HTTP/2 Support
HSTS Enabled
HSTS Subdomains

Advanced
 location /admin {
  return 404;
  }

  location / {
    proxy_pass http://YOURIP:8080;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
  
  location /notifications/hub {
    proxy_pass http://YOURIP:3012;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }
  
  location /notifications/hub/negotiate {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_pass http://YOURIP:8080;
  }

Refer also to https://vaultwarden.discourse.group/t/vaultwarden-and-nginx-proxy-manager/1307/17

Actually, we have installed vaultwarden now.

Now you should be able to set up a user and a vault.

Also consider setting up a backup solution, just take a look at

https://github.com/dani-garcia/vaultwarden/wiki/Backing-up-your-vault#examples and https://dizzytech.de/posts/backing_up_vaultwarden/

I’m using bruceforce with the following command:

docker run -d --restart=always --name vaultwarden-backup --volumes-from=bitwarden -e BACKUP_DIR=/myBackup -e TIMESTAMP=true -e DELETE_AFTER=30 -e TZ=CEST -v /bw-data/myBackup:/myBackup bruceforce/vaultwarden-backup

You should also accompany this with backing up the files on at least two different physical devices, either via rsync or FTP or rclone, best running via a cron job.

Restore

There is no automated restore process to prevent accidental data loss. So if you need to restore a backup, you need to do this manually by following the steps below (assuming your backups are located at ./backup/ and your vaultwarden data is located at /var/lib/docker/volumes/vaultwarden/_data/)

# Delete any existing sqlite3 files
rm /var/lib/docker/volumes/vaultwarden/_data/db.sqlite3*

# Extract the archive
# You may need to install xz first
tar -xJvf ./backup/data.tar.xz -C /var/lib/docker/volumes/vaultwarden/_data/
Kategorien
Software

WireGuard VPN

Wow, how easy is it to set up a WireGuard VPN with the Raspberry Pi!

I can now cover the following use cases:

  1. Access all the devices of my local network (router, RPis, drives, etc.) from abroad
  2. Access German streaming services like ARD, ZDF, … from abroad

Getting there was not so easy. First, I had the idea of using the FritzBox’s VPN. But it turned out that the FritzBox only supports IPSec, and Android bigger than V11 does not support that. So, I decided to go for another solution.

I also had an RPi4 lying around after I had upgraded my website to the RPi5.

So I installed the Raspberry PI OS (64-BIT) on the RPi4.

State-of-the-art installations are based on docker.

So, I was installing docker and docker-compose.

Everything is based on https://pimylifeup.com/wireguard-docker/
(Many thanks!)

WireGuard VPN
WireGuard

Setting up the clients was also super easy.

On the mobile, I did it with a QR scan; on the laptop, I was exporting the config.

The advantages of this docker container/image are:

  • Managing the Clients via a GUI including QR Code
  • Gateway configured for accessing the Internet via your router