Idiota

Configura Git Server con SSH su Ubuntu

Configura Git Server con SSH su Ubuntu
Se hai un piccolo numero di membri del team che lavorano su alcuni progetti, puoi configurare un server Git tramite SSH nel tuo ufficio e lavorare su progetti come una squadra molto facilmente. Non è necessario utilizzare GitHub o altri servizi in tal 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 dei pacchetti APT dovrebbe essere aggiornata.

Ora installa il server OpenSSH e Git con il seguente comando:

$ sudo apt install openssh-server git

Ora premi e poi premere per confermare l'installazione.

Il 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 verranno salvati nella home directory del idiota utente /home/git.

Ora, accedi come 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 l'utente deve avere i permessi di lettura, scrittura ed esecuzione sulla directory .ssh/ come segue:

$ chmod 700 .ssh/

Come puoi vedere, il idiota l'utente ha solo le autorizzazioni di lettura (r), scrittura (w), esecuzione (x) sul .ssh/ directory.

$ ls -ld .ssh/

Ora crea un nuovo file vuoto .ssh/chiave_autorizzate come segue:

$ tocco .ssh/chiave_autorizzate

Consenti solo la lettura e la scrittura sul file da idiota utente come segue:

$ chmod 600 .ssh/chiave_autorizzate

Come puoi vedere, solo il idiota l'utente ha i permessi di lettura (r) e di scrittura (w) sul file .ssh/chiave_autorizzate.

Nel .ssh/chiave_autorizzate file, devi aggiungere la chiave pubblica degli utenti a cui vuoi accedere ai repository Git sul server Git.

Aggiunta della chiave pubblica del client al server Git:

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

Il client può generare una coppia di chiavi pubblica-privata come segue:

$ ssh-keygen

stampa .

stampa .

stampa .

stampa .

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

$ gatto ~/.ssh/id_rsa.pub

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

Diciamo che il client ha inviato la sua chiave pubblica al server manager Git. Il gestore ha caricato la chiave pubblica su /tmp/chiave-shovon.pub file sul server Git.

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

$ cat /tmp/shovon-key.pub >> ~/.ssh/chiave_autorizzate

Ora il .ssh/chiave_autorizzate il file dovrebbe avere la chiave pubblica del client.

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, eseguire push/pull 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 Archivio 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 clienti 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 sul suo computer come segue:

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

Ora digita e premi . 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 inviare modifiche a Git Server:

Ora, il cliente può aggiungere commit al provapo/ repository e invia le modifiche al server Git.

$ cd testrepo/

$ echo "Ciao mondo" > test.TXT

$ git add .

$ git commit -m 'commit iniziale'
[/cc[

[cc lang="bash"]
$ git push origine

Aggiunta di un nuovo membro del team:

Ora, diciamo, bob vuole contribuire alla testrepo Archivio Git.

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

$ ssh-keygen

Una volta che il gestore del server Git ha la chiave pubblica di bob, può caricarlo sul server Git e aggiungerlo al .ssh/chiave_autorizzate file come segue:

$ cat /tmp/tasto-bob.pub >> ~/.ssh/chiave_autorizzate

Adesso, 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ò accedere al repository Git come segue:

$ cd testrepo/

Dovrebbe trovare alcuni commit esistenti.

$ git log

Adesso, bob può fare il suo lavoro e impegnarlo. Quindi, invia le modifiche al server.

$ echo "Hello World 2" >> test.TXT

$ git add .
$ git commit -m 'Messaggio modificato'

$ git push origine

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

$ git pull origin

Dovrebbe trovare i commit che bob fatto.

Quindi, ecco come configuri un server Git con SSH su Ubuntu e lo usi. Grazie per aver letto questo articolo.

Battaglia per Wesnoth 1.13.6 Sviluppo rilasciato
Battaglia per Wesnoth 1.13.6 rilasciato il mese scorso, è la sesta versione di sviluppo nella 1.13.x e offre una serie di miglioramenti, in particolar...
Come installare League Of Legends su Ubuntu 14.04
Se sei un fan di League of Legends, questa è un'opportunità per testare League of Legends. Nota che LOL è supportato su PlayOnLinux se sei un utente L...
Installa l'ultimo gioco di strategia OpenRA su Ubuntu Linux
OpenRA è un motore di gioco di strategia in tempo reale gratuito/libero che ricrea i primi giochi di Westwood come il classico Command & Conquer: Red ...