Linux-Tutorialserie

Hallo! Schön, dass du dich für meine Linux-Tutorialserie interessierst.
Hier findest du eine Übersicht über alle Tutorials mit den dazugehörigen Befehlen. Außerdem gibt es hier auch alle verwendeten Configs zum download!

Danke an Contabo fürs zur Verfügung stellen des Linuxservers für diese Tutorialserie.

Mehr Informationen zu Contabo findest du in meinem Einführungsvideo

Falls du auch nach einem guten, aber dennoch bezahlbarem Linuxserver für DEINE Projekte suchst, schaue doch gerne bei Contabo vorbei.*

Links, die mit einem * markiert sind, sind Teil eines Partnerprogramms

Tutorial #1: Server bestellen, Domain kaufen, Cloudflare einrichten

Links/Befehle aus dem Video:

Serveranbieter: Contabo*
Servertyp aus dem Video: VPS M SSD
DNS-Verwaltung: Cloudflare
Domain gekauft bei: Namecheap

Veröffentlichungsdatum: 16.11.2020, 13 Uhr

Tutorial #2: Eigenen Teamspeak3 Server installieren

Anleitung und Befehle aus dem Video

-Server updaten: apt update && apt upgrade

-Eigenen User für den TS3-Server anlegen: adduser ts3

-Als ts3-User einloggen: su ts3

-In das Verzeichnis des ts3-Users wechseln: cd

-Teamspeak3 Datein herunterladen: wget https://dl.4players.de/ts/releases/3.13.1/teamspeak3-server_linux_amd64-3.13.1.tar.bz2

-Heruntergeladenes Teamspeak3-Archiv entpacken: tar xfjv teamspeak3-server_linux_amd64-3.12.1.tar.bz2

-Dateiarchiv löschen: rm teamspeak3-server_linux_amd64-3.12.1.tar.bz2

-In den Heruntergeladenen Ordner wechseln: cd teamspeak3-server_linux_amd64

-Datei erstellen, um die Lizenzbedingungen von TS3 zu akzeptieren: touch .ts3server_license_accepted

-Teamspeak3-Server starten: ./ts3server_startscript.sh start

-Adminrechte auf Teamspeakserver verschaffen: Den in der Konsole angezeigten Token kopieren, via Teamspeak auf seinen Server verbinden, Token einfügen

Tipp: Um seinen TS3-Server zu stoppen, auf Linuxserver als ts3 User einloggen, in den Teamspeakordner wechseln, folgenden Befehl ausführen: ./ts3server_startscript.sh stop

Veröffentlichungsdatum: 19.11.2020, 13 Uhr

Tutorial #3: Eigenen Minecraftserver aufsetzen/installieren

Befehle aus dem Video:

-Screen installieren: apt install screen -y

-Java installieren: apt install default-jdk -y

-Minecraftuser erstellen: adduser mc

-Als Minecraftuser anmelden: su mc

-In das Hauptverzeichnis des Minecraftusers wechseln: cd

-Benötigte Minecraftdatein runterladen: wget https://launcher.mojang.com/v1/objects/35139deedbd5182953cf1caa23835da59ca3d7cd/server.jar

-Startscript erstellen: nano start.sh

-Folgendes kopieren und in die start.sh einfügen: screen -S Minecraft java -Xmx4G -Xms512M -jar server.jar

(Falls nötig, bitte abändern-> Xmx: Maximale Anzahl an RAM, Xms: Minimale Anzahl an RAM)

 -start.sh ausführbar machen: chmod +x start.sh

-Script ausführen: ./start.sh

-Screen beendet sich (screen is terminating), dann Eula akzeptieren: nano eula.txt (Dann „false“ -> „true“ setzen)

-Script erneut ausführen: ./start.sh

 

Hinweis: Um seine Domain als IP festzulegen, oder die Anzahl der Slots zu ändern, mit „nano server.properties“ die Server.properties Datei öffnen und ggf. anpassen

Veröffentlichungsdatum: 23.11.2020, 13 Uhr

Tutorial #4: Server mit Fail2Ban schützen (Installation und Konfiguration)

Befehle aus dem Video:

 -Fail2Ban installieren: apt install fail2ban -y

-Ins Verzeichnis von Fail2Ban wechseln: cd /etc/fail2ban

-Config erstellen/clonen: cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

-Config bearbeiten: nano jail.local

Angepasste Sachen aus dem Video

[Default]

bantime = 10m

findtime = 10m

naxretry = 5

—————————————————

[sshd]

enabled = true

bantime = 10m

port = ssh

filter = sshd

maxretrys = 3

logpath = /var/log/auth.log

 

-Fail2Ban neustarten: systemctl restart fail2ban

-Überprüfen, ob alles funtioniert: systemctl status fail2ban

 

Hinweis: Im Video wird gezeigt, wie ihr euch die „authentication failures“ anzeigen lassen könnt. Dafür benutzt bitte folgenden Befehl: grep ‚authentication failures‘ /var/log/auth.log

Veröffentlichungsdatum: 26.11.2020, 13 Uhr

Tutorial #5: Eigene Website mit WordPress (Apache2), SSL Zertifikat installieren (Certbot)

Befehle aus dem Video:

-Server updaten und upgradenapt update && apt upgrade -y

-Benötigte Programme installieren: apt install unzip wget sudo apache2 libapache2-mod-php mariadb-client mariadb-server php php-mysql -y

-Ins html-Verzeichnis wechseln: cd /var/www/html

-Unnötige Datei löschen: rm index.php

-In die Datenbanksoftware einloggen: mysql -u root -p

-WordPress Datenbank erstellen: CREATE DATABASE wordpress;

-Datenbankbenutzer erstellen*: CREATE USER ‚wordpress’@’localhost‘ IDENTIFIED BY ‚PASSWORT‘;

-Rechte vergeben: GRANT ALL ON wordpress.* TO ‚wordpress’@’localhost‘;

-Privilegien „flushen“: FLUSH PRIVILEGES;

-Datenbank verlassen: exit;

-Ins Homeverzeichnis wechseln: cd /home

-Benötigte Datein herunterladen: wget https://de.wordpress.org/latest-de_DE.zip

-Archiv entpacken: unzip latest-de_DE.zip

-Archiv löschen: rm latest-de_DE.zip

-Datein ins richtige Verzeichnis kopieren: cp -r /home/wordpress/* /var/www/html

-Rechte anpassen: chown -R www-data:www-data /var/www/html

                                  sudo find /var/www/html -type d -exec chmod 755 {} \;

                                  sudo find /var/www/html -type f -exec chmod 644 {} \;

-Webserver neustarten: systemctl restart apache2.service

-VirtualHost einfügen (Siehe Download rechts): cd /etc/apache2/sites-available

-VirtualHost aktivieren: a2ensite wordpress.conf

-Webserver reloaden: systemctl reload apache2

-Certbot installieren: apt-get install certbot python-certbot-apache -y

-Zertifizierungsvorgang starten: certbot –apache

 

* Bitte PASSWORT durch ein sicheres Passwort ersetzen!

 

Veröffentlichungsdatum: 30.11.2020, 13 Uhr

Tutorial #6: Eigenen Mailserver installieren

Befehle aus dem Video:

 -Benötigte Programme installieren: apt install curl git sudo wget -y

-Docker installieren: curl -sSL https://get.docker.com/ | CHANNEL=stable sh

-Docker aktivieren und starten: systemctl enable docker.service

                                                        systemctl start docker.service

-Docker Compose installieren und ausführbar machen: curl -L https://github.com/docker/compose/releases/download/$(curl -Ls https://www.servercow.de/docker-compose/latest.php)/docker-compose-$(uname -s)-$(uname -m) > /usr/local/bin/docker-compose

 

chmod +x /usr/local/bin/docker-compose

 

-Ordner wechseln: cd /opt

-Mailcow Docker-Image runterladen: git clone https://github.com/mailcow/mailcow-dockerized

-In das Mailcow-Dockerized Verzeichnis wechseln: cd mailcow-dockerized

-Mailcow-Config generieren: ./generate_config.sh

-Bei bedarf: Config abändern: nano mailcow.conf

-Falls nötig: Port(s) öffnen*: sudo iptables -A INPUT -p tcp –dport xxxx -j ACCEPT

 

* Das „xxxx“ durch den gewünschten Port austauschen (z.B. 8080)

 

Veröffentlichungsdatum: 03.12.2020, 13 Uhr

Tutorial #7: NextCloud installieren

Befehle aus dem Video:

-Server updaten und upgraden: apt update && apt upgrade -y

-Benötigte Programme installieren: apt install apache2 php-zip php-dompdf php-xml php-mbstring php-gd php-curl php-imagick php-intl unzip wget

-php-ini anpassen: nano /etc/php/7.3/apache2/php.ini

Folgende Sachen abändern:

memory_limit = 1024M
upload_max_filesize = 16G
post_max_size = 16G
date.timezone = Europe/Berlin

———————————————

-In der Datenbanksoftware anmelden: mysql -u root -p

-Datenbank erstellen: CREATE DATABASE nextcloud;

-Datenbankuser erstellen*: CREATE USER ’nextcloud’@’localhost‘ IDENTIFIED BY ‚PASSWORT‘;

-Rechte vergeben: GRANT ALL PRIVILEGES ON nextcloud.* TO ’nextcloud’@’localhost‘;

-Privilegien „flushen“: FLUSH PRIVILEGES;

-Datenbank verlassen: exit;

-Nextcloud herunterladen: cd /tmp && wget https://download.nextcloud.com/server/releases/latest.zip

-Dateiarchiv entpacken: unzip latest.zip

-Verzeichnis verschieben: mv nextcloud /var/www/

-VirtualHost einfügen (Siehe Download rechts): cd /etc/apache2/sites-available

-VirtualHost aktivieren: a2ensite nextcloud.conf

-Webserver reloaden: systemctl reload apache2

-Folgende Apache2 Module aktivieren: a2enmod rewrite

                                                                    a2enmod headers

                                                                    a2enmod env

                                                                   a2enmod dir

                                                                  a2enmod mime

-Webserver restarten: systemctl restart apache2.service

-Ordner für Dateiablage erstellen: mkdir /home/data

-Rechte ändern: chown -R www-data:www-data /home/data/

                           chown -R www-data:www-data /var/www/nextcloud/

                           chmod -R 755 /var/www/nextcloud/

-Certbot installieren: apt install certbot python3-certbot-apache -y

-Zertifizierungsvorgang starten: certbot –apache

 

Veröffentlichungsdatum: 07.12.2020, 13 Uhr

Tutorial #8: Bitwarden (Passwortmanager) installieren (standalone)

Befehle aus dem Video:

-Benötigte Programme installieren: apt install docker.io docker-compose curl git wget sudo -y

-Bitwarden Installationsscript herunterladen: curl -s -o bitwarden.sh \
https://raw.githubusercontent.com/bitwarden/server/master/scripts/bitwarden.sh \
&& chmod +x bitwarden.sh

-Installationsscript ausführen: ./bitwarden.sh install

-Installations ID und Key hier: https://bitwarden.com/host

-Bitwarden starten: ./bitwarden.sh start

 

Veröffentlichungsdatum: 10.12.2020, 13 Uhr

Tutorial #9: Bitwarden (Passwortmanager) neben Website etc. installieren (bitwarden_rs)

Befehle aus dem Video:

-Benötigte Programme installieren: apt install apache2 docker.io docker-compose curl git wget sudo certbot python3-certbot-apache -y

-VirtualHost einfügen (Siehe Download rechts): cd /etc/apache2/sites-available

-VirtualsHost aktivieren: a2ensite bitwarden.conf

-Folgende Apache2 Module aktivieren: a2enmod ssl

                                                                     a2enmod proxy

                                                                     a2enmod proxy_http

                                                                    a2enmod proxy_balancer

                                                                   a2enmod lbmethod_byrequests

-Webserver reloaden: systemctl reload apache2

-Port freigeben*: sudo iptables -A INPUT -p tcp –dport xxxx -j ACCEPT

-Zertifizierungsvorgang starten: certbot –apache

-Dockerimage runterladen: docker pull bitwardenrs/server:latest

-Dockercontainer starten*: docker run -d –name bitwarden -v /bw-data/:/data/ -p xxxx:80 bitwardenrs/server:latest

 * Das „xxxx“ durch den gewünschten Port auszauschen (z.B. 8081)

Veröffentlichungsdatum: 10.12.2020, 13:30 Uhr