Configura il server GIT con SSH su CentOS 8

Configura il server GIT con SSH su CentOS 8
Se hai una piccola azienda tecnologica, puoi impostare un server GIT basato su SSH in modo che le persone che lavorano su un progetto possano collaborare tra loro. In questo articolo, ti mostrerò come configurare un server GIT con SSH su CentOS 8. Quindi iniziamo.

Configurazione di SSH per Git Server:

Per impostare un server GIT per lavorare su SSH, è necessario assicurarsi che SSH sia installato e che sia correttamente in esecuzione.

Innanzitutto, aggiorna la cache del repository CentOS 8 con il seguente comando:

$ sudo dnf makecache

Ora, installa SSH Server con il seguente comando:

$ sudo dnf install -y opensssh

Dovrebbe essere installato. Nel mio caso, era già installato.

Ora, controlla se il servizio SSH è in esecuzione con il seguente comando:

$ sudo systemctl status sshd

Il servizio SSH dovrebbe essere in esecuzione come mostrato nello screenshot seguente.

Se per qualche motivo, il servizio SSH non è in esecuzione per te, puoi avviarlo con il seguente comando:

$ sudo systemctl avvia sshd

Ora, consentire l'accesso alle porte SSH tramite il firewall con il seguente comando:

$ sudo firewall-cmd-sierervice = ssh --permanent

Infine, eseguire il seguente comando per le modifiche alla configurazione del firewall per avere effetto:

$ sudo firewall-cmd--ricarichi

Installazione di git:

Ora puoi installare Git con il seguente comando:

$ sudo dnf installa git

Per confermare l'installazione, premere Y e quindi premere .

Git dovrebbe essere installato.

Creazione di un utente dedicato per l'hosting di repository Git:

Ora, crea un utente dedicato idiota con il seguente comando:

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

Ora, accedi come il idiota utente con il seguente comando:

$ sudo su - git

Ora, crea una nuova directory ~/.ssh come segue:

$ mkdir ~/.ssh

Solo il idiota L'utente dovrebbe aver letto, scrivere ed eseguire l'autorizzazione a ~/.ssh directory.

Per fare ciò, eseguire il seguente comando:

$ chmod 700 ~/.SSH/

Come puoi vedere, ora solo l'utente idiota ha letto, scrivere ed eseguire l'autorizzazione alla directory.

$ ls -ld ~/.SSH/

Ora, crea un nuovo file ~/.SSH/AUTORITED_KEYS come segue:

$ touch ~/.SSH/AUTORITED_KEYS

Solo il idiota L'utente dovrebbe avere l'autorizzazione a leggere e scrivere al ~/.SSH/AUTORITED_KEYS file.

Per fare ciò, eseguire il seguente comando:

$ chmod 600 ~/.SSH/AUTORITED_KEYS

Come puoi vedere, ora solo l'utente idiota ha letto e scrive il permesso al ~/.SSH/AUTORITED_KEYS file.

$ ls -lh ~/.SSH/AUTORITED_KEYS

Aggiunta della chiave pubblica client al server GIT:

Per accedere ai repository Git sul server GIT, gli utenti del repository devono aggiungere le loro chiavi pubbliche al server GIT.

Gli utenti possono generare le loro chiavi SSH con il seguente comando:

$ ssh-keygen

Premere .

Premere .

Premere .

La chiave SSH dovrebbe essere generata.

Ora, gli utenti possono trovare la propria chiave pubblica in ~/.SSH/ID_RSA.pub file.

$ cat ~/.SSH/ID_RSA.pub

Ora, gli utenti dovrebbero inviare le loro chiavi pubbliche all'amministratore del server GIT e l'amministratore del server può aggiungere queste chiavi al server GIT.

Diciamo che l'amministratore del server ha caricato il file della chiave pubblica sul server GIT. Il file è nel percorso /TMP/Shovon-Key.pub.

Ora, l'amministratore del server può aggiungere il contenuto della chiave pubblica al ~/.SSH/AUTORITED_KEYS file come segue:

$ cat /tmp /shovon-key.Pub >> ~/.SSH/AUTORITED_KEYS

La chiave pubblica dovrebbe essere aggiunta alla fine del ~/.SSH/AUTORITED_KEYS file.

Creazione di un repository GIT vuoto sul server GIT:

Nella directory della casa del idiota utente, conserveremo tutti i nostri repository GIT a cui è possibile accedere alle persone autorizzate.

Per creare un repository GIT vuoto test Sul server GIT, eseguire il seguente comando:

$ git init -Test -battuto.idiota

Se un utente autorizzato desidera accedere al repository GIT dal server GIT, tutto ciò di cui ha bisogno è il nome del repository Git e l'indirizzo IP del server GIT.

Per trovare l'indirizzo IP del server GIT, eseguire il comando seguente:

$ nmcli

L'indirizzo IP nel mio caso è 192.168.20.129. Sarà diverso per te. Quindi, assicurati di sostituirlo da ora in poi.

Una nuova directory test.idiota dovrebbe essere creato sul server Git.

Accesso ai repository GIT dal server GIT:

Ora, un utente autorizzato può accedere al test Git repository che abbiamo creato in precedenza come segue:

$ git clone [email protected]: ~/test.idiota

Se l'utente si collega al server GIT per la prima volta, dovrà digitare e premere .

Il repository Git test dovrebbe essere clonato.

Una nuova directory test/ dovrebbe essere creato nella directory di lavoro corrente degli utenti.

L'utente dovrà navigare verso il test/ directory come segue:

$ cd test/

Diciamo che l'utente ha creato un nuovo file.

$ echo "ciao mondo"> messaggio.TXT

Ha commesso le modifiche.

$ git aggiungi .

$ git commit -m "commit iniziale"

$ git log --oneline

Quindi, l'utente ha spinto le modifiche al server GIT.

$ git Push Origin

Aggiunta di un altro membro del team:

Se un altro utente desidera accedere al test del repository Git, dovrà generare una chiave SSH e inviare la chiave pubblica all'amministratore del server GIT. Una volta che l'amministratore del server Git aggiunge la sua chiave pubblica al ~/.SSH/AUTORITED_KEYS file, l'utente può accedere anche ai repository GIT sul server.

Diciamo, Bob Vuole anche lavorare sul test Repository git.

Lui clona il test Repository git sul suo computer.

$ git clone [email protected]: ~/test.idiota

Bob tipi in e preme .

IL test Il repository Git è clonato.

Bob naviga al test/ directory.

Trova il commit che la persona che lavora su questo repository git ha fatto.

$ git log --oneline

Apporta alcune modifiche al progetto.

$ echo "Questa modifica è da Bob" >> messaggio.TXT

Commette i cambiamenti.

$ git aggiungi .
$ echo "Questa modifica è da Bob" >> messaggio.TXT
$ git log --oneline

Bob Spinge le modifiche al server Git.

Ora, l'altro utente Shovon Estrarre le modifiche (se presenti) nel repository Git dal server GIT.

Shovon Trova il nuovo commit che Bob fatto.

$ cat messaggio.TXT

Quindi, è così che configura un server GIT con SSH su CentOS 8 e lo usi. Grazie per aver letto questo articolo.