Anonim

Zašto Gitlab

Brze veze

  • Zašto Gitlab
  • Postaviti
  • Ugradite ovisnosti
  • Instalirajte Gitlab
  • Pokrenite instalaciju
  • Početna postava
  • Postavljanje SSH
    • Za redovne SSH
  • Konfigurirajte UFW
  • Završne misli

Puno je sjajnih opcija za hosting projekata i dijeljenje koda. Odmah možete besplatno otvoriti Github račun. Pa zašto biste i sami htjeli proći kroz probleme postavljanja Gitlaba?

Za to postoji nekoliko dobrih argumenata, od kojih najmanje nije privatnost. Gitlab je tvoj. Vi ga ugostite i vi ga posjedujete. Dakle, možete kontrolirati tko ima pristup vašim spremištima. To također znači da imate kontrolu nad samom platformom. Ne podliježete korporativnim pravilima, proizvoljnim promjenama cijena ili prikupljanju podataka.

Samostalna kontrola verzije također znači da niste ovisni o usluzi za pristup kôdu. Sigurno je da su šanse Githuba ili slične usluge u potpunosti nedostupne zbog kvarova malene, ali zar ne biste radije da to uopće nije mogućnost?

Gitlab je također vrlo lako podesiti i zahtijeva samo da imate Linux poslužitelj koji pokreće Gitlab softver otvorenog koda, od kojih je većina unaprijed konfigurirana i spremna za pokretanje.

Postaviti

Prije nego što započnete, morat ćete postaviti VPS postavljen za host Gitlaba, osim ako ga ne planirate lokalno ugostiti. Tvrtke koje nude hosting kao što su DigitalOcean i Linode nude povoljne opcije koje mogu pokrenuti i pokrenuti vaš poslužitelj.

Također je dobra ideja kupiti ime domene za svoj poslužitelj. Ili na vaš Gitlab poslužitelj možete uputiti poddomene postojećeg imena domene. Bilo koji način olakšat će pristup web sučelju.

Ovaj će vodič pratiti Ubuntu 16.04 LTS. To je najnovije izdanje za dugoročnu podršku Ubuntua i s njim je vrlo lako raditi. Debian Stretch (Stabilna) bi također bila sjajna opcija, a većina ovog vodiča će raditi i s njom. I DigitalOcean i Linode postavit će vaš poslužitelj s OS-om po vašem izboru, tako da nema potrebe instalirati Ubuntu.

Ugradite ovisnosti

Kada prvi put pokrenete Ubuntu, dobra je ideja ažurirati sustav kako biste bili sigurni da nema dostupnih sigurnosnih ispravki. Samo napred i učini to prvo.

$ sudo apt update nadogradnja $ sudo apt

Nakon što je ažuriranje završeno, morate pokrenuti nekoliko stvari da biste postavili Gitlab. Upotrijebite apt za instaliranje istih.

$ sudo apt install curl openssh-server cafix certifikata postfix

To je to. Spremni ste za pokretanje skripte za instalaciju Gitlaba.

Instalirajte Gitlab

Gitlab održava vlastito Debian / Ubuntu spremište. Da biste omogućili spremište na vašem poslužitelju, preuzmite i pokrenite prikladnu skriptu za instalaciju koju pruža Gitlab tim.

$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

To bi moglo izgledati puno, ali samo preuzima skriptu i govori ljusci naredbenog retka da je pokrene. Skriptu će trebati nekoliko sekundi da prođe kroz njega i postavi spremište. Nakon što to učinite, bit ćete spremni instalirati Gitlab paket.

$ sudo apt instalirati gitlab-ce

Instalacija će trajati nekoliko minuta. Gitlab dolazi u jednom velikom paketu koji se zove "Omnibus paket". Dolazi sa svime što Gitlabu treba sve u paketu.

Pokrenite instalaciju

Postoji skripta za postavljanje koju morate pokrenuti da bi se Gitlab mogao konfigurirati. Došao je u paketu koji ste upravo instalirali, tako da to sada možete pokrenuti.

$ sudo gitlab-ctl rekonfiguracija

Skriptu će trebati nekoliko minuta da prođe kroz sve. To je uglavnom postavljanje baze podataka za Gitlab. Vidjet ćete puno migracija Ruby on Rails na ekranu. Možda će potrajati neko vrijeme, ali kad to učini, Gitlab će biti spreman za upotrebu.

Početna postava

Otvorite web preglednik i idite na vaš Gitlab poslužitelj. Dočekat će vas stranica koja vas traži da postavite administrativnu lozinku. Ovo je očito lozinka za vaš administratorski račun. Naziv tog računa prema zadanom je "root".

Nakon što je taj račun postavljen, možete se prijaviti s njim ili registrirati uobičajeni korisnički račun i prijaviti se. Bilo kako bilo, kad se prijavite, imat ćete pristup cijeloj nadzornoj ploči Gitlaba za stvaranje i upravljanje spremištima.

Postavljanje SSH

Ne želite uvoditi promjene na svoje projekte pomoću zaporki. To je bol, i nije baš sigurno. Najbolje što možete učiniti je stvoriti SSH za automatsku prijavu s bilo kojeg računala s instaliranim ključem.

SSH ključeve vrlo je jednostavno stvoriti na Linuxu i Macu. U sustavu Windows 10 postupak bi trebao biti isti kroz dostupnu OpenSSH aplikaciju.

Otvorite terminal i pokrenite sljedeću naredbu za stvaranje ključa. Možete izostaviti dio '-C' 'ako želite koristiti podatke o prijavi na računalu. Inače je adresa e-pošte obično pravi poziv.

$ ssh-keygen -b 4096 -t rsa -C ''

Proces će vas provesti kroz nekoliko koraka. Zadani su uglavnom dobri, a sve je prilično samorazumljivo. Ako odlučite pridružiti lozinku ključu, trebat će vam ta lozinka svaki put kada se prijavite ili pritisnete promjenu. Možete ostaviti zaporku praznom da je ne biste koristili.

Da biste pogledali svoj ključ, pokrenite naredbu u nastavku. Izgledat će kao gomila gluposti i u biti je to, ali to je vaš ključ. Trebat ćete je kopirati s terminala i proslijediti je u Gitlab.

$ cat ~ / .ssh / id_rsa.pub

Natrag na Gitlab, kliknite na ikonu profila u gornjem desnom kutu zaslona. Zatim kliknite "Postavke" na rezultirajućem izborniku. U izborniku s lijeve strane kliknite "SSH tipke."

Kopirajte ključ s terminala. Započnite nakon "ssh-rsa" i zaustavite se prije svoje adrese e-pošte. Dakle, samo kopirajte gluposti dio. Zalijepite ga u veliki okvir s oznakom "Ključ". Navedite svoj ključ i spremite ga. Od tog trenutka moći ćete kôd gurnuti u svoja spremišta bez prijave.

Za redovne SSH

Već imate SSH ključ. Možete je koristiti i za SSH. OpenSSH ima ugrađeni uslužni program za pritiskanje ključa na vaš poslužitelj.

$ ssh-copy-id -i ~ / .ssh / id_rsa.pub _IP

Zamijenite ime_strazatelja i SERVER_IP svojim korisničkim imenom na poslužitelju i IP adresom poslužitelja.

Pokušajte se prijaviti na poslužitelj pomoću novog ključa.

$ ssh _IP

Trebali biste se odmah povezati bez potrebe za unosom lozinke.

Bolje je zaključati i ostatak SSH-a. To je vjerojatno jedna od najslabijih točaka na javnom poslužitelju. Otvorite / etc / ssh / sshd_confg u uređivaču teksta po vašem izboru na poslužitelju.

Postoji nekoliko stvari koje morate promijeniti. Prvo pronađite PermitRootLogin i postavite ga na ne.

PermitRootLogin br

Zatim pronađite PasswordAuthentication, komentirajte je i postavite na ne.

PasswordAuthentication br

Zatim provjerite jesu li sljedeća dva retka postavljena na ne. Na Ubuntuu bi trebali biti zadani, ali bolje je provjeriti.

PermitEmptyPasswords no HostbasedAuthentication br

Na kraju, pronađite UsePAM na dnu konfiguracije i postavite ga na ne.

UsePAM br

Spremite i izađite iz svoje konfiguracije. Zatim ponovno pokrenite SSH uslugu.

$ sudo systemctl ponovo pokrenite sshd

Konfigurirajte UFW

Posljednja sigurnosna mjera koju vjerojatno želite poduzeti je instalacija i postavljanje vatrozida. Ubuntu vrlo dobro surađuje s primjereno nazvanim nekompliciranim vatrozidom (UFW). To je samo omotač oko vatrozida jezgre iptables, ali rad s vatrozidom znatno olakšava. Samo naprijed i instaliraj.

$ sudo apt install ufw

Nakon što instalirate ufw, počnite s postavljanjem zadanih pravila kako biste sve zanijekali.

$ sudo ufw zadani uskraćuje dolazni $ sudo ufw zadani uskraćuje odlazni $ sudo ufw zadani uskraćuje naprijed

Zatim postavite svoja pravila kako biste omogućili osnovne usluge, uključujući Git. Komentari su samo tu za informaciju. Ne pokušavajte ih pokrenuti.

# SSH $ sudo ufw omogućuju u ssh $ sudo ufw dopuštaju ssh # HTTP i HTTPS za Web $ sudo ufw dopuštaju u http $ sudo ufw dopuštaju http $ sudo ufw dopuštaju u https $ sudo ufw dopuštaju https # NTP za zadržavanje vremena ispraviti $ sudo ufw dopustiti u ntp $ sudo ufw dozvoliti ntp # Port 53 za rezoluciju DNS domene $ sudo ufw dopustiti u 53 $ sudo ufw dopustiti 53 # Ovo vam vjerojatno neće trebati # Ako vaš poslužitelj koristi DHCP, deblokirajte 67 $ sudo ufw dopustiti u 67 $ sudo ufw dopustiti 67 # Konačno, Git $ sudo ufw dopustiti u 9418 $ sudo ufw izdvojiti 9418

Provjerite je li sve dobro i omogućite vatrozid

$ sudo ufw omogućuju

Status zaštitnog zida možete provjeriti na sljedeći način:

$ sudo ufw status

To je to! Vaš Gitlab poslužitelj je iza vatrozida.

Završne misli

Do sada imate aktivni Gitlab poslužitelj. Možete započeti postavljanje korisničkih računa i projekata putem sučelja Gitlab. Gitlab je sada običan Ubuntu paket, tako da će se redovno ažurirati s apt dok budete ažurirali svoj sustav.

Gitlab će vam pružiti svu fleksibilnost koja će vam trebati za upravljanje vlastitim projektima i većim projektima na kojima možda radite s timom. Potpuno je sposobna i robusna platforma na koju se sve više i više timova počinje oslanjati.

Domaćite svoje vlastite softverske projekte pomoću gitlaba