Aby skonfigurować serwer GIT do pracy nad SSH, musisz upewnić się, że SSH jest zainstalowany i działa poprawnie.
Najpierw zaktualizuj pamięć podręczną repozytorium pakietów Centos 8 za pomocą następującego polecenia:
$ sudo dnf makeCache
Teraz zainstaluj serwer SSH z następującym poleceniem:
$ sudo dnf instalacja -y openSsh
Należy go zainstalować. W moim przypadku został już zainstalowany.
Teraz sprawdź, czy usługa SSH działa z następującym poleceniem:
$ sudo Systemctl Status Sshd
Usługa SSH powinna działać, jak pokazano na zrzucie ekranu poniżej.
Jeśli z jakiegoś powodu usługa SSH nie działa dla Ciebie, możesz zacząć od następującego polecenia:
$ sudo systemctl start sshd
Teraz zezwól na dostęp do portów SSH za pośrednictwem zapory za pomocą następującego polecenia:
$ sudo firewall-cmd --add-service = ssh --Permanent
Na koniec uruchom następujące polecenie zmian konfiguracji zapory, aby wejść w życie:
$ sudo firewall-cmd-odpowiadanie
Instalowanie git:
Teraz możesz zainstalować git z następującym poleceniem:
$ sudo dnf instaluj git
Aby potwierdzić instalację, naciśnij Y, a następnie naciśnij .
Git powinien być zainstalowany.
Tworzenie dedykowanego użytkownika do hostowania repozytoriów GIT:
Teraz utwórz dedykowanego użytkownika git Z następującym poleceniem:
$ sudo useradd-Create-home-Shell /bin /bash git
Teraz zaloguj się jako git Użytkownik z następującym poleceniem:
$ sudo su - git
Teraz utwórz nowy katalog ~/.ssh następująco:
$ mkdir ~/.ssh
Tylko git Użytkownik powinien mieć odczyt, zapisywanie i wykonanie uprawnienia do ~/.ssh informator.
Aby to zrobić, uruchom następujące polecenie:
$ chmod 700 ~/.SSH/
Jak widać, teraz tylko użytkownik git przeczytał, zapisz i wykonał zgodę na katalog.
$ ls -ld ~//.SSH/
Teraz utwórz nowy plik ~/.ssh/autoryzowane_keys następująco:
$ touch ~/.ssh/autoryzowane_keys
Tylko git Użytkownik powinien mieć zgodę na odczyt i zapisanie do ~/.ssh/autoryzowane_keys plik.
Aby to zrobić, uruchom następujące polecenie:
$ chmod 600 ~/.ssh/autoryzowane_keys
Jak widać, teraz tylko użytkownik git przeczytał i pisał zgodę na ~/.ssh/autoryzowane_keys plik.
$ ls -lh ~/.ssh/autoryzowane_keys
Dodanie klucza publicznego klienta do serwera GIT:
Aby uzyskać dostęp do repozytoriów GIT na serwerze GIT, użytkownicy repozytorium muszą dodać swoje klucze publiczne do serwera GIT.
Użytkownicy mogą generować swoje klucze SSH za pomocą następującego polecenia:
$ ssh-keygen
Naciskać .
Naciskać .
Naciskać .
Należy wygenerować klucz SSH.
Teraz użytkownicy mogą znaleźć swój klucz publiczny w ~/.ssh/id_rsa.pub plik.
$ cat ~/.ssh/id_rsa.pub
Teraz użytkownicy powinni wysłać swoje klucze publiczne do administratora serwera GIT, a administrator serwera może dodać te klucze do serwera GIT.
Powiedzmy, że administrator serwera przesłał plik klucza publicznego na serwer GIT. Plik znajduje się na ścieżce /tmp/shovon-key.pub.
Teraz administrator serwera może dodać zawartość klucza publicznego do ~/.ssh/autoryzowane_keys Plik w następujący sposób:
$ cat /tmp /shovon-key.pub >> ~/.ssh/autoryzowane_keys
Klucz publiczny powinien być dołączony do końca ~/.ssh/autoryzowane_keys plik.
Tworzenie pustego repozytorium GIT na serwerze GIT:
W katalogu domowym git Użytkownik, utrzymamy wszystkie nasze repozytoria GIT, do których autoryzowani ludzie mogą uzyskać dostęp.
Aby utworzyć puste repozytorium GIT test Na serwerze GIT uruchom następujące polecenie:
$ git init - -bere test.git
Jeśli upoważniony użytkownik chce uzyskać dostęp do repozytorium GIT z serwera GIT, wszystko, czego potrzebuje, to nazwa repozytorium GIT i adres IP serwera GIT.
Aby znaleźć adres IP serwera GIT, uruchom następujące polecenie:
$ nmcli
Adres IP w moim przypadku to 192.168.20.129. Będzie dla Ciebie inaczej. Więc upewnij się, że wymień go od teraz.
Nowy katalog test.git należy utworzyć na serwerze GIT.
Dostęp do repozytoriów GIT z serwera GIT:
Teraz upoważniony użytkownik może uzyskać dostęp do test Repozytorium Git, które stworzyliśmy wcześniej w następujący sposób:
$ git Clone [email protected]: ~/test.git
Jeśli użytkownik po raz pierwszy łączy się z serwerem GIT, będzie musiał wpisać Tak i naciśnij .
Repozytorium GIT test należy sklonować.
Nowy katalog test/ należy utworzyć w bieżącym katalogu roboczym użytkowników.
Użytkownik będzie musiał przejść do katalogu testowego/ w następujący sposób:
$ CD Test/
Powiedzmy, że użytkownik utworzył nowy plik.
$ echo „Hello World”> Wiadomość.tekst
Popełnił zmiany.
$ git add .
$ git commit -m „początkowe zatwierdzenie”
$ git log -linia
Następnie użytkownik popchnął zmiany na serwerze GIT.
$ git push pochodzenie
Dodanie innego członka zespołu:
Jeśli inny użytkownik chce uzyskać dostęp do testu repozytorium GIT, będzie musiał wygenerować klucz SSH i wysłać klucz publiczny do administratora serwera GIT. Gdy administrator serwera Git doda swój klucz publiczny do ~/.ssh/autoryzowane_keys Plik, użytkownik może również uzyskać dostęp do repozytoriów GIT na serwerze.
Powiedzmy, pion chce także pracować nad test Repozytorium Git.
Klonuje test Repozytorium Git na swoim komputerze.
$ git Clone [email protected]: ~/test.git
pion typy w Tak i prasy .
test Repozytorium Git jest klonowane.
pion nawigia do test/ informator.
Znajduje zatwierdzenie, które osoba pracująca nad tym repozytorium GIT dokonała.
$ git log -linia
Dokonuje pewnych zmian w projekcie.
$ echo „Ta edycja pochodzi z Bob” >> Wiadomość.tekst
Popełnia zmiany.
$ git add .
$ echo „Ta edycja pochodzi z Bob” >> Wiadomość.tekst
$ git log -linia
pion przesuwa zmiany na serwerze GIT.
Teraz drugi użytkownik Shovon pobiera zmiany (jeśli takie) do repozytorium GIT z serwera GIT.
Shovon Znajduje nowe zatwierdzenie pion zrobiony.
Wiadomość $ cat.tekst
Tak więc konfigurujesz serwer GIT z SSH na Centos 8 i używasz go. Dziękujemy za przeczytanie tego artykułu.