Ubuntu 22.04 eigene Root-Zertifikate installieren

Das Zertifikat welches importiert werden soll muss zunächst lokal auf dem Server vorliegen. Der Download kann entweder direkt auf dem Ubuntu System erfolgen, oder das Zertifikat mittels FTP / SFTP übertragen werden.

Für den Import eigener Zertifikate wird zunächst ein eigener Ordner für diese erstellt:

sudo mkdir /usr/local/share/ca-certificates/extra

Anschließend wird das Zertifikat in den soeben erstellten Ordner kopiert und dabei umbenannt, so dass die Dateiendung nun .crt lautet.

sudo cp root.cert.pem /usr/local/share/ca-certificates/extra/root.cert.crt

Abschließend wird das Zertifikat in das System eingebunden:

sudo update-ca-certificates

OPNSense Updates über Proxy

Damit OPNSense über einen Proxy Server hinweg mit den Updateservern kommunizieren kann müssen bestimmte Systemvariablen eingerichtet werden. Die Systemvariablen werden in eine Konfigurationsdatei eingetragen, der Zugriff erfolgt über die Konsole.

Beim Zugriff auf die Konsole wird zunächst die Shell über den Menüpunkt 8 geöffnet.

Hier wird nun die folgende Datei editiert:

edit /usr/local/opnsense/service/conf/configd.conf 

Hier werden die Variablen zur Verwendung des Proxy Servers im Bereich „environment“ eingetragen. Es stehen folgende Variablen zur Auswahl:

HTTP_PROXY=http://192.168.120.103:3128
http_proxy=http://192.168.120.103:3128
HTTPS_PROXY=http://192.168.120.103:3129
https_proxy=http://192.168.120.103:3129
FTP_PROXY=http://192.168.120.103:3128
ftp_proxy=http://192.168.120.103:3128

IP-Adresse und Port stehen hier nur als Beispiel und müssen individuell angepasst werden. Die fertig angepasste Datei sieht anschließend in etwa wie folgt aus:

#/usr/local/opnsense/service/conf/configd.conf
[main]
socket_filename:/var/run/configd.socket
pid_filename:/var/run/configd.pid

[environment]
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
HOME=/
HTTP_PROXY=http://192.168.120.103:3128
http_proxy=http://192.168.120.103:3128
HTTPS_PROXY=http://192.168.120.103:3129 
https_proxy=http://192.168.120.103:3129
FTP_PROXY=http://192.168.120.103:3128
ftp_proxy=http://192.168.120.103:3128

Tipp: Sollte nur das Englische Tastaturlayout zur Verfügung stehen gilt im Vergleich mit der deutschen Tastatur folgende Tastenbelegung:

  • / -> –
  • = -> ´
  • : -> Ö
  • _ -> [Shift]+ß

Zum Speichern der Änderungen abschließend „Esc“ auf der Tastatur drücken und im Menü das Speichern der Änderungen bestätigen. Anschließend kann die Update Funktion über das Webinterface unter „System“ -> „Firmware“ -> „Aktualisierungen“ wie gewohnt verwendet werden.

SMB Freigabe in Linux / Ubuntu Mounten

Vorraussetzung ist dass das Paket „cifs-utils“ installiert ist. Um zu prüfen ob dieses installiert ist bzw. zum installieren kann der folgende Befehl genutzt werden:

sudo apt-get install cifs-utils

Nun wird der Ordner erstellt, in dem die SMB Freigabe später Verfügbar sein wird:

sudo mkdir /mnt/freigabe

Anschließend kann die Freigabe mit Hilfe des folgenden Befehls gemountet werden:

sudo mount -t cifs -o user=oli //192.168.177.64/Tausch /mnt/tausch


Automatisches mounten während des Bootvorgangs

Damit die Freigabe direkt beim Booten in das System eingebunden wird, kann diese in die „fstab“ Datei eingetragen werden. Zum bearbeiten wird diese im Editor geöffnet:

sudo nano /etc/fstab

Die bestehenden Einträge sollten nicht verändert werden! Am Dateiende wird nun eine neue Zeile eingefügt:

//intern.o-hl.de/NETLOGON /mnt/netlogon cifs username=[Benutzername],password=[Passwort],iocharset=utf8 0 0

Der Serverpfad „//intern.o-hl.de/NETLOGON“ steht hier nur Beispielhaft und muss für jede Freigabe individuell angepasst werden. Außerdem müssen die Angaben zu username und password angepasst werden, sofern für die Freigabe Anmeldedaten benötigt werden. Ist die Freigabe für jeden frei zugänglich können diese beiden Parameter auch ganz weggelassen werden.

Um Probleme beim einbinden zu vermeiden sollte außerdem die Datei /etc/rc.local erstellt bzw. angepasst werden. Hierdurch wird das Mounten um einen bestimmten Zeitraum verzögert, das ist z.B. nützlich wenn versucht wird die Freigabe einzubinden bevor die Netzwerkverbindung besteht.

Zunächst wird hierzu die Datei rc.local erstellt und im Editor geöffnet:

sudo touch /etc/rc.local
sudo nano /etc/rc.local

Hier wird nun folgender Inhalt eingefügt:

sleep 10
mount -a

Das „sleep“ ist optional und fügt eine Wartezeit von X Sekunden hinzu, was z.B. bei WLAN-Verbindungen hilfreich sein kann.

Nach dem nächsten Neustart des Systems sollte die Freigabe nun automatisch verbunden werden.

Cacti Remote Monitoring auf Windows Host einrichten

Zunächst wird der SNMP Dienst über „Rollen und Features hinzufügen“ zum System hinzugefügt.

Nun werden über das Dienste-Verwaltungsprogramm ein paar Einstellungen vorgenommen. Zunächst wird über die Verwaltungskonsole der SNMP Dienst gesucht und die Eigenschaften per Rechtsklick geöffnet.

Hier wird unter dem Reiter Sicherheit zunächst der Communityname der SNMP Community eingetragen. Außerdem wird weiter unten eingestellt von welchen Hosts SNMP-Pakete angenommen werden dürfen.

Die IP-Adresse „192.168.254.53“ steht hier nur Beispielshaft und muss in jedem Netzwerk individuell angepasst werden. In meinem Fall ist dies die IP-Adresse meines Monitoring Servers, welcher mit SNMP-Paketen arbeitet.

Um zusätzliche Informationen aus dem System auslesen zu können empfiehlt es sich das Programm „SNMP Informant“ zu installieren. Weitere Informationen hierzu gibt es hier: https://www.snmp-informant.com/ .

Ubuntu APT Proxy einstellen

Damit das Paketverwaltungssystem APT unter Ubuntu über einen Proxy im Netzwerk kommunizieren kann, wird eine eigene Konfigurationsdatei hierfür angelegt und anschließend im Editor geöffnet:

sudo touch /etc/apt/apt.conf.d/proxy.conf
sudo nano /etc/apt/apt.conf.d/proxy.conf

Hier werden nun die folgenden Zeilen eingefügt:

Acquire::http::Proxy "http://192.168.177.50:3128/";
Acquire::https::Proxy "http://192.168.177.50:3129/";

IP-Adresse und Ports stehen hier nur als Beispiel, diese müssen individuell an das eigene Netzwerk angepasst werden. Ausreichend ist es nur den http Proxy zu definieren, also die zweite Zeile der Konfigurationsdatei weg zu lassen. Abschließend wird die Datei gespeichert, ein Neustart oder ähnliches ist nicht nötig.

Ubuntu Server zu Active Directory Domäne hinzufügen

Im folgenden eine Kurzanleitung zum hinzufügen eines Ubuntu Servers zu einer Active Directory Domäne. Hierdurch können sich Benutzer am AD Domaincontroller authentifizieren, außerdem kann eine AD Gruppe genutzt werden um Benutzern die Möglichkeit zu geben Befehle im Super User Kontext auszuführen.

Zunächst müssen einige zusätzliche Pakete installiert werden:

sudo apt-get update
sudo apt-get install winbind samba smbclient cifs-utils libnss-winbind libpam-winbind

Anschließend müssen einige Anpassungen an der Samba Konfigurationsdatei vorgenommen werden.

sudo nano /etc/samba/smb.conf

Die im folgenden Eingetragenen Werte dienen nur als Beispiel und müssen teilweise individuell angepasst werden. In jedem Fall müssen die Parameter „workgroup“ und „realm“ an die eigene vorhandene Domäne angepasst werden. Alle weiteren Werte sollten so übernommen werden können.

[global]

workgroup = INTERN
security = ads
realm = INTERN.O-HL.DE
winbind separator = +
idmap uid = 10000-20000
idmap gid = 10000-20000
winbind enum users = yes
winbind enum groups = yes
template homedir = /home/%D/%U
template shell = /bin/bash
client use spnego = yes
client ntlmv2 auth = yes
encrypt passwords = yes
winbind use default domain = yes
restrict anonymous = 2

Mithilfe des Testparm Befehls kann die smb.conf Datei anschließend auf Syntaxfehler geprüft werden.

testparm /etc/samba/smb.conf

Anschließend muss die Hosts-Datei angepasst werden, damit die Namensauflösung korrekt funktioniert:

sudo nano /etc/hosts

Wichtig ist hier dass der hinzuzufügende Server mit seinem FQDN (Hostname + Domänenname) eingetragen wird. Hier als Beispiel die Einträge in der Hosts-Datei von einem meiner Ubuntu Server:

127.0.0.1 lnxdocker.intern.o-hl.de lnxdocker
192.168.177.74 lnxdocker.intern.o-hl.de lnxdocker

„lnxdocker“ ist hier der Hostname des Servers, „intern.o-hl.de“ meine Domäne. Anschließend muss der Server neu gestartet werden.

Nach dem Neustart kann der Server mit folgendem Befehl der Domäne hinzugefügt werden:

sudo net ads join -U [Domänenadmin]

Der Platzhalter [Domänenadmin] muss hier durch den Benutzernamen eines Domänenadmins ersetzt werden. Anschließend wird das Kennwort des Accounts abgefragt.

Damit die Anmeldung am Ubuntu Server mit den Anmeldedaten eines Domänenaccounts möglich ist müssen nun noch einige Einstellungen angepasst werden. Zunächst wird die Datei nsswitch.conf mit folgenden Werten angepasst:

sudo nano /etc/nsswitch.conf
passwd: compat winbind
group: compat winbind
shadow: compat

Nun wird der Befehl „sudo pam-auth-update“ ausgeführt und ausgewählt das Home-Verzeichnisse der Benutzer automatisch bei der ersten Anmeldung erstellt werden.

sudo pam-auth-update

Der Menüpunkt „Create home directory on login“ wird über die Leertaste aktiviert und die Einstellungen anschließend durch drücken der Entertaste gespeichert.

Anschließend wird im Verzeichnis /home ein Verzeichnis für die Domäne angelegt, welches später die Heimatverzeichnisse der Benutzer beinhalten wird. Der Befehl muss wieder an die eigene Domäne angepasst werden, „INTERN“ dient hier nur als Beispiel.

sudo mkdir /home/INTERN

Zuletzt wird noch eine AD-Gruppe in die Sudoers-Datei hinzugefügt. Mitglieder dieser AD Gruppe haben später die Möglichkeit Befehle im Super User Kontext auszuführen, also den „sudo“ Befehl zu nutzen. Zunächst wird die Sudoers-Datei im Editor geöffnet:

sudo nano /etc/sudoers

Hier wird nun der folgende Eintrag hinzugefügt, wobei die Gruppenbezeichnung „sudoers“ hier wieder nur als Beispiel dient und angepasst werden muss.

%sudoers ALL=(ALL:ALL) ALL

Abschließend muss der Server nochmals neu gestartet werden, damit alle angepassten Konfigurationen wirksam werden. Die Anmeldung mit den Active Directory Benutzeraccounts am Ubuntu Server sollte nach dem Neustart möglich sein. Außerdem existiert nun ein Computerobjekt in der AD-Verwaltungskonsole, welches in eine beliebige OU eingeordnet werden kann.

Windows angewandte GPOs prüfen

Zur Überprüfung der angewandten Gruppenrichtlinien auf den Computer sollte die CMD als Admin gestartet werden. Zur Überprüfung der auf den Benutzer angewandten Gruppenrichtlinien reicht das starten im Benutzerkontext.

Zunächst sollten alle Gruppenrichtlinien nochmals vom Domaincontroller abgerufen werden:

gpupdate /force 

Angewandte Gruppenrichtlinien auf den Computer prüfen:

gpresult /r /SCOPE COMPUTER

Angewandte Gruppenrichtlinien auf den Benutzer prüfen:

gpresult /r /SCOPE USER