Anonim

Kodėl „Gitlab“

Greitos nuorodos

  • Kodėl „Gitlab“
  • Sąranka
  • Įdiekite priklausomybes
  • Įdiekite „Gitlab“
  • Paleiskite sąranką
  • Pradiniai nustatymai
  • Nustatykite SSH
    • Įprastam SSH
  • Konfigūruokite UFW
  • Minčių uždarymas

Yra daugybė puikių variantų, kaip priglobti savo projektus ir pasidalyti savo kodu. Dabar galite nemokamai nustatyti „Github“ paskyrą. Taigi, kodėl norėtumėte patirti sunkumų patys nustatydami „Gitlab“?

Yra keli geri argumentai, iš kurių ne mažiau svarbu privatumas. „Gitlab“ yra tavo. Jūs jį priimate ir turite. Taigi, jūs galite valdyti, kas turi prieigą prie jūsų saugyklų. Tai taip pat reiškia, kad jūs galite valdyti pačią platformą. Jums netaikoma įmonių politika, savavališki kainų pokyčiai ar duomenų rinkimas.

Savarankiškos versijos valdymas taip pat reiškia, kad nesate priklausomi nuo paslaugos, norėdami pasiekti savo kodą. Aišku, tikimybė, kad „Github“ ar kita panaši paslauga dėl neveikimo bus visiškai neprieinama, yra nedidelė, tačiau ar nenorėtumėte, kad tokia galimybė visai nebūtų?

„Gitlab“ taip pat labai lengva nustatyti, tik reikia, kad turėtumėte „Linux“ serverį, kuriame paleistumėte atvirojo kodo „Gitlab“ programinę įrangą, kurios dauguma yra iš anksto sukonfigūruoti ir paruošti paleisti.

Sąranka

Prieš pradėdami, turite gauti VPS, nustatytą „Gitlab“ priglobti, nebent planuojate jį priglobti vietoje. Hostingo kompanijos, tokios kaip „ DigitalOcean“ ir „ Linode“, siūlo rentabilias parinktis, kurios gali padėti jūsų serveriui veikti ir veikti.

Taip pat verta pirkti domeno vardą ir savo serveriui. Arba galite nurodyti esamo domeno vardo padomenį „Gitlab“ serveryje. Bet kuriuo atveju bus lengviau pasiekti interneto sąsają.

Šis vadovas bus Ubuntu 16.04 LTS. Tai paskutinis ilgalaikio „Ubuntu“ palaikymo leidimas, su kuriuo labai lengva dirbti. „Debian Stretch“ (stabilus) taip pat būtų puikus pasirinkimas, o dauguma šio vadovo taip pat veiks su juo. Tiek „DigitalOcean“, tiek „Linode“ sukurs jūsų serverį su jūsų pasirinkta OS, todėl nereikia įdiegti „Ubuntu“.

Įdiekite priklausomybes

Pirmą kartą paleidus „Ubuntu“, verta atnaujinti sistemą, kad įsitikintumėte, jog nėra jokių saugos pataisų. Pirmyn ir padaryk tai pirmiausia.

$ sudo apt atnaujinimas $ sudo apt atnaujinimas

Baigę atnaujinti, turite keletą dalykų, kuriuos turėsite įdiegti, kad pradėtumėte „Gitlab“. Jei norite įdiegti, naudokite apt.

$ sudo apt install curl openssh-server ca-Certificates postfix

Viskas. Esate pasirengę paleisti „Gitlab“ diegimo programos scenarijų.

Įdiekite „Gitlab“

„Gitlab“ palaiko savo „Debian / Ubuntu“ saugyklą. Norėdami įgalinti saugyklą savo serveryje, atsisiųskite ir paleiskite patogų diegimo scenarijų, kurį pateikė „Gitlab“ komanda.

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

Tai gali atrodyti labai daug, tačiau tiesiog atsisiunčiamas scenarijus ir liepiama komandinės eilutės apvalkalui jį paleisti. Scenarijus užtruks kelias sekundes, kol jis bus paleistas ir nustatytas saugykla. Kai tai padarysite, būsite pasirengę įdiegti „Gitlab“ paketą.

$ sudo apt install gitlab-ce

Įdiegimas užtruks keletą minučių. „Gitlab“ yra vienoje didelėje pakuotėje, vadinamoje „Omnibus“ pakuotėje. Kartu su viskuo reikia „Gitlab“.

Paleiskite sąranką

Yra sąrankos scenarijus, kurį turite paleisti, kad „Gitlab“ sukonfigūruotų. Tai buvo jūsų ką tik įdiegtas paketas, todėl dabar galite paleisti.

$ sudo gitlab-ctl konfigūravimas

Scenarijui prireiks kelių minučių, kad viską atliktum. Dažniausiai tai yra „Gitlab“ duomenų bazės nustatymas. Ekrane pamatysite daugybę „Ruby on Rails“ migracijų. Tai gali užtrukti, bet kai tai bus padaryta, „Gitlab“ bus paruoštas naudoti.

Pradiniai nustatymai

Atidarykite savo interneto naršyklę ir eikite į savo „Gitlab“ serverį. Jus pasitiks puslapis, kuriame prašoma nustatyti administravimo slaptažodį. Akivaizdu, kad tai yra jūsų administratoriaus paskyros slaptažodis. Pagal numatytuosius nustatymus tos paskyros pavadinimas yra „root“.

Sukūrę tą abonementą, jūs galite prisijungti naudodamiesi juo arba registruoti įprastą vartotojo abonementą ir prisijungti. Bet kuriuo atveju prisijungdami turėsite prieigą prie visos „Gitlab“ prietaisų skydelio, skirto saugykloms kurti ir tvarkyti.

Nustatykite SSH

Jūs nenorite, kad jūsų projektai turėtų būti keičiami naudojant slaptažodžius. Tai skausmas ir nėra labai saugus. Geriausias dalykas, kurį galite padaryti, yra sukurti SSH, kad galėtumėte automatiškai prisijungti iš bet kurio kompiuterio, kuriame yra raktas.

SSH klavišus labai lengva sukurti „Linux“ ir „Mac“. „Windows 10“ sistemoje procesas turėtų būti vienodas per pasiekiamą „OpenSSH“ programą.

Atidarykite terminalą ir paleiskite šią komandą, kad sukurtumėte raktą. „C“ dalį galite palikti, jei norite tiesiog naudoti prisijungimo prie kompiuterio informaciją. Kitu atveju el. Pašto adresas dažniausiai yra teisingas skambutis.

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

Procesas padės jums atlikti porą žingsnių. Numatytieji įsipareigojimai dažniausiai būna geri, ir viskas savaime suprantama. Jei nuspręsite susieti slaptažodį su savo raktu, jums jo reikės kiekvieną kartą prisijungiant ar paspaudžiant pakeitimą. Norėdami nenaudoti slaptažodžio, palikite jį tuščią.

Norėdami peržiūrėti savo raktą, vykdykite žemiau pateiktą komandą. Tai atrodys kaip nesąmonių krūva ir iš esmės yra, bet tai yra tavo raktas. Turėsite nukopijuoti jį iš terminalo ir perkelti į „Gitlab“.

$ katė ~ / .ssh / id_rsa.pub

Grįždami ant „Gitlab“, spustelėkite profilio piktogramą, esančią ekrano viršuje, dešinėje. Tada gautame meniu spustelėkite „Nustatymai“. Puslapio kairėje esančiame meniu spustelėkite „SSH raktai“.

Nukopijuokite raktą iš savo terminalo. Pradėkite nuo „ssh-rsa“ ir sustokite prieš savo el. Pašto adresą. Taigi, tiesiog nukopijuokite nesąmonių dalį. Įklijuokite jį į didelę dėžutę, pažymėtą „Raktas“. Pavadinkite savo raktą ir išsaugokite. Nuo to laiko galėsite perduoti kodą saugyklose neprisijungę.

Įprastam SSH

Jūs jau turite SSH raktą. Taip pat galite naudoti SSH. „OpenSSH“ turi įmontuotą naudingumo klavišą į serverį.

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

Pakeiskite server_username ir SERVER_IP savo vartotojo vardu serveryje ir serverio IP adresu.

Pabandykite vėl prisijungti prie savo serverio naudodami naują raktą.

$ ssh _IP

Turėtumėte nedelsdami prisijungti, nereikia įvesti slaptažodžio.

Geriau užrakinti ir likusią SSH dalį. Tai turbūt vienas silpniausių viešojo serverio taškų. Atidarykite / etc / ssh / sshd_confg pasirinktame teksto rengyklėje serveryje.

Yra keletas dalykų, kuriuos turite pakeisti. Pirmiausia susiraskite „PermitRootLogin“ ir nustatykite jį į „ne“.

„PermitRootLogin“ Nr

Tada raskite „PasswordAuthentication“, atšaukite ją ir nustatykite „ne“.

PasswordAuthentication no

Tada įsitikinkite, kad šios dvi eilutės yra ties ne. Jie pagal nutylėjimą turėtų būti „Ubuntu“, tačiau geriau patikrinti.

„PermitEmptyPasswords“ nėra „HostbasedAuthentication nr“

Galiausiai suraskite „UsePAM“ konfigūracijos apačioje ir nustatykite taip pat ne.

„UsePAM“ Nr

Išsaugokite ir išeikite iš savo konfigūracijos. Tada paleiskite SSH paslaugą iš naujo.

$ sudo systemctl paleisti sshd

Konfigūruokite UFW

Paskutinė saugos priemonė, kurios tikriausiai norite imtis, yra užkardos įdiegimas ir nustatymas. „Ubuntu“ labai gerai dirba su taikliai pavadinta nesudėtinga ugniasiene (UFW). Tai tik apvyniojimas aplink „iptables“ branduolio ugniasienę, tačiau tai palengvina darbą su ugniasiene. Pirmyn ir įdiekite.

$ sudo apt install ufw

Įdiegę „ufw“, pirmiausia nustatykite numatytąsias taisykles, kad viską paneigtumėte.

$ sudo ufw numatytasis paneigti gaunamas $ sudo ufw numatytasis paneigti išeinantis $ sudo ufw numatytasis paneigti pirmyn

Kitas nustatykite savo taisykles, kad būtų leidžiamos pagrindinės paslaugos, įskaitant „Git“. Komentaruose yra tik informacija. Nemėginkite jų paleisti.

# SSH $ sudo ufw leisti per ssh $ sudo ufw leisti „ssh“ # HTTP ir HTTPS žiniatinkliui $ sudo ufw leisti http $ sudo ufw leisti http $ sudo ufw leisti https $ sudo ufw leisti https # NTP norint išlaikyti laiką teisinga $ sudo ufw leisti in ntp $ sudo ufw leisti out ntp # 53 uostas, skirtas DNS domeno raiškai $ sudo ufw leisti 53 $ sudo ufw leisti 53 # Tikriausiai to neprireiks # Jei jūsų serveris naudoja DHCP, atblokuokite 67 $. sudo ufw leisti 67 $ sudo ufw leisti 67 # Galiausiai, Git $ sudo ufw leisti 9418 $ sudo ufw allo out 9418

Įsitikinkite, kad viskas gerai, ir įjunkite ugniasienę

$ sudo ufw įjungti

Galite patikrinti ugniasienės būseną taip:

$ sudo ufw būsena

Viskas! Jūsų „Gitlab“ serveris yra už ugniasienės.

Minčių uždarymas

Iki šiol jūs turite veikiantį „Gitlab“ serverį. Naudotojų abonementus ir projektus galite pradėti nustatyti naudodami „Gitlab“ sąsają. „Gitlab“ dabar yra įprastas „Ubuntu“ paketas, todėl jis bus reguliariai atnaujinamas su apt, kai nuolat atnaujinsite savo sistemą.

„Gitlab“ suteiks jums visą lankstumą, kurį jums reikės valdyti savo ir didesnius projektus, kuriuose galbūt dirbate su komanda. Tai visiškai pajėgi ir tvirta platforma, kuria vis daugiau komandų pradeda pasitikėti.

Priglobkite savo programinės įrangos projektus naudodami „gitlab“