Steuerung von Diensten
Mit chkconfig können Dienste elegant gesteuert werden.
# Liste der steuerbaren Dienste
/sbin/chkconfig --list

# Ein- und Ausschalten eines Dienstes (httpd):
/sbin/chkconfig httpd (on|off)

# Steuern der 'Run-Level' eines Dienstes:
/sbin/chkconfig --level 345 httpd (on|off)
Der Paketmanager: yum
yum ist der Paketmanager unter CentOS. Mit ihm lassen sich sehr einfach Pakete aus sogenannten Repositorien herunterladen und updaten. Des weiteren gibt es eine Vielzahl weiterer Optionen.

Die wichtigsten Befehle:

Info: Der Schalter '-y' unterdrückt die Nutzerabfrage ob die gewünschte Aktion ausgeführt werden soll.

# Liste der installierten Pakete anzeigen
yum list installed

# Pakete suchen
yum search <Paketname/Suchmuster>

# Pakete nach einer bestimmten Datei durchsuchen
yum provides <Dateiname/Suchmuster>

# Beispiel: yum provides /usr/lib64/libX11.so.6.3.0

Output:
libX11-1.6.4-3.el6.x86_64 : Core X11 protocol client library
Repo        : base
Filename    : /usr/lib64/libX11.so.6.3.0

# Informationen für eine Paketgruppe anzeigen
yum groupinfo <Paketname>

# Aktualisierung des Centos Betriebssystems
yum -y update [<Paketname>]

# Installation/Entfernen von Paketen
yum -y install <Paketname>
yum -y remove <Paketname>

# Installation ohne PGP-Check
yum -y install <Paketname> --nogpgcheck

# Installation von Paketgruppen (Beispiel)
yum -y groupinstall "Desktop" "Desktop Platform" "X Window System" "Fonts"
Es wird empfohlen das EPEL Repository zu installieren da nicht alle Pakete im Standard-Repository enthalten sind.
yum -y install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Für weitere Optionen bitte in das Handbuch schauen:
man yum
Installation von Quellpaketen
Es besteht oft die Notwendigkeit Software die nicht in den Repositorien vorhanden sind als Quelldateien aus dem Internet herunterzuladen und selbst zu kompilieren. Das grobe Schema wird hier kurz anhand der Installation von qpopper einem POP3-eMail Server vorgestellt.

Vor dem Kompilieren eines Quellpaketes sind Paketabhängigkeiten die sogenannten Depedendencies zu prüfen. Unter anderem ist qpopper entsprechend der unten angegebenen Konfigurationsparameter von openssl und libpam abhängig die mit Hilfe des Paketmanagers yum vorher installiert werden müssen.

cd /tmp &&
wget ftp://ftp.qualcomm.com/eudora/servers/unix/popper/qpopper4.1.0.tar.gz &&

cat > qpopper.sh << "EOF"
#!/bin/bash
package="qpopper4.1.0"
tar xzvf $package.tar.gz &&
cd $package &&
./configure --prefix=/usr --with-openssl=/usr/include/openssl --enable-log-login --enable-auth-file=/etc/qpopper-allow-user --with-pam=pop3 &&
make && make install && echo "Installation beendet: Konfiguration anpassen!" EOF chmod u+x ./qpopper.sh && ./qpopper.sh

In diesem Zusammenhang ist natürlich zu beachten das die entsprechenden Konfigurationsdateien erstellt bzw. angepasst werden müssen. Im og. Fall wären dass:

/etc/qpopper-allow-user
/etc/xinetd.d/pop3
iptables
iptables ist ein Userspace-Programm zur Konfiguration der Tabellen (tables), die durch die Firewall im Linux-Kernel (bestehend aus einer Reihe von Netfilter-Modulen) bereitgestellt werden. Diese Tabellen enthalten Ketten (chains) und Regeln (rules). (Quelle: Wikipedia)

Anzeigen der iptable Regeln ohne DNS Auflösung:
/sbin/iptables -L -n
Speichern und Wiederherstellen der iptable Regeln:
/sbin/iptables-save > /path/to/iptables.save
/sbin/iptables-restore < /path/to/iptables.save
Masquerading bzw. Port and Address Translation (PAT)
# IPv4 Forwarding aktivieren
echo 1 > /proc/sys/net/ipv4/ip_forward

# IPv6 Forwarding aktivieren
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding

# Masquerading für Interface 'venet0' aktivieren
/sbin/iptables -t nat -A POSTROUTING -o venet0 -j MASQUERADE
- Permanente Aktivierung des Forwardings für IPv4 und IPv6
# Datei: /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1

# Netzwerk neu starten
service network restart
- Überprüfung des Masqueradings
# iptables -t nat -S

Output:
-A POSTROUTING -o venet0 -j MASQUERADE

# cat /proc/sys/net/ipv4/ip_forward

Output:
1
sudo
Mit dem Programm sudo erhalten Benutzer bzw. Gruppen erweiterte administrative Rechte, die in der Datei '/etc/sudoers' festgelegt werden.

Bei Centos ist die Benutzergruppe 'wheel' bereits in der Datei eingetragen. Zur Aktivierung die Kommentierung '#' vor dem Eintrag '%wheel ...' entfernen.

# Datei /etc/sudoers anpassen

# Allows people in group wheel to run all commands
%wheel	ALL=(ALL)		ALL
Benutzer mit dem Programm 'usermod' zur Gruppe 'wheel' hinzufügen
usermod -aG wheel username

# Testen der Berechtigung:
sudo ls /root

# Benutzer aus der Gruppe entfernen
gpasswd -d username wheel
ERROR: SSL: CERTIFICATE_VERIFY_FAILED
Sometimes a programm is not able to locate the systems CA Certificate
So we have to manually trace the system call open and locate the
path to the CA Certificate.

The reason for that error is often caused by a non-standard openssl installation
which in my case is in path: (/op/openssl)
# Trace 'open' call with 'strace' <application>
strace nodeenv --node=11.6.0 --npm=6.5.0-next.0 --prebuilt node |& grep open > /tmp/ssl.txt
grep cert /tmp/ssl.txt

# Result: 
open("/opt/openssl/cert.pem", O_RDONLY) = -1 ENOENT (No such file or directory)

# Copy the ca certificate to the correct location: 
cp /path/to/cert.pem /opt/openssl/cert.pem
Environment Settings:
export SSL_CERT_FILE=/path/to/ca_bundle.crt
export SSL_CERT_DIR=/path/to/cert/directory