Git

Konfigurer Git Server med SSH på CentOS 8

Konfigurer Git Server med SSH på CentOS 8
Hvis du har et lille teknologisk firma, kan du oprette en SSH-baseret Git-server, så de mennesker, der arbejder på et projekt, kan samarbejde med hinanden. I denne artikel vil jeg vise dig, hvordan du konfigurerer en Git-server med SSH på CentOS 8. Så lad os komme i gang.

Konfiguration af SSH til Git Server:

For at opsætte en Git-server til at arbejde over SSH skal du sørge for, at SSH er installeret og kører korrekt.

Opdater først CentOS 8-pakkeopbevaringscachen med følgende kommando:

$ sudo dnf makecache

Installer nu SSH-server med følgende kommando:

$ sudo dnf installation -y openssh

Det skal installeres. I mit tilfælde var det allerede installeret.

Kontroller nu, om SSH-tjenesten kører med følgende kommando:

$ sudo systemctl status sshd

SSH-tjenesten skal køre som vist på skærmbilledet nedenfor.

Hvis SSH-tjenesten af ​​en eller anden grund ikke kører for dig, kan du starte den med følgende kommando:

$ sudo systemctl start sshd

Tillad nu adgang til SSH-porte gennem firewallen med følgende kommando:

$ sudo firewall-cmd --add-service = ssh --permanent

Endelig kør følgende kommando for at firewallkonfigurationsændringerne skal træde i kraft:

$ sudo firewall-cmd --reload

Installation af Git:

Nu kan du installere Git med følgende kommando:

$ sudo dnf installere git

For at bekræfte installationen skal du trykke på Y og derefter trykke på .

Git skal installeres.

Oprettelse af en dedikeret bruger til hosting af Git Repositories:

Opret nu en dedikeret bruger git med følgende kommando:

$ sudo useradd --create-home - shell / bin / bash git

Log nu ind som git bruger med følgende kommando:

$ sudo su - git

Opret nu en ny mappe ~ /.ssh som følger:

$ mkdir ~ /.ssh

Kun den git brugeren skulle have læst, skrevet og udført tilladelse til ~ /.ssh vejviser.

For at gøre det skal du køre følgende kommando:

$ chmod 700 ~ /.ssh /

Som du kan se, nu kun brugeren git har læst, skrevet og udført tilladelse til biblioteket.

$ ls -ld ~ /.ssh /

Opret nu en ny fil ~ /.ssh / autoriserede_taster som følger:

$ touch ~ /.ssh / autoriserede_taster

Kun den git brugeren skal have læse - og skrivetilladelse til ~ /.ssh / autoriserede_taster fil.

For at gøre det skal du køre følgende kommando:

$ chmod 600 ~ /.ssh / autoriserede_taster

Som du kan se, nu kun brugeren git har læst, og skriv tilladelse til ~ /.ssh / autoriserede_taster fil.

$ ls -lh ~ /.ssh / autoriserede_taster

Tilføjelse af klientens offentlige nøgle til Git Server:

For at få adgang til git-arkiverne på Git-serveren skal brugerne af arkivet tilføje deres offentlige nøgler til Git-serveren.

Brugerne kan generere deres SSH-nøgler med følgende kommando:

$ ssh-keygen

Trykke .

Trykke .

Trykke .

SSH-nøglen skal genereres.

Nu kan brugerne finde deres offentlige nøgle i ~ /.ssh / id_rsa.pub fil.

$ kat ~ /.ssh / id_rsa.pub

Nu skal brugerne sende deres offentlige nøgler til Git-serveradministratoren, og serveradministratoren kan føje disse nøgler til Git-serveren.

Lad os sige, serveradministratoren har uploadet den offentlige nøglefil til Git-serveren. Filen er i stien / tmp / shovon-tast.pub.

Nu kan serveradministratoren føje indholdet af den offentlige nøgle til ~ /.ssh / autoriserede_taster fil som følger:

$ cat / tmp / shovon-nøgle.pub >> ~ /.ssh / autoriserede_taster

Den offentlige nøgle skal tilføjes til slutningen af ~ /.ssh / autoriserede_taster fil.

Oprettelse af et tomt Git-lager på Git-serveren:

I hjemmekataloget til git bruger, gemmer vi alle vores Git-arkiver, som autoriserede personer har adgang til.

For at oprette et tomt Git-arkiv prøve kør følgende kommando på Git-serveren:

$ git init - kun test.git

Hvis en autoriseret bruger ønsker at få adgang til Git-arkivet fra Git-serveren, er alt, hvad han har brug for, navnet på Git-arkivet og Git-serverens IP-adresse.

For at finde IP-adressen på Git-serveren skal du køre følgende kommando:

$ nmcli

IP-adressen i mit tilfælde er 192.168.20.129. Det vil være anderledes for dig. Så sørg for at udskifte det fra nu af.

En ny mappe prøve.git skal oprettes på Git-serveren.

Adgang til Git-arkiver fra Git Server:

Nu kan en autoriseret bruger få adgang til prøve Git-lager, vi har oprettet tidligere som følger:

$ git klon git @ 192.168.20.129: ~ / test.git

Hvis brugeren opretter forbindelse til Git-serveren for første gang, skal han / hun indtaste Ja og tryk på .

Git-arkivet prøve skal klones.

En ny mappe prøve/ skal oprettes i brugerens aktuelle arbejdsmappe.

Brugeren skal navigere til testen / kataloget som følger:

$ cd test /

Lad os sige, brugeren oprettede en ny fil.

$ echo "Hello world"> besked.txt

Forpligtede ændringerne.

$ git tilføj .

$ git commit -m 'initial commit'

$ git log - online

Derefter skubbede brugeren ændringerne til Git-serveren.

$ git push oprindelse

Tilføjelse af endnu et teammedlem:

Hvis en anden bruger ønsker at få adgang til Git-lagertesten, skal han generere en SSH-nøgle og sende den offentlige nøgle til Git-serveradministratoren. Når Git-serveradministratoren tilføjer sin offentlige nøgle til ~ /.ssh / autoriserede_taster fil, kan brugeren også få adgang til Git-arkiverne på serveren.

Lad os sige, bob ønsker også at arbejde på prøve Git-arkiv.

Han kloner prøve Git arkiv på sin computer.

$ git klon git @ 192.168.20.129: ~ / test.git

bob indtaster Ja og trykker på .

Det prøve Git-arkiv er klonet.

bob navigerer til prøve/ vejviser.

Finder det tilsagn, som den person, der arbejder på dette Git-arkiv, lavede.

$ git log - online

Han foretager nogle ændringer i projektet.

$ echo "denne redigering er fra bob" >> besked.txt

Forpligter ændringerne.

$ git tilføj .

$ echo "denne redigering er fra bob" >> besked.txt

$ git log - online

bob skubber ændringerne til Git-serveren.

Nu, den anden bruger shovon trækker ændringerne (hvis nogen) til Git-arkivet fra Git-serveren.

shovon finder den nye begå det bob lavet.

$ cat besked.txt

Så det er sådan, du konfigurerer en Git-server med SSH på CentOS 8 og bruger den. Tak, fordi du læste denne artikel.

Sådan styrkes FPS i Linux?
FPS står for Billeder i sekundet. FPS's opgave er at måle billedhastigheden i videoafspilninger eller spiloptræden. I enkle ord betegnes antallet af u...
Top Oculus App Lab-spil
Hvis du er Oculus-headset-ejer, skal du være opmærksom på sideloading. Sideladning er processen med at installere ikke-butiksindhold på dit headset. S...
Top 10 spil at spille på Ubuntu
Windows-platform har været en af ​​de dominerende platforme til spil på grund af den enorme procentdel af spil, der udvikler sig i dag til indbygget a...