<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://xinux.net/index.php?action=history&amp;feed=atom&amp;title=Free_BSD_Template</id>
	<title>Free BSD Template - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://xinux.net/index.php?action=history&amp;feed=atom&amp;title=Free_BSD_Template"/>
	<link rel="alternate" type="text/html" href="https://xinux.net/index.php?title=Free_BSD_Template&amp;action=history"/>
	<updated>2026-08-23T15:03:38Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Xinux Wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://xinux.net/index.php?title=Free_BSD_Template&amp;diff=72722&amp;oldid=prev</id>
		<title>Thomas.will: Die Seite wurde neu angelegt: „Kategorie:FreeBSD Kategorie:UNIX '''!!!Bitte setzt alle Punkte um, es ist wichtig wenn ich später hilfe brauche!!!'''  =Anleitung für das Erstellen e…“</title>
		<link rel="alternate" type="text/html" href="https://xinux.net/index.php?title=Free_BSD_Template&amp;diff=72722&amp;oldid=prev"/>
		<updated>2026-08-16T16:01:33Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „&lt;a href=&quot;/index.php?title=Kategorie:FreeBSD&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Kategorie:FreeBSD (Seite nicht vorhanden)&quot;&gt;Kategorie:FreeBSD&lt;/a&gt; &lt;a href=&quot;/index.php?title=Kategorie:UNIX&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Kategorie:UNIX (Seite nicht vorhanden)&quot;&gt;Kategorie:UNIX&lt;/a&gt; &amp;#039;&amp;#039;&amp;#039;!!!Bitte setzt alle Punkte um, es ist wichtig wenn ich später hilfe brauche!!!&amp;#039;&amp;#039;&amp;#039;  =Anleitung für das Erstellen e…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Kategorie:FreeBSD]]&lt;br /&gt;
[[Kategorie:UNIX]]&lt;br /&gt;
'''!!!Bitte setzt alle Punkte um, es ist wichtig wenn ich später hilfe brauche!!!'''&lt;br /&gt;
&lt;br /&gt;
=Anleitung für das Erstellen einer Vorlage für ein einfaches FreeBSD-System=&lt;br /&gt;
* Für VMs als Server empfiehlt es sich eine Vorlage zu erstellen, die schon minimal konfiguriert ist&lt;br /&gt;
* Der Nutzer ''root'' soll das Passwort ''radler'' haben&lt;br /&gt;
* Ein Benutzer ''kit'' mit dem Passwort ''kit'' soll angelegt werden&lt;br /&gt;
* Die Vorlage soll '''keine''' graphische Oberfläche haben (Bei der Installation nicht auswählen)&lt;br /&gt;
* Ein [[:Kategorie:SSH|SSH]]-Server soll aber für die Remoteverwaltung aktiviert werden&lt;br /&gt;
&lt;br /&gt;
= Mindestvoraussetzungen für Hardware =&lt;br /&gt;
;Daten&lt;br /&gt;
* 1 CPU&lt;br /&gt;
* 2 GB RAM&lt;br /&gt;
* 20 GB Festplattenspeicher&lt;br /&gt;
;Layout&lt;br /&gt;
* ZFS (Auto-ZFS bei der Installation)&lt;br /&gt;
;Weitere Einstellungen&lt;br /&gt;
* Hostname: freebsd-template.it.int&lt;br /&gt;
* Netzwerk: Netzwerkbrücke '''br0''' oder das externe Interface des Hosts (Schnittstelle meist '''em0''', '''vtnet0''' oder '''vmx0''')&lt;br /&gt;
&lt;br /&gt;
=Benutzer=&lt;br /&gt;
*user: kit &lt;br /&gt;
*pass: kit&lt;br /&gt;
*admin: root&lt;br /&gt;
*pass: radler&lt;br /&gt;
&lt;br /&gt;
= Installationsoptionen =&lt;br /&gt;
* SSH (sshd) und ntpd sollten bei den Startdiensten angekreuzt werden&lt;br /&gt;
* Systemkomponenten wie src oder ports werden für ein schlankes Template nicht zwingend benötigt&lt;br /&gt;
&lt;br /&gt;
= Einrichtung =&lt;br /&gt;
Wir bringen das System auf den neusten Stand&lt;br /&gt;
*'''su -'''&lt;br /&gt;
*'''pkg bootstrap''' (falls pkg noch nicht initialisiert ist)&lt;br /&gt;
*'''pkg update'''&lt;br /&gt;
*'''pkg upgrade'''&lt;br /&gt;
&lt;br /&gt;
Diese Pakete sollte man nachinstallieren, um auf der Kommandozeile arbeiten zu können&lt;br /&gt;
*'''pkg install bash vim sudo git curl tcpdump nmap'''&lt;br /&gt;
&lt;br /&gt;
Falls ein Benutzer passwortlos zum root-Nutzer werden darf, muss dieser in der ''wheel''-Gruppe sein und die ''/usr/local/etc/sudoers''-Datei angepasst werden&lt;br /&gt;
*'''pw groupmod wheel -m kit'''&lt;br /&gt;
* sicheres Bearbeiten der sudoers-Datei (Achtung: liegt unter FreeBSD in /usr/local/etc/)&lt;br /&gt;
*'''visudo'''&lt;br /&gt;
 # %wheel ALL=(ALL) ALL&lt;br /&gt;
 # Neuer Eintrag (Kommentarzeichen entfernen und NOPASSWD ergänzen)&lt;br /&gt;
 %wheel ALL=(ALL) NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
= Automatische SSH-Hostschlüssel nur auf dem Template erzeugen =&lt;br /&gt;
&lt;br /&gt;
Damit nicht alle Klone des Templates dieselben SSH-Hostschlüssel verwenden, sollen die Schlüssel nur dann neu erzeugt werden, wenn der Hostname ''-template'' enthält. Dies wird beim Start automatisch über ein rc.d-Skript vor dem sshd.service erledigt.&lt;br /&gt;
&lt;br /&gt;
== Skript zur Erzeugung der Schlüssel ==&lt;br /&gt;
&lt;br /&gt;
Ordner erstellen:&lt;br /&gt;
* '''mkdir -p /usr/local/etc/rc.d/'''&lt;br /&gt;
&lt;br /&gt;
Datei: /usr/local/etc/rc.d/ssh_template_keys&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
#&lt;br /&gt;
# PROVIDE: ssh_template_keys&lt;br /&gt;
# REQUIRE: FILESYSTEMS&lt;br /&gt;
# BEFORE: sshd&lt;br /&gt;
# KEYWORD: nojail&lt;br /&gt;
&lt;br /&gt;
. /etc/rc.subr&lt;br /&gt;
&lt;br /&gt;
name=&amp;quot;ssh_template_keys&amp;quot;&lt;br /&gt;
rcvar=&amp;quot;ssh_template_keys_enable&amp;quot;&lt;br /&gt;
start_cmd=&amp;quot;ssh_template_keys_start&amp;quot;&lt;br /&gt;
&lt;br /&gt;
ssh_template_keys_start()&lt;br /&gt;
{&lt;br /&gt;
    current_host=$(hostname -s)&lt;br /&gt;
    &lt;br /&gt;
    case &amp;quot;$current_host&amp;quot; in&lt;br /&gt;
        *-template)&lt;br /&gt;
            echo &amp;quot;Template erkannt – SSH-Hostschlüssel werden neu erzeugt.&amp;quot;&lt;br /&gt;
            rm -f /etc/ssh/ssh_host_*&lt;br /&gt;
            /usr/bin/ssh-keygen -A&lt;br /&gt;
            ;;&lt;br /&gt;
        *)&lt;br /&gt;
            echo &amp;quot;Nicht das Template – keine Änderung.&amp;quot;&lt;br /&gt;
            ;;&lt;br /&gt;
    esac&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
load_rc_config $name&lt;br /&gt;
run_rc_command &amp;quot;$1&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''chmod +x /usr/local/etc/rc.d/ssh_template_keys'''&lt;br /&gt;
&lt;br /&gt;
== rc.d-Dienst aktivieren ==&lt;br /&gt;
&lt;br /&gt;
Anstatt systemd nutzen wir sysrc, um den Dienst in der /etc/rc.conf zu aktivieren:&lt;br /&gt;
&lt;br /&gt;
* '''sysrc ssh_template_keys_enable=&amp;quot;YES&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
= CA ziehen und einbinden =&lt;br /&gt;
FreeBSD nutzt certctl anstelle von update-ca-certificates.&lt;br /&gt;
&lt;br /&gt;
*'''mkdir -p /usr/local/etc/ssl/certs'''&lt;br /&gt;
*'''fetch https://web.samogo.de/certs/kit-ca.crt'''&lt;br /&gt;
*'''cp kit-ca.crt /usr/local/etc/ssl/certs/'''&lt;br /&gt;
*'''certctl rehash'''&lt;br /&gt;
&lt;br /&gt;
= Skript zur automatischen Netzwerkkonfiguration (Setup-Skript) =&lt;br /&gt;
Damit nach dem Klonen das Netzwerk schnell eingerichtet ist, hinterlegen wir unser Setup-Skript.&lt;br /&gt;
&lt;br /&gt;
Datei: /usr/local/sbin/freebsd-setup.sh&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/usr/local/bin/bash&lt;br /&gt;
&lt;br /&gt;
# Standardwerte setzen&lt;br /&gt;
FQDN=&amp;quot;&amp;quot;&lt;br /&gt;
ADDR=&amp;quot;&amp;quot;&lt;br /&gt;
GW=&amp;quot;&amp;quot;&lt;br /&gt;
NS=&amp;quot;&amp;quot;&lt;br /&gt;
USE_DHCP=0&lt;br /&gt;
IFACE=&amp;quot;em0&amp;quot; # Hier dein Interface anpassen!&lt;br /&gt;
&lt;br /&gt;
# Optionen mit getopts parsen&lt;br /&gt;
while getopts &amp;quot;f:a:g:n:d&amp;quot; opt; do&lt;br /&gt;
  case $opt in&lt;br /&gt;
    f) FQDN=&amp;quot;$OPTARG&amp;quot; ;;&lt;br /&gt;
    a) ADDR=&amp;quot;$OPTARG&amp;quot; ;;&lt;br /&gt;
    g) GW=&amp;quot;$OPTARG&amp;quot; ;;&lt;br /&gt;
    n) NS=&amp;quot;$OPTARG&amp;quot; ;;&lt;br /&gt;
    d) USE_DHCP=1 ;;&lt;br /&gt;
    *) echo &amp;quot;Ungueltige Option&amp;quot; &amp;gt;&amp;amp;2; exit 1 ;;&lt;br /&gt;
  esac&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
if [[ -z &amp;quot;$FQDN&amp;quot; ]]; then&lt;br /&gt;
  echo &amp;quot;Fehlender FQDN! Nutzung: $0 -f &amp;lt;FQDN&amp;gt; [-d | -a &amp;lt;IP/CIDR&amp;gt; -g &amp;lt;GW&amp;gt; -n &amp;lt;NS&amp;gt;]&amp;quot;&lt;br /&gt;
  exit 1&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;Setze Hostname auf: $FQDN&amp;quot;&lt;br /&gt;
sysrc hostname=&amp;quot;$FQDN&amp;quot;&lt;br /&gt;
&lt;br /&gt;
if (( USE_DHCP == 1 )); then&lt;br /&gt;
  sysrc ifconfig_${IFACE}=&amp;quot;DHCP&amp;quot;&lt;br /&gt;
  sysrc -x defaultrouter&lt;br /&gt;
else&lt;br /&gt;
  sysrc ifconfig_${IFACE}=&amp;quot;inet $ADDR&amp;quot;&lt;br /&gt;
  sysrc defaultrouter=&amp;quot;$GW&amp;quot;&lt;br /&gt;
  DOMAIN=&amp;quot;${FQDN#*.}&amp;quot;&lt;br /&gt;
  echo &amp;quot;search $DOMAIN&amp;quot; &amp;gt; /etc/resolv.conf&lt;br /&gt;
  echo &amp;quot;nameserver $NS&amp;quot; &amp;gt;&amp;gt; /etc/resolv.conf&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;Aenderungen aktivieren mit: service netif restart ${IFACE} &amp;amp;&amp;amp; service routing restart&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''chmod +x /usr/local/sbin/freebsd-setup.sh'''&lt;br /&gt;
&lt;br /&gt;
== Anpassen eines Rechners - Beispiel (Manuell ohne Skript) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;background-color: #f2f2f2;&amp;quot;&lt;br /&gt;
! Parameter !! Wert !! Erläuterung&lt;br /&gt;
|-&lt;br /&gt;
| '''Netzwerk (NIC)''' || Externe Schnittstelle || Interface-Zuweisung in VirtualBox (em0)&lt;br /&gt;
|-&lt;br /&gt;
| '''IP''' || 10.88.213.21 || Statische IP&lt;br /&gt;
|-&lt;br /&gt;
| '''CIDR''' || 24 || Classless Inter-Domain Routing Präfixlänge&lt;br /&gt;
|-&lt;br /&gt;
| '''GW''' || 10.88.213.1 || GATEWAY &lt;br /&gt;
|-&lt;br /&gt;
| '''NS''' || 192.168.16.88 || Resolver &lt;br /&gt;
|-&lt;br /&gt;
| '''FQDN''' || freebsd.it.int || Fully Qualified Domain Name&lt;br /&gt;
|-&lt;br /&gt;
| '''SHORT''' || freebsd || Short Name &lt;br /&gt;
|-&lt;br /&gt;
| '''DOM''' || it.int || Domain Name&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Hostname==&lt;br /&gt;
*sysrc hostname=&amp;quot;&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''FQDN'''&amp;lt;/span&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Netzwerk==&lt;br /&gt;
Bearbeitet wird unter FreeBSD alles zentral über sysrc oder direkt in der '''/etc/rc.conf'''.&lt;br /&gt;
&lt;br /&gt;
 Statische IP:&lt;br /&gt;
*sysrc ifconfig_em0=&amp;quot;inet &amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''IP/CIDR'''&amp;lt;/span&amp;gt;&amp;quot;&lt;br /&gt;
*sysrc defaultrouter=&amp;quot;&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''GW'''&amp;lt;/span&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 DNS (In /etc/resolv.conf eintragen):&lt;br /&gt;
 search &amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''DOM'''&amp;lt;/span&amp;gt;&lt;br /&gt;
 nameserver &amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''NS'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Management==&lt;br /&gt;
;Netzwerkkarte und Routing neustarten (Anwenden der Änderungen)&lt;br /&gt;
*service netif restart em0 &amp;amp;&amp;amp; service routing restart&lt;br /&gt;
;Gesamtes Netzwerk runterfahren&lt;br /&gt;
*service netif stop&lt;br /&gt;
;Gesamtes Netzwerk hochfahren&lt;br /&gt;
*service netif start&lt;br /&gt;
&lt;br /&gt;
==Reboot==&lt;br /&gt;
*reboot&lt;br /&gt;
=Kontrolle=&lt;br /&gt;
;Stimmt die IP?&lt;br /&gt;
*ifconfig em0&lt;br /&gt;
;Stimmt die Route?&lt;br /&gt;
*netstat -rn&lt;br /&gt;
;Stimmt der Nameserver und die Search Domain?&lt;br /&gt;
*cat /etc/resolv.conf&lt;br /&gt;
;Konnektivitäts-Test&lt;br /&gt;
*ping -c 1 9.9.9.9&lt;br /&gt;
;Funktioniert unser Resolver (Damit ist der eingetragene Nameserver gemeint)?&lt;br /&gt;
*host heise.de&lt;/div&gt;</summary>
		<author><name>Thomas.will</name></author>
	</entry>
</feed>