CentOS
Zur Navigation springen
Zur Suche springen
Bei CentOS[1] handelt es sich um ein Linux-Derivat von Red Hat Enterprise Linux.
Installation des Basissystems
- Raid (für den Fall der Fälle, der schneller kommt, als man denkt)
- Raid1
- ...
Absicherung des Zugangs
- https://www.digitalocean.com/community/tutorials/initial-server-setup-with-centos-7
- https://wiki.centos.org/HowTos/Network/SecuringSSH
- weiteres Konto anlegen
useradd <Kontenname>
- neues Konto privilegieren
- oder per
useradd -a -G [<Gruppenname>],[<weitere Gruppen>]
gpasswd
- etwa durch Mitgliedschaft in der Gruppe wheel
- sudo testen
- ssh-Key lokal erstellen und auf Server hochladen
- lokal:
ssh-keygen
- auf dem Server:
ssh-copy-id
- lokal:
- ssh-Dämon in /etc/ssh/sshd_config umkonfigurieren
- kein Root-Login von außerhalb
PermitRootLogin no
- Port ändern (security by obscurity um DDos-Attaken zu einzuschränken)
- Port <Nr.> (machte mehr Ärger als es nutzte)
- kein Root-Login von außerhalb
- ggf. Port auch in der Systemd-Konfig in /usr/lib/systemd/system/sshd.socket ändern (machte mehr Ärger als es nutzte)
- ListenStream=<Portnr.>
- sshd per systemctl reload sshd dazu bringen seine Konfig neueinzulesen
- Firewall auf neuen SSH-Port konfigurieren
firewall-cmd --add-port 2345/tcp
firewall-cmd --add-port 2345/tcp --permanent
systemctl status firewalld
- Login per ssh in einem weiteren Terminal testen
- der Bequemlichkeit wegen kann folgendes in die .ssh/config eingetragen und die Datei mit chmod 600 berechtigt werden:
Host <myserver> HostName <IP-Adresse> User <Kontoname> Port <Portnr.>
Cockpit installieren und einrichten
- http://cockpit-project.org/running.html
- http://cockpit-project.org/guide/latest/guide.html
- läuft standardmäßig auf Port: 9090
- Installieren
sudo yum install cockpit
- Cockpit freischalten
sudo systemctl enable --now cockpit.socket
- Firewallport für Cockpit öffnen (falls nötig)
sudo firewall-cmd --permanent --zone=public --add-service=cockpit
sudo firewall-cmd --reload
- Port ggf. in SystemD ändern (im cockpit.socket file), nicht in der Cockpit-Konfig direkt
- Config befindet sich in /etc/cockpit/
HTTPS einrichten
- OpenSSL oder LibreSSL installieren
- ...
- Zertifikat erstellen und nach /etc/cockpit/ws-certs.d speichern
- ...
- Anzeigen der Cockpit-Zertifikat(e):
sudo remotectl certificate
Firewallport(s) freigeben, falls nötig
z.B. per iptables:
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
/sbin/service iptables save
iptables -L -v
Authentifizieren
- per normalen Sys-Logindaten
- oder mittels OAuth per Bearer auth-scheme
Erweiterungen
Naja, nach der Philosophie von Cockpit sollte es soetwas nicht geben und lediglich ein Webfrontend zur Bedienung der auf dem Rechner bereits installierten Software zur Verfügung gestellt werden.
- Performance Co-Pilot (kurz: PCP, http://cockpit-project.org/guide/latest/feature-pcp.html) zur Erweiterung der Monitoring-Funktionalität von Cockpit
- yum install cockpit-pcp
- (SOS Report zum Auslesen der Config und zur Diagnose, http://cockpit-project.org/guide/latest/feature-sosreport.html)
- (/var/tmp/sosreport-anet-20170222153029.tar.xz (Prüfsumme: 90826b932cb3dfeb123cca567b572389))
- (RPM OsTree klingt auch recht interessant (so eine Art Git fürs die Betriebssystemkonfig))
Container zur Abschottung der einzelnen Dienste
Docker
- Siehe auch
- Docker
Mangels einfach nachvollziehbarer und sauberer Container wieder verworfen (mit etwas mehr Muse ist es bestimmt 'ne interessante Sache)
LXC
- Siehe auch
- LXC