Anonim

למה גיטלב

קישורים מהירים

  • למה גיטלב
  • להכין
  • התקן תלות
  • התקן את Gitlab
  • הפעל את ההתקנה
  • הגדרה ראשונית
  • הגדר SSH
    • עבור SSH רגיל
  • קבע את התצורה של UFW
  • מחשבות סוגרות

יש המון אפשרויות נהדרות לאירוח הפרויקטים שלך ולשיתוף הקוד שלך. אתה יכול ללכת להגדיר חשבון Github ברגע זה בחינם. אז, מדוע תרצו לעבור את הצרה בהגדרת גיטלב בעצמכם?

ישנם כמה ויכוחים טובים לכך, למעשה, לא פחות מהם הפרטיות. גיטלב הוא שלך. אתה מארח אותו ובבעלותך. אז אתה יכול לקבוע למי יש גישה למאגרים שלך. זה גם אומר שיש לך שליטה על הפלטפורמה עצמה. אינך כפוף למדיניות עסקית, שינויים שרירותיים בתמחור או איסוף נתונים.

בקרת גרסאות באחסון עצמי פירושה גם שאינך תלוי בשירות כדי לגשת לקוד שלך. בטח, הסיכוי שגיתוב או שירות כזה או אחר לא יהיו זמינים לחלוטין בגלל הפסקות הם קלושים, אך האם לא הייתם מעדיפים שזו לא תהיה אפשרות בכלל?

גם קל מאוד להתקין את Gitlab, ורק מחייב שיהיה לך שרת לינוקס שמריץ את תוכנת Gitlab עם הקוד הפתוח, שרובו מוגדר מראש ומוכן להפעלה.

להכין

לפני שתתחיל, תצטרך להתקין VPS לארח את Gitlab, אלא אם כן אתה מתכנן לארח אותו באופן מקומי. חברות אירוח כמו DigitalOcean ו- Linode מציעות אפשרויות חסכוניות שיכולות להפעיל את השרת שלך.

כדאי לקנות גם שם תחום לשרת שלך. לחלופין, אתה יכול לכוון תת-דומיין של שם דומיין קיים בשרת Gitlab שלך. כך או כך, יקל על הגישה לממשק האינטרנט.

מדריך זה עומד לעקוב אחר אובונטו 16.04 LTS. זהו שחרור התמיכה האחרון לטווח הארוך של אובונטו, וקל מאוד לעבוד איתו. מתיחת דביאן (יציבה) תהיה גם אפשרות נהדרת, ורוב המדריך הזה יעבוד גם הוא. גם DigitalOcean וגם Linode יגדירו את השרת שלכם עם מערכת ההפעלה שתבחרו, כך שאין צורך להתקין את אובונטו.

התקן תלות

כשאתה מאתחל את אובונטו לראשונה, כדאי לעדכן את המערכת כדי לוודא שאין תיקוני אבטחה זמינים. קדימה, עשה זאת קודם.

עדכון $ sudo apt. שדרוג

לאחר סיום ההפעלה של העדכון, ישנם כמה דברים שתצטרך להתקין כדי שתוכל Gitlab להתחיל. השתמש בכדי להתקין גם את אלה.

$ sudo apt להתקין תלתל opensh-server תעודות ca-postfix

זהו זה. אתה מוכן להריץ את סקריפט ההתקנה של Gitlab.

התקן את Gitlab

גיטלב מחזיקה מאגר דביאן / אובונטו משלה. כדי לאפשר את המאגר בשרת שלך, הורד והפעל את סקריפט ההתקנה הנוח המסופק על ידי צוות Gitlab.

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

זה אולי נראה כמו הרבה, אבל זה פשוט מוריד את התסריט ואומר למעטפת שורת הפקודה להריץ אותו. התסריט ייקח מספר שניות כדי לעבור ולהגדיר את המאגר. ברגע שזה יהיה, תהיה מוכן להתקין את חבילת Gitlab.

$ sudo apt להתקין gitlab-ce

התקנה זו תארך מספר דקות. Gitlab מגיע בחבילה אחת גדולה שנקראת "חבילת אומניבוס". היא מגיעה עם כל מה שגיטלאב זקוק לכולם יחד.

הפעל את ההתקנה

יש סקריפט התקנה שעליך להריץ כדי ש- Gitlab יוגדר. זה הגיע בחבילה שרק התקנת, כך שתוכל להריץ את זה עכשיו.

תצורה מחדש של $ sudo gitlab-ctl

התסריט ייקח כמה דקות כדי לעבור את הכל. זה בעיקר הגדרת backend של מסד הנתונים עבור Gitlab. אתה תראה הרבה הגירות של Ruby on Rails שרצות ליד המסך. זה אולי ייקח זמן, אך בסיום, Gitlab יהיה מוכן לשימוש.

הגדרה ראשונית

פתח את דפדפן האינטרנט שלך ונווט לשרת Gitlab שלך. את פניך יקבל דף שמבקש ממך להגדיר סיסמא ניהולית. זו כמובן הסיסמה עבור חשבון הניהול שלך. כברירת מחדל, שם החשבון הזה הוא "שורש".

לאחר הקמת חשבון זה, אתה יכול להתחבר אליו או לרשום חשבון משתמש רגיל, ולהיכנס. כך או כך, ברגע שתיכנס לחשבון, תהיה לך גישה לכל מרכז השליטה של ​​Gitlab ליצירה וניהול של מאגרים.

הגדר SSH

אינך רוצה לדחוף שינויים בפרויקטים שלך באמצעות סיסמאות. זה כאב, וזה לא מאוד בטוח. הדבר הטוב ביותר שאתה יכול לעשות הוא ליצור SSH כדי להיכנס אוטומטית מכל מחשב שהמפתח מותקן בו.

קל מאוד ליצור מפתחות SSH ב- Linux וב- Mac. במערכת Windows 10 התהליך צריך להיות זהה דרך אפליקציית OpenSSH הזמינה.

פתח מסוף והפעל את הפקודה הבאה כדי ליצור את המפתח שלך. אתה יכול להפסיק את החלק -C '' אם אתה רוצה פשוט להשתמש בפרטי הכניסה של המחשב שלך. אחרת, כתובת דוא"ל היא בדרך כלל השיחה הנכונה.

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

התהליך יוביל אותך בכמה צעדים. ברירת המחדל היא ברובה טובה והכל מסביר את עצמו למדי. אם תבחר לשייך סיסמה למפתח שלך, תזדקק לסיסמה זו בכל פעם שתתחבר או תדחוף שינוי. אתה יכול להשאיר את הסיסמה ריקה כדי לא להשתמש בסיסמה.

לצפייה במפתח שלך, הפעל את הפקודה למטה. זה ייראה כמו חבורה של שטויות, ובעצם זה, אבל זה המפתח שלך. יהיה עליך להעתיק אותו מהטרמינל ולעבור אותו בגיטלב.

$ cat ~ / .ssh / id_rsa.pub

חזרה בגיטלב, לחץ על סמל הפרופיל בפינה השמאלית העליונה של המסך. לאחר מכן לחץ על "הגדרות" בתפריט המתקבל. בתפריט בצד שמאל של הדף, לחץ על "מקשי SSH."

העתק את המפתח מהטרמינל שלך. התחל אחרי "ssh-rsa" והפסיק לפני כתובת הדוא"ל שלך. אז, פשוט העתיקו את החלק השטויות. הדבק אותו בתיבה הגדולה שכותרתה "מפתח". שם את המפתח שלך ושמור אותו. מאותה נקודה, תוכל לדחוף את הקוד למאגרים שלך מבלי להיכנס.

עבור SSH רגיל

כבר יש לך מפתח SSH. אתה יכול באותה מידה להשתמש בו עבור SSH. ל- OpenSSH כלי מובנה לדחיפת המפתח לשרת שלך.

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

החלף את שם השרת ואת SERVER_IP בשם המשתמש שלך בשרת וכתובת ה- IP של השרת.

נסה להתחבר לשרת באמצעות המקש החדש.

$ ssh _IP

עליך להתחבר מייד ללא צורך להזין סיסמה.

עדיף לנעול גם את שאר SSH. זו כנראה אחת הנקודות החלשות ביותר בשרת מול הציבור. פתח / etc / ssh / sshd_confg בעורך הטקסט שתבחר בשרת.

ישנם כמה דברים שאתה צריך לשנות. ראשית, מצא את PermitRootLogin והגדר אותו למספר.

PermitRoot התחברות מספר

בשלב הבא, מצא את אימות הסיסמה, בטל את הסימון והגדר אותו למספר.

אימות סיסמא

לאחר מכן וודאו ששתי השורות הבאות מוגדרות למספר. הם אמורים להיות כברירת מחדל באובונטו, אך עדיף לבדוק.

PermitEmptyPasswords אין מבוסס מארח אימות לא

לבסוף, מצא את UsePAM בתחתית התצורה והגדר אותה גם לא.

UsePAM לא

שמור ויצא מהתצורה שלך. לאחר מכן, הפעל מחדש את שירות SSH.

הפעל מחדש sshd של $ sudo systemctl

קבע את התצורה של UFW

אמצעי האבטחה האחרון שכנראה תרצה לנקוט הוא התקנה והתקנת חומת אש. אובונטו עובדת מצוין עם חומת האש הלא מסובכת בשם UFW. זה רק עטיפה סביב חומת האש של גרעין ה- iptables, אבל זה הופך את העבודה עם חומת האש להרבה יותר קלה. קדימה להתקין אותו.

$ sudo apt להתקין ufw

לאחר התקנת ufw, התחל בהגדרת כללי ברירת המחדל כדי לשלול הכל.

ברירת המחדל של $ sudo ufw דחייה נכנסת $ sudo ufw ברירת מחדל דוחה את היוצא

הבא הגדר את הכללים שלך כדי לאפשר את השירותים הבסיסיים, כולל Git. התגובות רק שם למידע. אל תנסה להריץ אותם.

# SSH $ sudo ufw לאפשר ב- ssh $ sudo ufw אפשר את ssh # HTTP ו- HTTPS לאינטרנט $ sudo ufw מאפשרים ב http $ sudo ufw הרשו http $ sudo ufw מאפשרים ב- https $ sudo ufw מאפשרים https # NTP לשמירת הזמן תקן $ sudo ufw לאפשר ב- ntp $ sudo ufw אפשר את ה- ntp # יציאה 53 עבור רזולוציית תחום DNS $ sudo ufw מאפשר ב 53 $ sudo ufw allow out 53 # אתה כנראה לא צריך את זה # אם השרת שלך משתמש ב- DHCP, בטל חסימת 67 $ sudo ufw לאפשר 67 $ sudo ufw allow out 67 # לבסוף, Git $ sudo ufw מאפשר ב 9418 $ sudo ufw allo out 9418

וודא שהכל טוב, והפעל את חומת האש

הפעל $ sudo ufw

אתה יכול לבדוק את מצב חומת האש שלך באמצעות הדברים הבאים:

סטטוס $ sudo ufw

זהו זה! שרת ה- Gitlab שלך עומד מאחורי חומת אש.

מחשבות סוגרות

כעת, יש לך שרת Gitlab עובד. אתה יכול להתחיל בהגדרת חשבונות משתמש ופרויקטים דרך ממשק Gitlab. Gitlab הוא כעת חבילת אובונטו רגילה, כך שהיא תתעדכן באופן קבוע בכדי שתעדכן את המערכת שלכם.

Gitlab תספק לכם את כל הגמישות שתצטרכו לנהל פרויקטים משלכם ופרויקטים גדולים יותר שעשויים אתם לעבוד עם צוות. זוהי פלטפורמה בעלת יכולת וחזקה לחלוטין עליה יותר ויותר צוותים מתחילים להסתמך עליה.

מארחים פרויקטים תוכנה משלכם באמצעות gitlab