GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie Gitlab sicher (Ein Tutorial)

Sie haben entschieden, dass Sie GitLab für Ihr Projektmanagement verwenden müssen, sind sich aber nicht sicher, wie Sie GitLab sicher installieren können? Die Installation von GitLab ist nicht nur ein komplexer Prozess, sondern Ihre Daten könnten gefährdet sein, wenn sie nicht korrekt durchgeführt werden. Aber keine Sorge, Sie sind an der richtigen Stelle!

Kein Leser? Sehen Sie sich dieses zugehörige Video-Tutorial an! Sie sehen das Video nicht? Stellen Sie sicher, dass Ihr Werbeblocker deaktiviert ist.

In diesem Tutorial lernen Sie den gesamten Prozess der sicheren Installation von GitLab kennen, damit Sie die SSL-Verschlüsselung einrichten und GitLab für optimale Leistung konfigurieren können.

Hört sich interessant an? Spring direkt hinein!

Voraussetzungen

Dieses Tutorial wird eine praktische Demonstration sein. Wenn Sie mitmachen möchten, stellen Sie sicher, dass Sie Folgendes haben:

  • Ein Linux-Server mit Root-Zugriff – Diese Demo verwendet Ubuntu 20.04 LTS, aber jede Linux-Distribution funktioniert.
  • Ein vollständig qualifizierter Domänenname (FQDN), der auf Ihren Server verweist.
  • Let’s Encrypt auf dem Server installiert.
  • Mindestanforderungen – 8 GB RAM, 50–100 Mbit/s Bandbreite, 2-GHz-Prozessor und 20 GB Speicherplatz.

GitLab Community Edition installieren

Nachdem Sie nun einen FQDN und Ihren Server vorbereitet haben, ist es an der Zeit, GitLab zu installieren. Es gibt mehrere Möglichkeiten, GitLab zu installieren, z. B. die Verwendung des Omnibus-Pakets oder das Kompilieren aus der Quelle. Aber dieses Tutorial konzentriert sich auf die Installation von GitLab mithilfe des GitLab-Repositorys des Entwicklers.

GitLab gibt es in zwei Distributionen:

  • GitLab Community Edition (CE) – für Benutzer, die eine von der Community unterstützte Open-Source-Version von GitLab bevorzugen.
  • GitLab Enterprise Edition (EE) – für Benutzer, die die zusätzlichen Funktionen der GitLab Enterprise Edition benötigen.

Aber diese Demo verwendet die Community Edition, um die Anwendung in Ihrer Entwicklerumgebung zu testen.

1. Öffnen Sie Ihr Terminal und führen Sie apt update aus Befehl unten, um sicherzustellen, dass Ihr System Zugriff auf die neuesten Software-Updates hat.

Die apt update Der Befehl aktualisiert die Paketindexdateien, die von apt verwendet werden Dienstprogramm zum Abrufen von Informationen zu verfügbaren Paketen.

sudo apt update -y

2. Führen Sie als Nächstes apt install aus Befehl unten zum Herunterladen (curl ) und install die folgenden erforderlichen Abhängigkeiten für Ihre GitLab-Installation:

  • openssh-server Paket – Enthält den OpenSSH-Server-Daemon und verwandte Tools, wie z. B. das Host-Key-Management-Tool und den Server, um Benutzern Remote-Login-Zugriff zu ermöglichen.
  • ca-certificates Paket – Enthält eine Liste von CA-Zertifikaten. Dieses Paket stellt die erforderlichen Dateien bereit, um die HTTPS-Unterstützung auf Ihrem Server zu aktivieren.
sudo apt install curl openssh-server ca-certificates -y

3. Führen Sie curl aus Befehl unten zum Herunterladen (curl ) das Installationsskript von GitLab ( https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce ). Der Befehl speichert dann das Installationsskript als Shell-Skript (script.deb.sh ) und führt es als Superuser aus (sudo bash ).

sudo curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

Einmal die curl Befehl abgeschlossen ist, erhalten Sie die folgende Ausgabe.

4. Führen Sie apt-cache aus Befehl unten, um zu überprüfen, ob Sie das GitLab-Repository erfolgreich hinzugefügt haben.

apt-cache policy docker-ce

5. Führen Sie nun apt update erneut aus Befehl, um die Liste der verfügbaren Pakete zu aktualisieren. Dieser Befehl stellt sicher, dass Ihr System das neu hinzugefügte GitLab-Repository verwendet, wenn Sie GitLab installieren.

sudo apt update -y

6. Führen Sie abschließend apt install aus Befehl unten, um GitLab zu installieren (gitlab-ce ) auf Ihrem System.

sudo apt install gitlab-ce -y

Die Installation wird eine Weile dauern, aber Sie werden die folgende Ausgabe sehen, wenn die Installation abgeschlossen ist. Diese Ausgabe bestätigt, dass Sie GitLab nun erfolgreich auf Ihrem System installiert haben.

Konfigurieren Ihrer GitLab-Installation

Sie haben jetzt GitLab auf Ihrem System installiert, aber Sie müssen einige Konfigurationsänderungen vornehmen, bevor Sie GitLab verwenden können. Die Konfigurationsdatei von GitLab (/etc/gitlab/gitlab.rb ) enthält die globalen Einstellungen für GitLab, die nicht spezifisch für die Umgebung Ihres GitLab-Servers sind.

Sie ändern die Konfigurationsdatei von GitLab, um Ihren FQDN-Domänennamen und eine sichere Verbindung zu Ihrer Domäne festzulegen.

1. Öffnen Sie /etc/gitlab/gitlab.rb Konfigurationsdatei in Ihrem bevorzugten Texteditor.

Einer der wichtigsten Einträge in der GitLab-Konfigurationsdatei ist die externe URL Richtlinie, wie unten gezeigt. Mit dieser Anweisung können Benutzer über einen Webbrowser auf GitLab zugreifen.

Ändern Sie die externe URL Wert der Direktive von http://gitlab.example.com zu https://gitlab.ihredomain.com , wobei ihredomain.com ist Ihr FQDN-Domänenname.

2. Navigieren Sie als Nächstes zur Let’s Encrypt-Integration unten, und konfigurieren Sie die Anweisungen wie folgt:

  • Entkommentieren Sie letsencrypt['enable'] Direktive durch Entfernen des vorangestellten # und ändern Sie den Wert von nil bis true . Diese Direktive weist GitLab an, HTTPS auf Ihrem Server automatisch zu konfigurieren.
  • Entkommentieren Sie letsencrypt['contact_emails'] Direktive durch Entfernen des vorangestellten # , und geben Sie Ihre E-Mail-Adresse als Wert ein. Let’s Encrypt verwendet diese E-Mail-Adresse, um Sie zu kontaktieren, wenn Sie Ihr SSL-Zertifikat erneuern müssen (alle 90 Tage).
  • Speichern Sie die Änderungen und beenden Sie den Editor.

3. Führen Sie zuletzt den folgenden Befehl zu reconfigure aus und übernehmen Sie die Änderungen in /etc/gitlab/gitlab.rb Konfigurationsdatei an GitLab.

sudo gitlab-ctl reconfigure

Konfigurieren Ihrer Firewall für SSL-Verbindungen

Nachdem Sie GitLab konfiguriert haben, müssen Sie Ihre Firewall-Regeln konfigurieren, um SSL und sichere Verbindungen zu Ihrem Server zuzulassen. Uncomplicated Firewall (UFW) ist das Standardprogramm zum Verwalten von Firewall-Regeln in Ubuntu.

Wenn Sie Ihren Server hinter einer Firewall platzieren, müssen Sie den HTTP-Port 80 öffnen und HTTPS-Port 443 für SSL-Verbindungen.

Führen Sie den folgenden Befehl aus, um OpenSSH zu öffnen , HTTP , und HTTPS Ports für Ihren GitLab-Server.

sudo ufw allow OpenSSH && sudo ufw allow http && sudo ufw allow http

Führen Sie nun den folgenden Befehl aus, um den Status Ihrer Firewall zu überprüfen.

sudo ufw status 

Sichern von GitLab über das Webinterface

Ihre Firewall ist aktiv, aber bedeutet das, dass Ihr GitLab sicher ist? Das Hinzufügen von Sicherheitsebenen ist nie zu viel. So sichern Sie Ihre GitLab-Installation zusätzlich über die Weboberfläche.

1. Öffnen Sie Ihren bevorzugten Webbrowser und navigieren Sie zu Ihrem GitLab-Server. Beispiel:http://gitlab.example.com , wobei example.com ist Ihr FQDN-Domänenname.

Wählen Sie für eine bessere Sicherheit entweder Chrome oder Firefox, wenn Sie auf Ihren GitLab-Server zugreifen. Diese Webbrowser verwenden ihre eigenen HTTP/HTTPS-Protokolle, die zur Durchsetzung von Sicherheitsrichtlinien beitragen.

Unten sehen Sie die Anmeldeseite von GitLab.

2. Klicken Sie als Nächstes auf das Vorhängeschloss-Symbol (oben links) neben der Adressleiste, und Sie sehen Ihren Verbindungsstatus. Diese Demo zeigt, dass die Verbindung sicher ist , was darauf hinweist, dass Ihre Verbindung zum Server über HTTPS erfolgt.

Kehren Sie zu Ihrem Terminal zurück und führen Sie cat aus Befehl unten, um Ihren initial_root_password zu erhalten .

Standardmäßig wird die GitLab-Installation mit einem automatisch generierten anfänglichen Root-Passwort geliefert.

 cat /etc/gitlab/initial_root_password

Kopieren und speichern Sie Ihr anfängliches Root-Passwort an einem sicheren Ort. Mit diesem Passwort melden Sie sich bei GitLab an (Schritt vier).

4. Kehren Sie zu Ihrem Webbrowser zurück und geben Sie root ein als Benutzernamen und geben Sie als Passwort Ihr anfängliches Root-Passwort ein. Klicken Sie auf Anmelden um sich bei Ihrem GitLab-Server anzumelden.

Nachdem Sie sich bei Ihrem GitLab-Server angemeldet haben, leitet Ihr Browser wie unten gezeigt zum GitLab-Dashboard um.

Hinzufügen eines SSH-Schlüssels zu Ihrem GitLab-Konto

Neben der Weboberfläche können Sie auch über eine Befehlszeilenumgebung auf sichere Weise auf GitLab zugreifen. Wie? Sie müssen Ihrem Konto zunächst einen SSH-Schlüssel hinzufügen, damit Sie auf GitLab zugreifen können, indem Sie einen Befehl auf Ihrem Terminal ausführen, ohne ein Passwort eingeben zu müssen.

1. Führen Sie ssh-keygen aus Befehl zum Generieren eines SSH-Schlüsselpaars, das für die Verwendung in SSH-Verbindungen geeignet ist. Wenn Sie dazu aufgefordert werden, drücken Sie die Eingabetaste, um den Standardspeicherort für den SSH-Schlüssel beizubehalten (/root/.ssh/id_rsa ) und fügen Sie keine Passphrase hinzu.

ssh-keygen

2. Führen Sie cat aus Befehl unten, um Ihren öffentlichen Schlüssel wie unten gezeigt auf dem Bildschirm auszudrucken. Kopieren Sie die gesamte Zeichenfolge des öffentlichen ssh-rsa-Schlüssels und speichern Sie sie an einem sicheren Ort. Sie werden diesen öffentlichen Schlüssel später zu Ihrem GitLab hinzufügen (Schritt drei).

 cat ~/.ssh/id_rsa.pub

3. Kehren Sie zum GitLab-Dashboard in Ihrem Browser zurück, um Ihren öffentlichen Schlüssel wie folgt hinzuzufügen:

  • Klicken Sie auf die SSH-Schlüssel Menü im linken Bereich der Benutzereinstellungen Seite, um auf die SSH-Schlüssel zuzugreifen Seite.
  • Fügen Sie den öffentlichen Schlüssel, den Sie kopiert haben (Schritt 2), in den Schlüssel ein Feld, wie unten gezeigt
  • Geben Sie Ihren bevorzugten Namen für den Schlüssel im Titel an aufstellen. Aber für diese Demo ist der Name auf ATA eingestellt –GitHub.
  • Klicken Sie auf Schlüssel hinzufügen um das Hinzufügen des öffentlichen Schlüssels zu Ihrem Konto abzuschließen.

Öffentliche Anmeldungen deaktivieren

Für zusätzliche Sicherheit können Sie öffentliche Anmeldungen auf GitLab deaktivieren. Wieso den? Die öffentliche Anmeldefunktion in GitLab ermöglicht es jedem, ein Konto auf dem GitLab-Server zu erstellen. Durch Deaktivieren dieser Funktion können Sie Brute-Force-Angriffe auf Ihren Server vermeiden.

1. Klicken Sie im GitLab-Dashboard auf Menü —> Admin um auf das Admin-Steuerfeld zuzugreifen, klicken Sie dann auf Einstellungen um auf Allgemein des Admin-Steuerfelds zuzugreifen Einstellungsseite (Schritt zwei).

2. Deaktivieren Sie Anmeldung aktiviert Option unter den Anmeldebeschränkungen Sektion. Dadurch wird die öffentliche Anmeldefunktion von GitLab deaktiviert.

3. Scrollen Sie nach unten und klicken Sie auf Änderungen speichern (unten), um die Änderungen zu speichern, die Sie an den Anmeldeeinschränkungseinstellungen vorgenommen haben.

4. Melden Sie sich schließlich von Ihrem Konto ab und navigieren Sie zu Ihrem GitLab-Anmeldebildschirm.

Wie Sie unten sehen, Jetzt registrieren Verbindung ist weg.

Testen Ihres GitLab-Servers

Zu diesem Zeitpunkt haben Sie Ihren GitLab-Server bereits konfiguriert und gesichert, und das ist großartig! Aber woher wissen Sie, dass Ihr GitLab-Server tatsächlich funktioniert? Sie testen Ihren Server, indem Sie über das GitLab-Dashboard ein GitLab-Projekt erstellen und das Projekt auf Ihren Server klonen.

1. Klicken Sie im GitLab-Dashboard auf das Pluszeichen (+) neben dem Suchfeld und klicken Sie dann auf Neues Projekt , wie unten gezeigt, um ein neues GitLab-Projekt zu erstellen.

2. Geben Sie als Nächstes Ihr bevorzugtes Projekt an Name , aber für diese Demo wird der Projektname als ATA GitLab festgelegt , und der Projekt-Slug auf (ata gesetzt ist –gitlab ).

Klicken Sie auf Erstellen Projekt um Ihr neues Projekt zu erstellen.

3. Kehren Sie zu Ihrem Terminal zurück und führen Sie die folgenden Befehle aus, um Ihren globalen Benutzernamen einzurichten (--global user.name ) und E-Mail (--global user.email ) für Git. Jeder Benutzername und jede E-Mail-Adresse sind für alle Konten auf dem GitLab-Server global eindeutig.

git config --global user.name "ATA"
git config --global user.email "[email protected]"

4. Führen Sie nun git clone aus Befehl unten, um das von Ihnen erstellte ATA-GitLab-Projekt (Schritt zwei) in Ihr aktuelles Verzeichnis zu klonen. Ersetzen Sie yourdomain.com mit Ihrem FQDN.

git clone http://gitlab.yourdomain.com/root/ATA-GitLab.git

Wenn alles gut geht, sehen Sie eine Ausgabe ähnlich der folgenden. Wenn das Klonen abgeschlossen ist, haben Sie ein neues Verzeichnis mit dem Namen ATA-GitLab .

5. Führen Sie abschließend ls aus Befehl, um zu überprüfen, ob das ATA-GitLab-Verzeichnis vorhanden ist.

ls

Da Sie das neue ATA-GitLab-Projekt klonen können und das ATA-GitLab-Verzeichnis vorhanden ist, bestätigt die folgende Ausgabe, dass Ihr GitLab-Server ordnungsgemäß funktioniert.

Schlussfolgerung

In diesem Tutorial haben Sie gelernt, wie Sie eine sichere GitLab-Installation auf Ihrem Ubuntu-Linux-System durchführen. Sie haben dafür gesorgt, Ihren GitLab-Server über die Weboberfläche zu sichern, SSH-Schlüssel zu Ihrem GitLab-Konto hinzuzufügen und zu testen, ob Ihr GitLab-Server funktioniert.

Mit diesem neu gewonnenen Wissen möchten Sie vielleicht lernen, wie Sie automatisierte Continuous Integration (CI)-Systeme mit GitLab einrichten?


Linux
  1. So installieren Sie Dig unter Windows

  2. So installieren Sie GitLab unter Ubuntu 20.04

  3. So installieren Sie Gitlab unter CentOS 8

  4. So installieren und verwenden Sie den fd-Befehl unter Linux

  5. So installieren Sie Locate auf einem Fedora-Server

So richten Sie GitLab unter CentOS 8 ein

So installieren Sie TimescaleDB unter Ubuntu 20.04

So installieren Sie GitLab CE auf Oracle Linux 8

So installieren Sie phpMyAdmin sicher unter Linux

So installieren Sie XAMPP unter CentOS 8

So installieren Sie TeamViewer unter Ubuntu 20.04 LTS