FHEM Forum

FHEM - Hardware => Einplatinencomputer => Thema gestartet von: Markus_F am 17 November 2024, 15:43:03

Titel: howto: Migration von Pi3 buster nach Pi4 bookworm mit busware SCC und fritz.box
Beitrag von: Markus_F am 17 November 2024, 15:43:03
Mein Pi3 gab den Geist auf, daher musste ich mein System nach Pi4 umziehen, anbei meine Erfahrung:
SW Installation
System konfigurieren:
fhem installieren

renew von letenrypt
Das ist sicherlich ein altes Thema, anbei mein Weg:
renew.sh:
#!/bin/bash
LOG=/log/letsencrypt_renew_$(date +%Y.%m.%d-%H.%M).log
echo "log file: ${LOG}"
# öffne port 80 in der Fritz
/root/fritz_set_port_80.pl 1
systemctl stop apache2             1>>$LOG 2>&1
/usr/bin/certbot renew             1>>$LOG 2>&1
systemctl start apache2            1>>$LOG 2>&1
# schließe port 80 in der Fritz
/root/fritz_set_port_80.pl 0

#!/usr/bin/perl -I lib/
use warnings;
use strict;
use Net::Fritz::Box;
use utf8;

# yes .... pw is not the best implementation
my $user     = 'id';
my $pass     = 'pw';
my $upnp_url = 'https://ip of fritz.box:49443';
my ip_pi     = 'ip of pi';

die "Need first parameter to be 0 or 1\n" if scalar @ARGV == 0;

my $NewEnabled = $ARGV[0];

die "First parameter must be 0 or 1, but is >$NewEnabled<\n"
   if $NewEnabled != 0 and $NewEnabled != 1;

my $f = Net::Fritz::Box->new(
          username => $user,
          password => $pass,
          upnp_url => $upnp_url,
        );

my $d = $f->discover();

my $services = $d->find_service('WANPPPConnection');
$services->errorcheck;
my $response = $services->call('AddPortMapping',
                 'NewRemoteHost'             => '0.0.0.0',
                 'NewExternalPort'           => 80,
                 'NewProtocol'               => 'TCP',
                 'NewInternalPort'           => 80,
                 'NewInternalClient'         => $ip_pi,
                 'NewEnabled'                => $NewEnabled,
                 'NewPortMappingDescription' => 'HTTP-Server',
                 'NewLeaseDuration'          => 0
               );

exit 1 if $response->error;
exit 0;