Bearbeiten von „Lenovo ThinkServer RD210

Zur Navigation springen Zur Suche springen
Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden. Ein eigenes Benutzerkonto hat eine ganze Reihe von Vorteilen.

Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und veröffentliche dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.

Aktuelle Version Dein Text
Zeile 177: Zeile 177:
; Siehe auch:
; Siehe auch:
* [[#Entstehung]]
* [[#Entstehung]]
== Installation ==
[[PT]] und [[Benutzer:FrankHebold | Frank Hebold]] orientierten sich ergänzend an der [http://www.commander1024.de/wordpress/2012/01/freebsd-9-mit-root-on-zfs/ "Anleitung" ''FreeBSD 9 mit Root on ZFS''].
=== Installation des Betriebssystems ===
==== Starten mit dem Startmedium ====
* mit Speicherabbild für den USB-Stick
==== Einrichtung der Festplatten zur Installation des Betriebssystems ====
Festplatten einrichten
<code>
: gpart create -s gpt /dev/da0
: gpart create -s gpt /dev/da1
: gpart create -s gpt /dev/da2
</code>
==== Partitionierung der Festplatten zur Installation des Betriebssystems ====
Festplatten partitionieren
<code>
: gpart add -s 512k -t freebsd-boot da0
: gpart add -s 512k -t freebsd-boot da1
: gpart add -s 512k -t freebsd-boot da2
: gpart add -s 3G -t freebsd-swap da0
: gpart add -s 3G -t freebsd-swap da1
: gpart add -s 3G -t freebsd-swap da2
: gpart add -t freebsd-zfs da0
: gpart add -t freebsd-zfs da1
: gpart add -t freebsd-zfs da2
</code>
==== Bootloader zur Installation des Betriebssystems ====
<code>
: gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 da0
: gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 da1
: gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 da2
</code>
==== Spiegeln des SWAP zur Installation des Betriebssystems ====
SWAP spiegeln (Redundanz erzeugen)
<code>
: gmirror label -v -b round-robin swap0 da0p2 da1p2 da2p2
: gmirror load
</code>
==== Anlegen des Pools für ZFS zur Installation des Betriebssystems ====
Pool für ZFS anlegen
<code>
: zpool create storich mirror da0p3 da1p3 da2p3
: zfs set mountpoint=/mnt storich
: zpool export storich
: zpool import -o cachefile=/var/tmp/zpool.cache storich
: zfs set checksum=fletcher4 storich
</code>
==== Anlegen der Datasets von ZFS zur Installation des Betriebssystems ====
Datasets von ZFS anlegen
<code>
: zfs create -o compression=on -o exec=on -o setuid=off storich/tmp
: chmod 1777 /mnt/tmp
: zfs create storich/usr
: zfs create storich/usr/home
: cd /mnt/
: ln -s /usr/home home
: zfs create -o compression=lzjb -o setuid=off storich/usr/ports
: zfs create -o compression=off -o exec=off -o setuid=off storich/usr/ports/distfiles
: zfs create -o compression=off -o exec=off -o setuid=off storich/usr/ports/packages
: zfs create -o compression=off -o exec=off -o setuid=off storich/usr/src
: zfs create storich/var
: zfs create -o compression=off -o exec=off -o setuid=off storich/var/crash
: zfs create -o exec=off -o setuid=off storich/var/empty
: zfs create -o compression=lzjb -o exec=off -o setuid=off storich/var/log
: zfs create -o compression=gzip -o exec=off -o setuid=off storich/var/mail
: zfs create -o exec=off -o setuid=off storich/var/run
: zfs create -o compression=lzjb -o exec=on -o setuid=off storich/var/tmp
: chmod 1777 /mnt/var/tmp
</code>
==== Installation des Betriebssystems<!-- :-D --> zur Installation des Betriebssystems ====
Installation FreeBSD 9.X
<code>
: tar -xf /usr/freebsd-dist/base.txz
: tar -xf /usr/freebsd-dist/kernel.txz
: tar -xf /usr/freebsd-dist/doc.txz
: tar -xf /usr/freebsd-dist/lib32.txz
: tar -xf /usr/freebsd-dist/ports.txz
: tar -xf /usr/freebsd-dist/src.txz
: zfs set readonly=on storich/var/empty
</code>
==== Konfiguration des FreeBSD nach der Installation des Betriebssystems ====
===== Änderung des Rootverzeichnisses nach der Installation des Betriebssystems =====
----
[[wikipedia:de:chroot | Änderung des Rootverzeichnisses]]
<code>
: chroot /mnt
</code>
===== Setzen des Passwortes für ''root'' nach der Installation des Betriebssystems =====
root-Passwort setzen
<code>
: passwd
</code>
===== Anpassung zum Einhängen des SWAP-Mirror für jeden Boot-Vorgang nach der Installation des Betriebssystems =====
SWAP beim Hochfahren einhängen
<code>
: ee /etc/fstab
</code>
<code>
#Device Mountpoint FStype Options Dump Pass#
/dev/mirror/swap0 none swap sw 0 0
</code>
===== Anpassung zur Aktivierung von ZFS für jeden Boot-Vorgang nach der Installation des Betriebssystems =====
Aktivierung des ZFS
<code>
: ee /etc/rc.conf
</code>
<code>
zfs_enable="YES"
</code>
Laden der benötigten Kernel-Module
<code>
: ee /boot/loader.conf
</code>
<code>
zfs_load="YES"
vfs.root.mountfrom="zfs:storich"
geom_mirror_load="YES"
</code>
===== Anpassung zur Aktivierung der Netzwerkeinstellungen für jeden Boot-Vorgang nach der Installation des Betriebssystems =====
Grundkonfiguration der Netzwerkeinstellungen
<code>
: ee /etc/rc.conf
</code>
<code>
hostname="''hostname der Maschine''"
defaultrouter="''IP des Defaultrouters''"
ifconfig_bce0="''IP der Maschine'' netmask 255.255.255.0"
</code>
===== Anpassung zur Festlegung der Dauer vom Bootscreen für jeden Boot-Vorgang nach der Installation des Betriebssystems =====
Festlegung (Reduzierung) der Dauer vom Bootscreen
<code>
: ee /boot/loader.conf
</code>
<code>
autoboot_delay="1"
</code>
===== Anpassung zur Festlegung der Zeitzone nach der Installation des Betriebssystems =====
Änderung der Zeitzone
<code>
: tzsetup
</code>
<code>
Europe
Germany
</code>
===== Abmelden aus dem Rootverzeichnisses nach der Installation des Betriebssystems =====
<code>
: exit
</code>
----
===== Kopieren der Informationen zum Pool für ZFS für jeden Boot-Vorgang nach der Installation des Betriebssystems =====
Informationen zum Pool für ZFS kopieren (oder verschieben)
<code>
: cp /var/tmp/zpool.cache /mnt/boot/zfs/
</code>
===== einmaliges Aushängen und Festlegung der zukünftige Einhängepunkte der Datasets von ZFS  für jeden Boot-Vorgang nach der Installation des Betriebssystems =====
Datasets von ZFS aushängen und zukünftige Einhängepunkte festlegen
<code>
: cd /
: zfs unmount -a
: zfs set mountpoint=legacy storich
: zfs set mountpoint=/tmp storich/tmp
: zfs set mountpoint=/usr storich/usr
: zfs set mountpoint=/var storich/var
</code>
==== Neustarten nach der Installation des Betriebssystems ====
FERTIG! (Neustart!)
<code>
: reboot
</code>
=== Anpassungen und Ergänzungen nach der Installation des Betriebssystems ===
==== Anpassung zur Festlegung der Adressen für die Weiterleitung der Mails des Betriebssystems ====
Erstellung und Weiterleitung von Adressen für Mails vom Betriebssystem
<code>
: cd /etc/mail
: ee alias
: make aliases
</code>
==== Erstellung der Liste für Nameserver ====
<code>
: ee /etc/resolv.conf
</code>
<code>
domain ''domain.tld''
nameserver "''IP''"
nameserver "''IP''"
</code>
==== Installation der Portscollection ====
<code>
: portsnap fetch extract
</code>
==== Bereitstellung von [http://www.freebsd.org/doc/de_DE.ISO8859-1/books/handbook/openssh.html SSH] ====
===== Konfiguration von OpenSSH =====
* [http://openssh.com/ openssh]
* ssh auf anderen port legen
* Vorschläge für sshd_config
<code>
: ee /etc/ssh/sshd_config
</code>
<code>
VersionAddendum
Port $SSH_PORTNUMMER
ListenAddress $JAIL_IP
Protocol 2
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 1m
PermitRootLogin no
StrictModes yes
MaxAuthTries 4
MaxSessions 5
AllowUsers $DER_COOLE_LEUTE_CLUB
PermitEmptyPasswords no
X11Forwarding no
Banner none
</code>
* immer schön manpage lesen und mit dem Feinkamm durchgehen
* keys + passwörter zur Authentifizierung
* in jails:'''ListenAddress 0.0.0.0'''
===== Aktivierung von OpenSSH für jeden Boot-Vorgang =====
<code>
: ee /etc/rc.conf
</code>
<code>
sshd_enable="YES"
</code>
==== Anpassung der Sicherheitseinstellungen ====
===== Festlegung zur Automatisierung der Updates =====
* Automatische Portscollection updaten
* Mailinfo zusenden zu
* nicht aktuellen Ports
* verbugten Ports
<code>
: ee /etc/crontab
</code>
<code>
0 13 * * * root portsnap -I cron fetch && portsnap update && pkg_version -vIL=
0 14 * * * root portaudit -Fda
0 */12 * * * root /usr/sbin/audit -n
</code>
===== [http://www.freebsd.org/doc/de_DE.ISO8859-1/books/handbook/audit-install.html Installation der Audit-Unterstützung] =====
* auditd starten
<code>
: /etc/rc.d/auditd start
</code>
====== Festlegen der Grundeinstellungen der Audit-Unterstützung ======
* flags setzen
<code>
: ee /etc/security/audit_control
</code>
<code>
flags:lo,aa,ex
</code>
* synchronize config:
<code>
: audit -s
</code>
====== Anpassung zur Aktivierung der Audit-Unterstützung für jeden Boot-Vorgang ======
<code>
: ee /etc/rc.conf
</code>
<code>
# Audit Deamon aktivieren
auditd_enable="YES"
</code>
===== [http://www.freebsd.org/doc/de_DE.ISO8859-1/books/handbook/firewalls-pf.html Installation des Paket Filters (PF) von OpenBSD und ALTQ] =====
* Paketfilter starten
<code>
: /etc/rc.d/pf start
: /etc/rc.d/pflog start
</code>
====== Festlegen der Regeln für den Paket Filter ======
<code>
: ee /etc/pf.conf
</code>
<code>
### MAKROS
thishost  "$MAIN_IP"
# portsnap5 204.9.55.80
portsnap_freebsd  "{ 204.109.56.116 204.9.55.80 }"
# auditfile.tbz is beeing fetched from portaudit.freebsd.org
portaudit_freebsd  "69.147.83.36"
# dnsserver from resolv.conf
dnsserver  "{ 85.214.73.63 217.79.186.148 27.110.120.30 204.152.184.76 194.150$
### RULES
# default deny
block in all
block out all
# lokales interface darf ohne einschränkungen
pass in quick on lo0 all
pass out quick on lo0 all
## HOST
# allow ssh
pass in on bce0 proto tcp from any to $thishost port $SSH_PORT
pass out on bce0 proto tcp from $thishost port $SSH_PORT to any
## allow outbound icmp
# echo request
pass out inet proto icmp icmp-type 8 code 0 keep state
# echo reply
pass in inet proto icmp icmp-type 0 code 0 keep state
# destination unreachable
pass in inet proto icmp icmp-type 3 keep state
# allow DNS lookups {also via tcp?} port 53
# what about traversal???
pass out on bce0 proto udp from $thishost to $dnsserver port 53 keep state
# allow portsnap to fetch from freebsd.org (ports?)
pass in on bce0 proto tcp from $portsnap_freebsd to $thishost
pass out on bce0 proto tcp from $thishost to $portsnap_freebsd
# allow portaudit to fetch auditfile.tbz via http
pass in on bce0 proto tcp from $portaudit_freebsd port 80 to $thishost
pass out on bce0 proto tcp from $thishost to $portaudit_freebsd port 80
## JAIL Beispiel (uneingeschränkt -> '''dumme Idee''', ports dienstabhänging freigeben
pass in on bce0 proto { tcp udp icmp } from any to $jail_srs14
pass out on bce0 proto { tcp udp icmp } from $jail_srs14 to any
</code>
* Regeln überprüfen
<code>
: pfctl -vnf /etc/pf.conf
</code>
* alte Regeln durch die neuen Regeln ersetzen
<code>
: pfctl -Fa -f /etc/pf.conf
</code>
====== Anpassung zur Aktivierung des Paket Filters für jeden Boot-Vorgang ======
<code>
: ee /etc/rc.conf
</code>
<code>
# Packet Filter aktivieren
pf_enable="YES"
# auf die erstellte Datei mit den Regeln für den Packet Filter verweisen
pf_rules="/etc/pf.conf"
# Log für den Packet Filterlog aktivieren
pflog_enable="YES"
</code>
==== Anpassung zur Aktivierung des Durchroutens aller Jails für jeden Boot-Vorgang ====
<code>
: ee /etc/rc.conf
</code>
<code>
# host system is gateway for jails
gateway_enable="YES"
</code>
==== Anpassung zur Aktivierung der Systemlog-Informationen für jeden Boot-Vorgang ====
<code>
: ee /etc/rc.conf
</code>
<code>
# syslogd an Hauptmaschine binden
syslogd_flags="-b $MAIN_IP"
</code>
==== Anpassung zur Sprache und Zeichensatz ====
<code>
: ee /etc/login.conf
</code>
<code>
# deutsch einstellen
default:\
    :charset=ISO-8859-1:\
    :lang=de_DE.ISO8859-1:\
</code>
<code>
: cap_mkdb /etc/login.conf
</code>
=== Zusammenfassung der Einträge und Anpassung nach der Installation des Betriebssystems ===
; Hinweis:
: Bei einer Mehrzahl von Einträgen sollte die Datei hier als Zusammenfassung abgebildet werden.
: Bei einmaligen Einträgen kann auf den entsprechende Abschnitt verwiesen werden.
==== /mnt/etc/fstab ====
siehe [[#Anpassung zum Einhängen des SWAP-Mirror für jeden Boot-Vorgang nach der Installation des Betriebssystems]]
==== /boot/loader.conf ====
<code>
zfs_load="YES"
vfs.root.mountfrom="zfs:storich"
geom_mirror_load="YES"
autoboot_delay="1"
</code>
==== /etc/rc.conf ====
<code>
zfs_enable="YES"
keymap="german.iso"
hostname="''Name des Servers''"
defaultrouter="''IP(v4)-Adresse des nächsten Routers (im C[https://de.wikipedia.org/wiki/IPv4#Netzklassen -Netz])''"
ifconfig_em0="''IP(v4)-Adresse des Servers (host)'' netmask 255.255.255.0"
sshd_enable="YES"
# Audit Deamon aktivieren
auditd_enable="YES"
# Packetfilter aktivieren
pf_enable="YES"
# Packetfilter Datei
pf_rules="/etc/pf.conf"
# Packetfilterlog aktivieren
pflog_enable="YES"
# host system is gateway for jails
gateway_enable="YES"
# syslogd an Hauptmaschine binden
syslogd_flags="-b ''IP(v4)-Adresse des Servers (host)''"
</code>
* Wenn IPv6 verfügbar ist, müssen noch weitere Anpassung für die Nutzung von IPv6 eingetragen werden.
* [https://www.davidandrzejewski.com/2010/03/04/freebsd-ipv6-tunnel-and-gateway-configuration/ Hilfreiche Seite für das Tunneln von ipv6 zu 4 Adressen]
<code>
#Aktivierung des IPv6 Supports
ipv6_enable="YES"
ipv6_defaultrouter="'''<IPv6-Adresse des nächsten Routers>'''"
ipv6_ifconfig_em0="'''<IPv6-Adresse des Servers (host)>''' prefixlen 128"
# host system is gateway for jails with ipv6
ipv6_gateway_enable="YES"
</code>
==== /etc/resolv.conf ====
siehe [[#Erstellung der Liste für Nameserver]]
* Aus Sicherheitsgründen wurde hier nicht der orginale Dateiinalt hingeschrieben
==== /etc/ssh/sshd_config ====
siehe [[#Konfiguration von OpenSSH]]
==== /etc/crontab ====
siehe [[#Festlegung zur Automatisierung der Updates]]
==== /etc/security/audit_control ====
sieh [[#Festlegen der Grundeinstellungen der Audit-Unterstützung]]
==== /etc/pf.conf ====
siehe [[#Festlegen der Regeln für den Paket Filter]]
* Aus Sicherheitsgründen wurde hier nicht der orginale Dateiinalt hingeschrieben
==== /etc/login.conf ====
siehe [[#Anpassung zur Sprache und Zeichensatz]]


== Siehe auch ==
== Siehe auch ==

Bitte beachte, dass alle Beiträge zu Wiki StuRa HTW Dresden von anderen Mitwirkenden bearbeitet, geändert oder gelöscht werden können. Reiche hier keine Texte ein, falls du nicht willst, dass diese ohne Einschränkung geändert werden können.

Du bestätigst hiermit auch, dass du diese Texte selbst geschrieben hast oder diese von einer gemeinfreien Quelle kopiert hast (weitere Einzelheiten unter StuRa HTW Dresden:Urheberrechte). ÜBERTRAGE OHNE GENEHMIGUNG KEINE URHEBERRECHTLICH GESCHÜTZTEN INHALTE!

Bitte beantworte die folgende Frage, um diese Seite speichern zu können (weitere Informationen):

Abbrechen Bearbeitungshilfe (wird in einem neuen Fenster geöffnet)