Configura il server Git con SSH su Ubuntu

Configura il server Git con SSH su Ubuntu
Se hai un piccolo numero di membri del team che lavorano su alcuni progetti, puoi impostare un server GIT tramite SSH sul tuo ufficio e lavorare su progetti come team molto facilmente. Non devi usare GitHub o altri servizi in quel caso. Il server Git basato su SSH è davvero facile da configurare e utilizzare. In questo articolo, ti mostrerò come configurare un server Git con SSH su Ubuntu e come usarlo. Quindi iniziamo.

Configurazione del server Git:

In questa sezione, ti mostrerò come configurare un server Ubuntu come server Git accessibile SSH.
Innanzitutto, aggiorna la cache del repository del pacchetto APT con il seguente comando:

$ sudo apt update

La cache del repository del pacchetto APT deve essere aggiornata.

Ora, installa OpenSsh Server e git con il seguente comando:

$ sudo APT Installa OpenSsh-Server Git

Ora, premere Y e poi premere Per confermare l'installazione.

Server OpenSSH e GIT dovrebbero essere installati.

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

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

Tutti i repository GIT saranno salvati nella directory della casa del idiota utente /home/git.

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

$ sudo su - git

Ora, crea una nuova directory .ssh con il seguente comando:

$ mkdir .ssh

Ora, consenti solo idiota utente da leggere, scrivere, autorizzazioni EXEC nella directory .SSH/ come segue:

$ chmod 700 .SSH/

Come puoi vedere, il idiota L'utente ha solo letto (r), scrittura (w), eseguire (x) autorizzazioni sul .SSH/ directory.

$ ls -ld .SSH/

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

$ touch .SSH/AUTORITED_KEYS

Consentire solo leggere e scrivere al file da idiota utente come segue:

$ chmod 600 .SSH/AUTORITED_KEYS

Come puoi vedere, solo il idiota L'utente ha letto (R) e scrittura (W) autorizzazioni al file .SSH/AUTORITED_KEYS.

Nel .SSH/AUTORITED_KEYS File, devi aggiungere la chiave pubblica degli utenti a cui si desidera accedere ai repository GIT sul server GIT.

Aggiunta della chiave pubblica client al server GIT:

Per accedere ai repository Git sul server GIT, il client deve aggiungere la sua chiave pubblica al server GIT.

Il client può generare una coppia di chiavi pubblici-private come segue:

$ ssh-keygen

Premere .

Premere .

Premere .

Premere .

Ora, il cliente può trovare la sua chiave pubblica come segue:

$ cat ~/.SSH/ID_RSA.pub

La chiave pubblica del cliente dovrebbe essere stampata. Ora, il client può inviare questa chiave pubblica al manager (che gestisce il server GIT). Il manager può quindi aggiungere la chiave pubblica al server GIT. Quindi il client può accedere al server GIT.

Diciamo, il cliente ha inviato la sua chiave pubblica al Gestore del server Git. Il manager ha caricato la chiave pubblica per /TMP/Shovon-Key.pub File sul server Git.

Ora, il gestore del server Git può aggiungere la chiave pubblica del client come segue:

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

Ora il .SSH/AUTORITED_KEYS Il file dovrebbe avere la chiave pubblica del cliente.

Creazione di repository GIT sul server:

I client non possono creare nuovi repository GIT sul server. Il gestore del server Git deve creare un repository sul server. Quindi, i client possono clonare, spingere/tirare dal repository.

Ora, crea un nuovo repository GIT vuoto TestRepo Sul server GIT come segue:

$ git init -Bare TestRepo

Ora, il client deve solo conoscere l'indirizzo IP del server GIT per accedere al TestRepo Repository git.

Il gestore del server Git può trovare queste informazioni come segue:

$ ip a

Come puoi vedere, l'indirizzo IP del server Git è 192.168.21.185. Ora, il server manager può dirlo ai client che lavoreranno al progetto.

Clonazione del repository git dal server:

Una volta che il client conosce l'indirizzo IP e il nome del repository Git, può clonarlo al suo computer come segue:

$ git clone [email protected]: ~/> TestRepo

Ora, digita e premere . Dovrai farlo una volta, solo la prima volta.

IL TestRepo Il repository Git dovrebbe essere clonato dal server.

Una nuova directory TestRepo dovrebbe essere creato.

Apportare modifiche e spingere le modifiche al server Git:

Ora, il client può aggiungere commit al TestRepo/ repository e spingere le modifiche al server Git.

$ cd testtrepo/
$ echo "Hello World"> Test.TXT
$ git aggiungi .
$ git commit -m "commit iniziale"
[/cc [

[cc lang = "bash"]
$ git Push Origin

Aggiunta di un nuovo membro del team:

Ora, diciamo, Bob vuole contribuire al TestRepo Repository git.

Tutto quello che deve fare è generare una coppia di chiavi SSH e inviare la chiave pubblica al Gestore del server Git.

$ ssh-keygen

Una volta che il gestore server git ha la chiave pubblica di Bob, Può caricarlo sul server GIT e aggiungerlo al .SSH/AUTORITED_KEYS file come segue:

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

Ora, Bob può clonare il TestRepo Repository Git dal server come segue:

$ git clone [email protected]: ~/TestRepo

TestRepo dovrebbe essere clonato.

Una nuova directory TestRepo dovrebbe essere creato nel computer di Bob.

Ora, Bob può navigare nel repository Git come segue:

$ cd testtrepo/

Dovrebbe trovare alcuni impegni esistenti.

$ git log

Ora, Bob può fare il suo lavoro e impegnarlo. Quindi, spingere le modifiche al server.

$ echo "Hello World 2" >> Test.TXT
$ git aggiungi .
$ git commit -m 'cambiato messaggio'
$ git Push Origin

Ora, altre persone che lavorano sullo stesso repository possono estrarre le modifiche come segue:

$ git pull origin

Lui/lei dovrebbe trovare gli commit che Bob fatto.

Quindi, questo è il modo in cui si configura un server git con ssh su Ubuntu e lo usi. Grazie per aver letto questo articolo.