You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Ψάχνετε για ένα αρχείο που ονομάζεται `id_dsa` ή `id_rsa` ή κάτι παραπλήσιο και ένα ακόμα με το ίδιο όνομα αλλά κατάληξη `.pub`.
21
-
Το αρχείο με κατάληξη `.pub` είναι το δημόσιο κλειδί σας και το άλλο αρχείο είναι το ιδιωτικό κλειδί σας.
22
-
Αν δεν έχετε τέτοια αρχεία (ή αν δεν έχετε καν κατάλογο `.ssh`), μπορείτε να τα δημιουργήσετε τρέχοντας ένα πρόγραμμα που ονομάζεται `ssh-keygen` και το οποίο παρέχεται με το πακέτο SSH σε συστήματα Linux και Mac και με το Git στα Windows:
20
+
Ψάχνουμε για ένα αρχείο που ονομάζεται `id_dsa` ή `id_rsa` ή κάτι παραπλήσιο και ένα ακόμα με το ίδιο όνομα αλλά κατάληξη `.pub`.
21
+
Το αρχείο με κατάληξη `.pub` είναι το δημόσιο κλειδί μας και το άλλο αρχείο είναι το ιδιωτικό κλειδί μας.
22
+
Αν δεν έχουμε τέτοια αρχεία (ή αν δεν έχουμε καν κατάλογο `.ssh`), μπορούμε να τα δημιουργήσουμε τρέχοντας ένα πρόγραμμα που ονομάζεται `ssh-keygen` και το οποίο παρέχεται με το πακέτο SSH σε συστήματα Linux και Mac και με το Git στα Windows:
Πρώτα επιβεβαιώνει πού έχετε αποθηκεύσει το κλειδί (`.ssh/id_rsa`) και μετά ρωτά δύο φορές για μία κωδική φράση, την οποία μπορείτε να αφήσετε κενή, εφόσον δεν θέλετε να πληκτρολογείτε κωδικό πρόσβασης κάθε φορά που χρησιμοποιείτε το κλειδί.
39
-
Αν πάντως θέλετε να χρησιμοποιείτε κωδικό πρόσβασης, σιγουρευτείτε ότι έχετε προσθέσει την επιλογή `-o`, ώστε το ιδιωτικό κλειδί να αποθηκευτεί σε τέτοια μορφή που να αντιστέκεται στην παραβίαση του κωδικού πρόσβασης περισσότερο από ότι η προεπιλεγμένη μορφή.
40
-
Μπορείτε επίσης να χρησιμοποιήσετε το εργαλείο `ssh-agent` για να μη χρειάζεται να εισάγετε τον κωδικό πρόσβασης κάθε φορά.
38
+
Πρώτα επιβεβαιώνει πού έχουμε αποθηκεύσει το κλειδί (`.ssh/id_rsa`) και μετά ρωτά δύο φορές για μία κωδική φράση, την οποία μπορούμε να αφήσουμε κενή, εφόσον δεν θέλουμε να πληκτρολογούμε κωδικό πρόσβασης κάθε φορά που χρησιμοποιούμε το κλειδί.
39
+
Αν πάντως θέλουμε να χρησιμοποιούμε κωδικό πρόσβασης, σιγουρευόμαστε ότι έχουμε προσθέσει την επιλογή `-o`, ώστε το ιδιωτικό κλειδί να αποθηκευτεί σε τέτοια μορφή που να αντιστέκεται στην παραβίαση του κωδικού πρόσβασης περισσότερο από ότι η προεπιλεγμένη μορφή.
40
+
Μπορούμε επίσης να χρησιμοποιήσουμε το εργαλείο `ssh-agent` για να μη χρειάζεται να εισάγουμε τον κωδικό πρόσβασης κάθε φορά.
41
41
42
-
Τώρα κάθε χρήστης που κάνει αυτή τη διαδικασία πρέπει να στείλει το δημόσιο κλειδί του σε σας ή σε όποιον είναι ο διαχειριστής του διακομιστή Git (με την προϋπόθεση ότι χρησιμοποιείτε έναν διακομιστή με SSH που απαιτεί δημόσια κλειδιά).
42
+
Τώρα κάθε χρήστης που κάνει αυτή τη διαδικασία πρέπει να στείλει το δημόσιο κλειδί του σε μας ή σε όποιον είναι ο διαχειριστής του διακομιστή Git (με την προϋπόθεση ότι χρησιμοποιούμε έναν διακομιστή με SSH που απαιτεί δημόσια κλειδιά).
43
43
Το μόνο που πρέπει να κάνει είναι να αντιγράψει τα περιεχόμενα του αρχείου `.pub` και να τα στείλει με e-mail.
Copy file name to clipboardExpand all lines: book/04-git-server/sections/git-daemon.asc
+17-17Lines changed: 17 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,27 +1,27 @@
1
1
=== Δαίμονες του Git
2
2
3
3
(((αποθετήρια εξυπηρέτησης, πρωτόκολλο git)))
4
-
(((serving repositories, git protocol)))
5
4
Στη συνέχεια θα εγκαταστήσουμε έναν δαίμονα που θα εξυπηρετεί αποθετήρια μέσω του πρωτοκόλλου "`Git`".
6
-
Αυτή είναι μια συνήθης επιλογή για γρήγορη και χωρίς ταυτοποίηση πρόσβαση στα δεδομένα σας στο Git.
7
-
Να θυμάστε πως δεδομένου ότι πρόκειται για μια υπηρεσία χωρίς ταυτοποίηση, οτιδήποτε παρέχεται πάνω από αυτό το πρωτόκολλο είναι δημόσιο εντός του δικτύου του.
5
+
Αυτή είναι μια συνήθης επιλογή για γρήγορη και χωρίς ταυτοποίηση πρόσβαση στα δεδομένα μας στο Git.
6
+
Θυμόμαστε πως δεδομένου ότι πρόκειται για μια υπηρεσία χωρίς ταυτοποίηση, οτιδήποτε παρέχεται πάνω από αυτό το πρωτόκολλο είναι δημόσιο εντός του δικτύου του.
8
7
9
-
Εάν τρέχετε τον δαίμονα σε έναν διακομιστή εκτός firewall, θα πρέπει να χρησιμοποιείται μόνο για έργα που είναι ορατά σε όλον τον κόσμο.
10
-
Αν ο διακομιστής στον οποίο τον τρέχετε είναι εντός firewall, μπορείτε να τον χρησιμοποιήσετε για έργα στα οποία ένας μεγάλος αριθμός ανθρώπων ή υπολογιστών (continuous integration ή build servers) έχουν πρόσβαση μόνο για ανάγνωση, όταν δεν θέλετε να προσθέσετε κλειδί SSH για τον καθένα.
8
+
Εάν τρέχουμε τον δαίμονα σε έναν διακομιστή εκτός firewall, θα πρέπει να χρησιμοποιείται μόνο για έργα που είναι ορατά σε όλον τον κόσμο.
9
+
Αν ο διακομιστής στον οποίο τον τρέχουμε είναι εντός firewall, μπορούμε να τον χρησιμοποιήσουμε για έργα στα οποία ένας μεγάλος αριθμός ανθρώπων ή υπολογιστών (continuous integration ή build servers) έχουν πρόσβαση μόνο για ανάγνωση, όταν δεν θέλουμε να προσθέσουμε κλειδί SSH για τον καθένα.
11
10
12
11
Σε κάθε περίπτωση, το πρωτόκολλο Git είναι σχετικά εύκολο στη ρύθμισή του.
13
-
Βασικά, θα πρέπει να εκτελέσετε αυτή την εντολή με "`δαιμονοποιημένο`" τρόπο: (((εντολές git, δαίμονας)))
12
+
Βασικά, θα πρέπει να εκτελέσουμε αυτή την εντολή με "`δαιμονοποιημένο`" τρόπο: (((εντολές git, δαίμονας)))
Ο διακόπτης `--reuseaddr` επιτρέπει στον διακομιστή να επανεκκινήσει χωρίς να αναμένει αποσύνδεση των παλαιών συνδέσεων, ο διακόπτης `--base-path` επιτρέπει την κλωνοποίηση έργων χωρίς να καθορίζεται ολόκληρη τη διαδρομή και η διαδρομή στο τέλος λέει στον δαίμονα Git πού να αναζητήσει αποθετήρια προς εξαγωγή.
21
-
Εάν τρέχετε ένα firewall, θα χρειαστεί επίσης να του ανοίξετε μία τρύπα στη θύρα 9418 στο κουτί που τον εγκαθιστάτε τον διακομιστή.
19
+
Ο διακόπτης `--reuseaddr` επιτρέπει στον διακομιστή να επανεκκινήσει χωρίς να αναμένει αποσύνδεση των παλαιών συνδέσεων, ο διακόπτης `--base-path` επιτρέπει την κλωνοποίηση έργων χωρίς να καθορίζεται ολόκληρη η διαδρομή (path), και η διαδρομή (path) στο τέλος λέει στον δαίμονα Git πού να αναζητήσει αποθετήρια προς εξαγωγή.
20
+
Εάν τρέχουμε ένα firewall, θα χρειαστεί επίσης να του ανοίξουμε μία τρύπα στη θύρα 9418 στο κουτί που τον εγκαθιστούμε στον διακομιστή.
22
21
23
-
Μπορείτε να "`δαιμονοποίησετε`" αυτή τη διαδικασία με διάφορους τρόπους, ανάλογα με το λειτουργικό σύστημα που εκτελείτε.
24
-
Δεδομένου ότι `systemd` είναι το πιο συνηθισμένο σύστημα init στις μοντέρνες διανομές Linux, μπορείτε να χρησιμοποιήσετε αυτό για αυτό τον σκοπό.
22
+
Μπορούμε να "`δαιμονοποίησουμε`" αυτή τη διαδικασία με διάφορους τρόπους, ανάλογα με το λειτουργικό σύστημα που εκτελούμε.
23
+
24
+
Δεδομένου ότι `systemd` είναι το πιο συνηθισμένο σύστημα init στις μοντέρνες διανομές Linux, μπορούμε να χρησιμοποιήσουμε αυτό για τον σκοπό αυτό.
25
25
Απλά βάλτε ένα αρχείο στο `/etc/systemd/system/git-daemon.service` με αυτά τα περιεχόμενα:
26
26
27
27
[source,console]
@@ -46,16 +46,16 @@ Group=git
46
46
WantedBy=multi-user.target
47
47
----
48
48
49
-
Ίσως προσέξατε ότι ο δαίμονας του Git daemon ξεκιά εδώ ως `git` τόσο για την ομάδα όσο και για τον χρήστη.
50
-
Τροποποιήστε το ώστε να το προσαρμόσετε στις ανάγκες σας και σιγουρευτείτε ότι ο χρήστης που δίνεται υπάρχει στο σύστημα.
51
-
Επίσης, ελέγξτε ότι το εκτελέσιμο αρχείο του Git βρίσκεται πράγματι στο `/usr/bin/git` αλλιώς αλλάξτε τη διαδρομή καταλλήλως.
49
+
Αν προσέξουμε ο δαίμονας του Git daemon ξεκινά εδώ ως `git` τόσο για την ομάδα (group) όσο και για τον χρήστη (user).
50
+
Το τροποποιούμε ώστε να το προσαρμόσουμε στις ανάγκες μας και σιγουρευόμαστε ότι ο χρήστης που δίνεται υπάρχει στο σύστημα.
51
+
Επίσης, ελέγχουμε ότι το εκτελέσιμο αρχείο του Git βρίσκεται πράγματι στο `/usr/bin/git` αλλιώς αλλάζουμε τη διαδρομή (path) αναλόγως.
52
52
53
-
Τέλος, θα εκτελέσετε`systemctl enable git-daemon` ώστε η υπηρεσία να ξεκινά αυτόματα κατά την εκκίνηση του υπολογιστή και μπορείτε να εκκινήσετε και να σταματήσετε την υπηρεσία με `systemctl start git-daemon` και `systemctl stop git-daemon` αντίστοιχα.
53
+
Τέλος, θα εκτελέσουμε`systemctl enable git-daemon` ώστε η υπηρεσία να ξεκινά αυτόματα κατά την εκκίνηση του υπολογιστή και μπορούμε να εκκινήσούμε και να σταματήσουμε την υπηρεσία με `systemctl start git-daemon` και `systemctl stop git-daemon` αντίστοιχα.
54
54
55
-
Σε άλλα συστήματα, ίσως θελήσετε να χρησιμοποιήσετε το `xinetd`, ένα script στο σύστημά σας`sysvinit` ή κάτι άλλο -- με την προϋπόθεση ότι μπορείτε δαιμονοποιήσετε αυτή την εντολή και να την παρακολουθείτε με κάποιον τρόπο.
55
+
Σε άλλα συστήματα, ίσως θελήσουμε να χρησιμοποιήσουμε το `xinetd`, ένα script στο σύστημά μας`sysvinit` ή κάτι άλλο -- με την προϋπόθεση ότι μπορούμε δαιμονοποιήσουμε αυτή την εντολή και να την παρακολουθούμε με κάποιον τρόπο.
56
56
57
-
Στη συνέχεια, πρέπει να ενημερώσετε το Git ποια αποθετήρια επιτρέπουν την πρόσβαση σε διακομιστές Git χωρίς ταυτοποίηση.
58
-
Μπορείτε να το κάνετε σε κάθε αποθετήριο δημιουργώντας ένα αρχείο που ονομάζεται `git-daemon-export-ok`.
57
+
Στη συνέχεια, πρέπει να ενημερώσουμε το Git ποια αποθετήρια επιτρέπουν την πρόσβαση σε διακομιστές Git χωρίς ταυτοποίηση.
58
+
Μπορούμε να το κάνουμε σε κάθε αποθετήριο δημιουργώντας ένα αρχείο που ονομάζεται `git-daemon-export-ok`.
0 commit comments