OPSI/Installation
Inhaltsverzeichnis
Ziel
Am Ende der Installation wird ein Host mit folgenen Funktionen zur Verfügung stehen.
Primär
- OPSI-Server
- PrimaryDomainController (PDC im NT4 Style)
- dhcp-Server
- name-Server
Sekundär
- openvpn
- Backup wichtiger Userdaten
- Squid für Black- & Withelisting
Eckdaten
- Hostname: opsi-1
- Netzwerkname: opsi-1.local
- Domain-Name: opsi-1
- IP zum OPSI-Netzwerk: 10.8.190.1 (optional zusätzlich 10.8.190.10)
Namenskonventionen in AD für Computer, Domänen, Standorte und Organisationseinheiten
Starten mit Livesystem
Rechner mit GRML vom USB-Stick starten
Das Live-System grml bietet mit grml-debootstrap mehr Komfort als das Debian-debbotstrap.
grml-debootstrap
Speicher vorbereiten
Festplatten automatisch partitionierern
sfdisk /dev/sda < my.layout
Nur ein Beispiel
my.layout
# partition table of /dev/sda unit: sectors /dev/sda1 : start= 2048, size= 497664, Id=83, bootable /dev/sda2 : start= 501758, size=1953021954, Id= 5 /dev/sda3 : start= 0, size= 0, Id= 0 /dev/sda4 : start= 0, size= 0, Id= 0 /dev/sda5 : start= 501760, size=1953021952, Id=8e
RAID 1 erzeugen (mirror)
mdadm --create --verbose /dev/md0 --level=mirror --raid-devices=2 /dev/sda1 /dev/sdb1
LVM erzeugen
Physical Volume erzeugen.
pvcreate /dev/md0
Wir erzeugen die Volumegroup opsi_system. Diese besteht aus einem physical volume.
vgcreate opsi_system /dev/md0
Danach zwei logical volumes, eins für / und eins für /local
lvcreate -L 20G -n lv_root opsi_system lvcreate -L 50G -n lv_local opsi_system
-L Größe des Volumes. G für Gigabyte
-n = Name des Volumes
mkfs.ext4 /dev/opsi_system/lv_root mkfs.ext4 /dev/opsi_system/lv_local
Grundsystem installieren
grml-debootstrap --target /dev/opsi_system/lv_root --grub /dev/sda
grub2 auch auf /dev/sdb installieren
Dafür brauchen wir ein chroot in das neue System.
- /dev/opsi_system/lv_root auf /mnt mounten
mount -t proc none /mnt/proc mount -o bind /dev /mnt/dev mount -t sysfs sys /mnt/sys chroot /mnt /bin/bash
In der Chroot-Umgebung ausführen
grub-install --recheck --no-floppy/dev/sdb
Chroot verlassen
exit
Erststart des Systems
- USB Stick <Bootmedium> entfernen.
reboot
Keyboard layout einstellen
dpkg-reconfigure console-data
Im ncurses-Menu auswählen.
- Select keymap from arch list => O.K.
- qwertz => O.K.
- German => O.K.
- Standard => O.K.
- latin1 => O.K.
Sprache einstellen
dpkg-reconfigure locales
de_DE.UTF-8 auswählen und als default einstellen
Host bequem machen
Bash-completion
apt-get install bash-completion
Farbiges Promt
vim ~/.bashrc
export PS1='\[\033[0;31m\]\u\[\033[0;36m\]@\h:\[\033[0m\]\w\$ '
- [0;36m] Türkis (cyan)
- [0;32m] Grün (green)
- [0;31m] Rot (red)
- Meine Farbregeln
- Vor dem Promt: rot für root und grün für user.
- Hinter dem Promt: rot für Produktivserver, türkis für Testrechner und grün für Privatrechner/Workstations.
Meine .bashrc für root auf einem Testrechner.
# ~/.bashrc: executed by bash(1) for non-login shells. export PS1='\[\033[0;31m\]\u\[\033[0;36m\]@\h:\[\033[0m\]\w\$ ' export LS_OPTIONS='--color=auto' eval "`dircolors`" alias ls='ls $LS_OPTIONS' alias ll='ls $LS_OPTIONS -l' alias l='ls $LS_OPTIONS -lA' # Some more alias to avoid making mistakes: alias rm='rm -i' # bash-completion . /etc/bash_completion
Host vorbereiten
Hostname
Wir nennen diesen Rechner opsi-1
vim /etc/hostname
opsi-1 eintragen
Hosts Datei
Der Name wird mit der IP verknüpft, die die Verbindung zum OPSI-Netzwerk bereitstellt.
vim /etc/hosts
Folgene Zeile einfügen (entsprechend Installation#Eckdaten)
10.8.190.1 opsi-1.opsi-1.local opsi-1
Prüfen mit folgendem Befehl
getent hosts $(hostname -f)
Das Ergebniss muss ausehen wie die eingefügte Zeile in /etc/hosts
10.8.190.1 opsi-1.opsi-1.local opsi-1
Server Software installieren
DHCP
apt-get install isc-dhcp-server
/etc/default/isc-dhcp-server
In /etc/default/isc-dhcp-server das etsprechende Netzwerkinterface eintragen, auf dem der DHCP-Server auf Anfragen lauschen soll.
vim /etc/default/isc-dhcp-server
In die Zeile
INTERFACES=""
das entsprechende Interface eintragen.
/etc/dhcp/dhcpd.conf
Einträge für die Zone 10.8.190.0/24
vim /etc/dhcp/dhcpd.conf
ddns-update-style none; # Ist der offizielle DHCP-Server für alles in 10.8.190.0/24 authoritative; # DNS-Domain-Name in der /etc/resolv.conf des Clienten # Das ist nicht die Windows Domain option domain-name "opsi-1.local"; # Nameserver option domain-name-servers 10.8.190.10; default-lease-time 600; max-lease-time 7200; log-facility local7; subnet 10.8.190.0 netmask 255.255.255.224 { # Der Range für nicht unten aufgeführte Computer ist 1. klein & 2. per default abgeschaltet. # range 10.8.190.230 10.8.190.245; option routers 10.8.190.1; option broadcast-address 10.8.190.255; default-lease-time 600; max-lease-time 7200; }
- Bei dieser Config werden die IPs über den nameserver aufgelöst.
host win00 { hardware ethernet 08:00:07:26:c0:a5 fixed-address win00.opsi-1.local; }
nameserver
apt-get install bind9 bind9utils
- zone file anpassen/erzeugen und in /etc/bind/named.conf.local eintragen
DHCP-Client anpassen
Wenn der Server seine incoming IP über dhcp bezieht:
Damit unsere /etc/resolv.conf nicht andauernt überschrieben wird, muss das Verhalten des isc-dhcp-client geändert werden.
vim /etc/dhcp/dhclient.conf
Im Block request auskommentieren:
- domain-name
- domain-name-servers
- domain-search
- host-name
- dhcp6.name-servers
- dhcp6.domain-search,
- netbios-name-servers
Damit haben wir noch ein paar weitere requests abgeschaltet. Sollte nicht schaden.
samba
User automatisch anlegen: Entwurf
login=<USER> pass=<PASSWRD> options="" # zum Beispiel das Homeverzeichniss, die shell (/bin/false, /bin/bash) useradd $login $options echo -ne "$pass\n$pass\n" | smbpasswd -a -s $login
Mit net rpc rights grant den Benutzern winadmin alle Rechte und joindom "SeMachineAccountPrivilege" geben.
Altetnativ:
net rpc groupmap add ntgroup="Domain Admins" unixgroup=ntadmin rid=512 type=d
Der bekannte winadmin muss alternativ der Gruppe ntadmin angehören.
Dann muss kein net rpc rights grant .... ausgeführt werden.
net rpc groupmap add ntgroup="Domain Users" unixgroup=ntuser rid=513 type=d
Table 12.1. Well-Known User Default RIDs
Samba Docu: Table 12.1. Well-Known User Default RIDs
OPSI
OPSI Installation Anleitung
opsi-getting-started-stable-en