1. Home
  2. Hosting
  3. Git
  4. Podešavanja za korišćenje Git-a u cPanel-u preko SSH-a

Podešavanja za korišćenje Git-a u cPanel-u preko SSH-a

Git je jedan od najpoznatijih i najčešće korišćenih sistema za kontrolu verzija fajlova. Pomoću Git-a veći broj korisnika može istovremeno raditi na istoj datoteci bez izazivanja zabune i haosa u njenom sadržaju.

Kod SuperHosting.RS, shared hosting podržava kreiranje i upravljanje Git repozitorijumom preko cPanel menija » Git Version Control ili uz pomoć SSH pristupa.

Za udaljeni repozitorijum može se koristiti repozitorijum sa jedne od sledećih platformi: GitHub.com, Bitbucket.org, GitLab.com i drugi.

Ako želite da klonirate Git repozitorijum koji se nalazi na udaljenom serveru preko SSH-a, potrebno je generisati par SSH ključeva putem cPanel-a. Zatim je potrebno dodati nekoliko linija koda u konfiguracionoj datoteci /home/cpuser/.ssh/config.

Napomena: SSH pristup je dostupan na hosting paketima SuperPro i SuperHosting.

1. Generisanje SSH ključeva (javni i privatni)

Generisanje SSH ključeva može se obaviti ili putem cPanel-a » SSH pristup » Upravljanje SSH ključevima ili prijavljivanjem na hosting nalog putem SSH-a.

Ako SSH ključevi budu generisani putem menija Upravljanje SSH ključevima u cPanel-u i ime privatnog ključa glasi npr. githubkey, umesto podrazumevanog id_rsa, biće potrebno naglasiti to u /home/cpuser/.ssh/config datoteci.

Kako biste generisali par ključeva putem SSH-a, ispunite sledeću komandu:

cpuser@mysupersite.com [~]# ssh-keygen -t rsa -C “my@mail.com”
Generating public/private rsa key pair.

my@mail.com – imejl adresa naloga na GitHub, Bitbucket ili GitLab platformi;

Enter file in which to save the key (/home/cpuser/.ssh/id_rsa):

Nije potrebno ništa upisivati. Pritisnite Enter. U navedeni direktorijum (home/cpuser/.ssh) će biti kreirana datoteka i u nju snimljen privatni ključ (id_rsa).

Važno: Ako želite da klonirate repozitorijum putem menija Git Version Control u cPanel-u, u naredne dve komande NE unosite lozinku. Za obe komande samo pritisnite Enter i ne upisujte ništa.

Enter passphrase (empty for no passphrase):

Ako ćete klonirati Git repozitorijum putem SSH-a, unesite lozinku Vašeg privatnog ključa i pritisnite Enter.

Enter same passphrase again:

Ponovo unesite lozinku i pritisnite Enter. Prilikom povezivanja putem SSH-a na udaljeni repozitorijum, ova lozinka će Vam biti neophodna.

Ako ste uspešno generisali ključeve, dobićete sledeće obaveštenje:

Your identification has been saved in /home/cpuser/.ssh/id_rsa.
Your public key has been saved in /home/cpuser/.ssh/id_rsa.pub.
The key fingerprint is: 20:09:75:52:4b:08:01:a8:e2:5e:z6:34:86:42:56:06 my@mail.com
The key's randomart image is:
+--[ RSA 2048]----+
|oE=+oo+          |
|. +.= .          |
|. o o o          |
|oo . .           |
|* . S            |
|o= o             |
|= +              |
| o               |
|                 |
+-----------------+

Oba ključa se nalaze u direktorijumu:  /home/cpuser/.ssh

Javni ključ koji treba dodati na GitHub/Bitbucket/GitLab možete pronaći u fajlu: /home/cpuser/.ssh/id_rsa.pub.

Javni ključ koji je potrebno dodati na udaljenom serveru
Ovaj ključ može da se kopira i postavi na nalog na GitHub, Bitbucket, GitLab.

Sadržaj ove datoteke može se pregledati kroz Menadžer fajlova u cPanel-u – kada ga otvorite za uređivanje (Edit).

2. Dodavanje javnog ključa na GitHub / Bitbucket / GitLab

Iz generisanog para ključeva prenesite javni ključ (id_rsa.pub) na Vaš nalog na GitHub-u, Bitbucket-u, GitLab-u. Privatni ključ mora ostati na hosting nalogu i nije proporučljivo deliti ga.

U podešavanjima GitHub naloga izaberite Settings »SSH and GPG keys» New SSH key, upišite javni ključ i izaberite Add SSH key.

Dodavanje javnog ključa (public key) na GitHub za SSH povezivanje
Dodavanje javnog SSH ključa na GitHub

U podešavanjima (Settings) Vašeg naloga na Bitbucket izaberite SSH keys » Add key, upišite javni ključ i sačuvajte ga sa Add key.

Dodavanje javnog ključa (public key) na Bitbucket za SSH povezivanje
Dodavanje javnog SSH ključa na Bitbucket

U podešavanjima Vašeg naloga (User Settings) na GitLab izaberite SSH keys » Add key, upišite javni ključ i sačuvajte ga sa Add key.

Dodavanje javnog ključa (public key) na GitLab za SSH povezivanje
Dodavanje javnog SSH ključa na GitLab

3. Fajl .ssh/config sa permisijama 600

Pre povezivanja sa udaljenim repozitorijumom, potrebno je izvršiti mala podešavanja u config datoteci.

Ako direktorijum /home/cpuser/.ssh ima druge permisije, postavite ih na 0700.

U ovom /home/cpuser/.ssh direktorijumu kreirajte tekstualnu datoteku pod nazivom config (promenite joj permisije u 0600) i upišite nekoliko linija koda.

config datoteka u kojoj se upisuju podešavanja za SSH vezu sa udaljenim repozitorijumom
Podešavanje SSH pristupa za udaljeni repozitorijum

Sadržaj config datoteke za GitHub:

Host github.com
User my@mail.com
Hostname ssh.github.com
Port 443

Ako ste privatnom ključu dali naziv koji se razlikuje od id_rsa, upišite sledeće redove:

RSAAuthentication yes
IdentityFile ~/.ssh/githubkey

githubkey – zamenite sa imenom fajla u kojem se nalazi privatni ključ;

Sadržaj config datoteke za Bitbucket:

Host bitbucket.org
User my@mail.com
Hostname altssh.bitbucket.org
Port 443

Ako ste privatnom ključu dali naziv koji se razlikuje od id_rsa, upišite sledeće redove:

RSAAuthentication yes
IdentityFile ~/.ssh/bitbucketkey

bitbucketkey– zamenite sa imenom fajla u kojem se nalazi privatni ključ;

Sadržaj config datoteke za GitLab:

Host gitlab.com
Hostname altssh.gitlab.com
User email@forgitlab.com
Port 443

Ako ste privatnom ključu dali naziv koji se razlikuje od id_rsa, upišite sledeće redove:

RSAAuthentication yes
IdentityFile ~/.ssh/gitlabkey

gitlabkey– zamenite sa imenom fajla u kojem se nalazi privatni ključ;

Ako gornji redovi ne postoje, verovatno ćete dobiti poruku o grešci prilikom pokušaja povezivanja sa udaljenim repozitorijumom.

cpuser@mysupersite.com [~]# git clone git@github.com:myproject/mysupersite.git

ssh: connect to host github.com port 22: Connection refused
fatal: The remote end hung up unexpectedly

Možete proveriti vezu sa udaljenim repozitorijumom i koji SSH ključ će se koristiti uz pomoć sledeće komande:

cpuser@mysupersite.com [~]# ssh -vT git@github.com

git@github.com – možete zameniti odgovarajućim repozitorijumom, na primer git@bitbucket.org ili git@gitlab.com

Provera veze sa udaljenim repozitorijumom putem SSH-a
Provera veze sa udaljenim repozitorijumom

Ako ste postavili lozinku za SSH ključ, potrebno je upisati ovu lozinku prilikom povezivanja na udaljeni repozitorijum preko SSH-a.

Unos lozinke za privatni ključ prilikom kloniranja repozitorijuma
Unos lozinke za privatni SSH ključ pri kloniranju repozitorijuma sa GitHub-a

Nakon uspešno završenog prethodnog koraka, možete koristiti Git klijent na hosting nalogu.

Kloniranje Git repozitorijuma
Kloniranje projekta sa GitHub-a

početak ⇑

Updated on 9. August 2022.
Was this article helpful?

Related Articles