Browse Source

Script für Tinc kompilieren aufgenommen

efbeff 7 months ago
parent
commit
a32b7eff90

+ 121 - 15
Community/Bildung/FF@home/14 APU4D4 aufbauen und mit Debian in Betrieb nehmen.page

@@ -156,6 +156,10 @@ Weitere Informationen im Debian Installationshandbuch [Debian Handbuch](https://
     d-i debian-installer/country string DE
     d-i debian-installer/language string en
     d-i debian-installer/locale string de_DE.UTF-8
+    d-i finish-install/keep-consoles boolean true
+    d-i finish-install/reboot_in_progress note
+    d-i grub-installer/bootdev  string /dev/sda
+    d-i grub-installer/with_other_os boolean true
     d-i hw-detect/load_firmware boolean true
     d-i keyboard-configuration/xkb-keymap select de
     d-i localechooser/supported-locales multiselect en_US.UTF-8
@@ -163,6 +167,7 @@ Weitere Informationen im Debian Installationshandbuch [Debian Handbuch](https://
     d-i mirror/http/directory string /debian
     d-i mirror/http/hostname string ftp.halifax.rwth-aachen.de
     d-i mirror/http/proxy string
+    d-i netcfg/choose_interface select auto
     d-i netcfg/choose_interface select enp1s0
     d-i netcfg/confirm_static boolean true
     d-i netcfg/dhcp_failed note
@@ -175,9 +180,18 @@ Weitere Informationen im Debian Installationshandbuch [Debian Handbuch](https://
     d-i netcfg/get_nameservers string 192.168.178.254
     d-i netcfg/get_netmask string 255.255.255.0
     d-i netcfg/hostname string berghofen.ffdo.net
-    d-i netcfg/link_wait_timeout string 10
     d-i netcfg/wireless_wep string
-    d-i partman-auto/choose_recipe select atomic
+    d-i partman-auto/expert_recipe string                         \
+          boot-root ::                                            \
+                  6000 8000 16000 ext3                            \
+                          $primary{ } $bootable{ }                \
+                          method{ format } format{ }              \
+                          use_filesystem{ } filesystem{ ext3 }    \
+                          mountpoint{ / } .                       \
+                  5000 6000 6000 linux-swap                       \
+                          method{ swap }                          \
+                          format{ } .                             \
+                          .
     d-i partman-auto/init_automatically_partition select biggest_free
     d-i partman-partitioning/confirm_write_new_label boolean true
     d-i partman/choose_partition select finish
@@ -185,54 +199,55 @@ Weitere Informationen im Debian Installationshandbuch [Debian Handbuch](https://
     d-i partman/confirm_nooverwrite boolean true
     d-i passwd/root-login boolean false
     d-i passwd/user-fullname string Debian apu
-    d-i passwd/user-password password ganzsicher
-    d-i passwd/user-password-again password ganzsicher
+    d-i passwd/user-password password insecure
+    d-i passwd/user-password-again password insecure
     d-i passwd/username string fb
+    d-i pkgsel/upgrade select safe-upgrade
     d-i preseed/run string netcfghack.sh
     d-i time/zone string Europe/Berlin
-    tasksel tasksel/first multiselect standard
     d-i pkgsel/include string \
     bird2 \
     bridge-utils \
     build-essential \
-    curl \
     debconf-utils \
+    curl \
     dkms \
     dnsutils \
     fail2ban \
     flashrom \
     git \
     info \
-    iperf \
+    iperf3 \
     iproute2 \
     iputils-tracepath \
+    libncurses-dev libreadline-dev zlib1g-dev liblzo2-dev libssl-dev \
     lshw \
     mlocate \
     mtr-tiny \
+    needrestart \
     neofetch \
     net-tools \
     openssh-server \
     psmisc \
     ssh-tools \
     syncthing \
-    libncurses-dev libreadline-dev zlib1g-dev liblzo2-dev libssl-dev \
     tree \
     unbound \
     vim \
     wireless-tools \
     wpasupplicant \
-    zip 
-    d-i finish-install/reboot_in_progress note
-    d-i grub-installer/bootdev  string /dev/sda
-    d-i grub-installer/with_other_os boolean true
+    zip
+    d-i preseed/late_command string cp /etc/network/interfaces  /target/etc/network/interfacesweg2
     popularity-contest popularity-contest/participate boolean false
-    d-i preseed/late_command string cp /etc/network/interfaces  /target/etc/network/interfacesweg2 ; env > /target/etc/network/env.lst
+    tasksel tasksel/first multiselect standard
+
+
 
  In der debseed.cfg sind die IP-adressen, Hostnamen und User/PW für den sudouser anzupassen.
  Es sind auch ein paar Pakete der Kategorie 'nice to have' aufgenommen.
 
 ## Ablauf der Installation
-Auf dem tftpserver das serielle Terminalprogramm starten, im zweiten Terminalfenster dnsmasq mit Option -d starten, damit die Ausgabe im Terminal sichtbar bleibt.
+Auf dem tftpserver das serielle Terminalprogramm starten, in einem zweiten Terminalfenster dnsmasq mit Option -d starten, damit die Ausgabe im Terminal sichtbar bleibt.
 Falls dnsmasq port 69 nicht öffnen kann, prüfen wer drauf sitzt:    
     sudo ss -lp 'sport = 69'  
     und mit kill processid beenden, dann sollte dnsmasq starten.  
@@ -251,7 +266,7 @@ Falls dnsmasq port 69 nicht öffnen kann, prüfen wer drauf sitzt:
     dnsmasq-tftp: sent /var/lib/tftp/netcfghack.sh to 192.168.178.51
 
 APU booten (Strom einschalten) und mit N PXE boot auswählen sobald es im seriellen Terminal angeboten wird. Nach einiger Zeit wird die Auswahl zur Netzschnittstelle angeboten.  
-Bei der Schnittstelle enp1s0 auswählen und bestätigen. (Es ist mir nicht gelungen, diese Auswahl automatisch zu treffen).  
+Bei der Schnittstelle enp1s0 auswählen und bestätigen. (Es ist mir nicht gelungen, diese Auswahl automatisch treffen zu lassen).  
 Wenn alles klappt, ist die APU nach ca 18 Minuten installiert und bootet in das frisch installierte System.  
  Bei Fehlern in der debseed.cfg springt die Installation in den interaktiven Modus.
 
@@ -260,4 +275,95 @@ Die Abhängigkeiten lib*-dev sind schon installiert, ebenso der gcc compiler fü
 
 ## Tabelle der Installationen und für das Kompilieren von tinc  
 
+<<<<<<< edited
+[link tincToDopdf](/img/240506-VM-Konfiguration.pdf)
+
+
+Kompilieren und teilweise Konfiguration von tinc 1.1pre18  
+Bitte die Kommentare im Code beachten
+
+
+    #!/usr/bin/sh
+    # tincanpass     2024-05-06
+    #
+    # tinc source wird geholt und kompiliert, installiert und etwas konfiguriert
+    # bird und unbound werden nicht behandelt
+    #
+    #  erwartet die bereits erfolgte Installation der Abhängigkeiten auf der APU
+    # falls nicht, hier die nötigen (zusatz)libs für tinc kompilieren
+    #
+    # sudo apt install libncurses-dev libreadline-dev zlib1g-dev liblzo2-dev libssl-dev
+    #
+    # tincpre18 holen (setzt internetzugriff voraus), kompilieren und installieren
+    # /etc/tinc Verzeichnisse anlegen, keys und rudimentäre tinc.conf erzeugen
+    # Aufruf als normaler user, sudo wird verwendet wenn nötig
+    cd
+    mkdir tinc
+    cd tinc
+    #tinc 1.1pre18 holen und entpacken
+    wget https://www.tinc-vpn.org/packages/tinc-1.1pre18.tar.gz
+    tar -xf tinc-1.1pre18.tar.gz
+    cd tinc-1.1pre18
+
+    # maketinc.sh erzeugen, damit tinc compile bei fehler alleine
+    # wiederholt werden kann
+    #  dazu nach Fehlerkorrektur im tinc-1.1pre18 Verzeichnis ./maketinc.sh aufrufen.
+    echo "#!/bin/sh" >maketinc.sh
+    echo "# tinc1.1 local compile + install mit eigenen DIRS " >>maketinc.sh
+    echo "make distclean" >>maketinc.sh
+    echo "./configure --prefix=/usr --sysconfdir=/etc --runstatedir=/run --localstatedir=/var --with-systemd" >>maketinc.sh
+    echo "make" >>maketinc.sh
+
+    # maketinc.sh ausführbar machen und aufrufen
+    chmod +x maketinc.sh
+    ./maketinc.sh
+
+    echo "Meldung ...deprecated ist KEIN Fehler"
+    echo "falls Fehler aufgetreten mit control-c abbrechen"
+    echo "Fehler korrigieren und ./maketinc.sh erneut aufrufen"
+    echo "tinc mit 'sudo make install' installieren"
+    echo "es werden auch die tinckeys erzeugt"
+    echo "lan/tinc.conf und wan/tinc.conf sind noch anzupassen"
+    echo "weiter mit enter."
+    read aa
+
+    # make install mit sudo ausführen im tinc-1.1pre18 Verzeichnis
+    sudo make install
+
+    # tinc Verzeichnisse anlegen und etwas vorkonfigurieren
+    # Die persönlichen Werte anpassen (berghofen, IP, connectto)
+    # Werte für lan einstellen
+    sudo mkdir -p /etc/tinc/lan/hosts
+    sudo tinc --net=lan init berghofen
+    sudo tinc --net=lan set Device /dev/net/tun
+    sudo tinc --net=lan set Mode switch
+    sudo tinc --net=lan set AddressFamily ipv4
+    sudo tinc --net=lan set MaxTimeout 30
+    sudo tinc --net=lan set BindToAddress 192.168.178.51
+    sudo tinc --net=lan set Port 10001
+    sudo tinc --net=lan set ConnectTo berglap
+    sudo tinc -b --net=lan generate-keys 4096
+
+    # Werte für wan einstellen
+    sudo mkdir -p /etc/tinc/wan/hosts
+    sudo tinc --net=wan init berghofen
+    sudo tinc --net=wan set Device /dev/net/tun
+    sudo tinc --net=wan set Mode switch
+    sudo tinc --net=wan set AddressFamily ipv4
+    sudo tinc --net=wan set MaxTimeout 30
+    sudo tinc --net=wan set BindToAddress 192.168.178.51
+    sudo tinc --net=wan set Port 661
+    sudo tinc --net=wan set ConnectTo nordstadt
+    sudo tinc --net=wan set ConnectTo hoerde
+    sudo tinc -b --net=wan generate-keys 4096
+    echo
+    echo "Die restliche Konfiguration muss noch angepasst werden."
+    echo " u.a. die hosts der Partner (nordstadt, hoerde, ...)
+    exit 0
+
+
+
+
+=======
 [link label](/img/20240506-VM-Konfiguration.pdf)
+>>>>>>> 60b55cb96cfeb0a0a14b7b9213e4abbf173ecc09