Raspberry Pi | Οι τέσσερις απαραίτητες ρυθμίσεις που πρέπει να κάνεις πριν ξεκινήσεις τα project σου


Ο φθηνός μας υπολογιστής των 50 ευρώ είναι πλέον έτοιμος και μας εξυπηρετεί ήδη στην καθημερινότητά μας, βοηθώντας μας να μπούμε στο ίντερνετ, να τσεκάρουμε τα email μας και να χαζέψουμε στο Facebook. Η φύση του Raspberry Pi όμως είναι τέτοια, που μας επιτρέπει να το έχουμε ανοιχτό 24 ώρες το 24ωρο, γιατί λοιπόν να μην το εκμεταλλευτούμε και με άλλους τρόπους, αυξάνοντας παράλληλα την αξία του;

Οι καλύτερες χρήσεις του Pi εμφανίζονται συνήθως όταν το χρησιμοποιούμε και ως server. Βάζουμε το "και" γιατί πολύς κόσμος πιστεύει λανθασμένα ότι ένας υπολογιστής μπορεί να είναι είτε PC είτε server. Δεν είναι παράξενο βέβαια αυτό, καθώς ο server έτσι όπως τον έχουμε μάθει στην επιχείρηση που δουλεύουμε οι περισσότεροι, είναι ένα "περίεργο" κουτί που βρίσκεται κλειδωμένο σε ένα δωμάτιο, όπου απαγορεύεται η είσοδος. Προσθέτοντας λοιπόν λειτουργίες server στο Pi μας, δε σημαίνει ότι παύει να μας προσφέρει την απλή χρήση ενός υπολογιστή.

Πριν προχωρήσουμε όμως στο πρώτο μας απλό project, θα χρειαστεί να κάνουμε την απαραίτητη προετοιμασία, η οποία θα μας βοηθήσει πολύ να δημιουργήσουμε μία σταθερή βάση για όλα τα επόμενα εγχειρήματά μας.

Διαφήμιση

1. Ορίζουμε μια στατική διεύθυνση IP


Το Pi θα γίνει στο χώρο μας ένας μόνιμος υπολογιστής, ο οποίος θα δουλεύει συνέχεια. Πρέπει λοιπόν να βρίσκεται σε μία μόνιμη διεύθυνση, για το βρίσκουμε εμείς αλλά και οι υπηρεσίες μας. Για παράδειγμα αν θέλουμε να μπούμε απομακρυσμένα στο Pi από έναν άλλο υπολογιστή, θα πρέπει να πληκτρολογήσουμε τη διεύθυνσή του, όπως πληκτρολογούμε "google.gr" για να μπούμε στο Google. Το router μας όμως δε συνδέει τις συσκευές μας στο δίκτυο με την ίδια διεύθυνση IP κάθε φορά, οπότε θα πρέπει να κάνουμε κάτι για αυτό.

Ανοίγουμε λοιπόν ένα τερματικό στο Raspberry Pi και πληκτρολογούμε την ακόλουθη εντολή για να μάθουμε τις παραμέτρους του δικτύου μας:

ifconfig

Εκεί θα δούμε τις πληροφορίες που αφορούν τη σύνδεση μέσω Ethernet (eth0) και τη σύνδεση μέσω Wi-Fi (wlan0). Από αυτές σημειώνουμε το "inet" που είναι η διεύθυνση του Pi (στην εικόνα μας είναι το "192.168.100.200") και τη διεύθυνση του router, η οποία στην προκειμένη περίπτωση είναι "192.168.100.1".


Σημαντική σημείωση:
Η διεύθυνση του router μας είναι πάντα η ίδια με τις συσκευές που έχουμε συνδέσει στο δίκτυό μας, με τη διαφορά ότι ο τελευταίος αριθμός είναι σχεδόν πάντα ο αριθμός ένα (1). Έτσι όταν μία συσκευή μας έχει IP το "192.168.1.26", το router θα βρίσκεται στη θέση "192.168.1.1".

Σειρά έχει να κάνουμε μόνιμη τη διεύθυνση IP του Pi στο δίκτυό μας, ορίζοντάς την στο αρχείο ρυθμίσεων "dhcpcd.conf". Ανοίγουμε λοιπόν το αρχείο με την εντολή:

sudo leafpad /etc/dhcpcd.conf

Σημαντική σημείωση 2:
Χρησιμοποιούμε το Leafpad για να δώσουμε μία γραφική απεικόνιση στα αρχεία μας, ούτως ώστε να είναι πιο κατανοητή από τους αρχάριους. Όσοι είναι εξοικειωμένοι με το τερματικό μπορούν να χρησιμοποιήσουν την εντολή "sudo nano /etc/dhcpcd.conf"


Στο αρχείο που άνοιξε βλέπουμε τις προσωρινές ρυθμίσεις του Pi μας για τη σύνδεση μέσω Ethernet (interface eth0) και για τη σύνδεση μέσω Wi-Fi (interface wlan0). Επιλέγουμε ποια από τις δύο συνδέσεις θα χρησιμοποιούμε μόνιμα στο χώρο μας και αντικαθιστούμε σε αυτή το "dhcp" με τη λέξη "static", αφήνοντας την IP ως έχει. Αν θέλουμε βέβαια μπορούμε να την αλλάξουμε με έναν αριθμό που θυμόμαστε ευκολότερα, αλλάζουμε όμως μόνο το τελευταίο νούμερο, για παράδειγμα από "192.168.100.200" σε "192.168.100.28".

Στη δική μας περίπτωση επιλέξαμε το Wi-Fi (wlan0), γιατί θα συνδέσουμε ασύρματα το Pi στο δίκτυό μας και ορίσαμε την IP είναι μόνιμα η "192.168.100.200".


Σημαντική σημείωση 3:
Ο λόγος που επιλέγουμε μία από τις δύο συνδέσεις, είναι γιατί αν αλλάξουμε και τις δύο, δε θα μπορούμε να συνδέσουμε το Pi σε ένα άλλο router. Στο χώρο μας για παράδειγμα το δίκτυο έχει τη μορφή "192.168.100.x". Αν πάμε λοιπόν σε έναν άλλο χώρο όπου το δίκτυο απαντάει στο "192.168.1.x" δε θα μπορούμε να συνδεθούμε. Για αυτό αφήνουμε μία από τις δύο συνδέσεις σε "dhcp", ούτως ώστε να προσαρμόζεται σε όλα τα δίκτυα.

2. Χρησιμοποιούμε domain name και όχι την IP


Μπορεί να δώσαμε πλέον μία μόνιμη IP στο Pi μας, αλλά αυτό το κάναμε για να το βρίσκουν εύκολα οι άλλες συσκευές μας στο δίκτυο. Εμείς δε χρειάζεται να θυμόμαστε το "192.168.100.200" και αντί για αυτό μπορούμε να χρησιμοποιούμε το "raspberry.local".

Τη λέξη "raspberry" μπορούμε να την αλλάξουμε με ότι εμείς θέλουμε, αλλά θα πρέπει πάντα από πίσω να κολλάμε το ".local", το οποίο σημαίνει "τοπικό". Πηγαίνοντας στις "Προτιμήσεις > Raspberry Pi Configuration", αλλάζουμε την ονομασία από "raspberry" σε όποια λέξη μας αρέσει (π.χ. "server"), κάνουμε επανεκκίνηση και πλέον μπορούμε να μπούμε στο pi, από οποιονδήποτε υπολογιστή βρίσκεται στο ίδιο δίκτυο, πληκτρολογώντας "https://server.local" μέσα από τον browser.


Σημαντική σημείωση 4:
Στην εικόνα μας βλέπουμε να ανοίγει ο Apache server, στον οποίο έχουμε δύο φακέλους, τον "nextcloud" και τον "wordpress". Θα δούμε στα επόμενα άρθρα πώς θα τον εγκαταστήσουμε, μιας και είναι από τα βασικά συστατικά ενός server.

Διαφήμιση


3. Ενεργοποιούμε SSH και VNC για απομακρυσμένη σύνδεση


Λέμε τόση ώρα ότι θέλουμε "να μπούμε στο Pi", τι εννοούμε όμως με αυτό; Πρώτον εννοούμε ότι θέλουμε να έχουμε πρόσβαση στις υπηρεσίες που τρέχουν σε αυτό (όπως στην παραπάνω εικόνα για παράδειγμα) και δεύτερον να έχουμε πρόσβαση στο ίδιο το λειτουργικό σύστημα.

Για να δώσουμε ένα παράδειγμα όσον αφορά τις υπηρεσίες, αν εγκαταστήσουμε το Nextcloud και θέλουμε να μπούμε στους φακέλους του, αυτό που θα χρειαστεί να κάνουμε είναι να ανοίξουμε τον browser από τον υπολογιστή ή το κινητό μας και να πληκτρολογήσουμε τη διεύθυνση "https://raspberry.local/nextcloud".

Αυτό που μας ενδιαφέρει κυρίως αυτή τη στιγμή, είναι να έχουμε πρόσβαση στο λειτουργικό σύστημα και αυτό γίνεται με δύο τρόπους:

  1. Με το VNC το οποίο μας επιτρέπει να συνδεθούμε στο Pi από έναν άλλο υπολογιστή, βλέποντας το γραφικό του περιβάλλον. Μπορούμε δηλαδή να δούμε τα μενού και τα παράθυρά του και να χρησιμοποιήσουμε το πληκτρολόγιο και το ποντίκι μας για να το χειριστούμε. Κάτι σαν το Teamviewer ή το Ammyy δηλαδή.
  2. Με SSH το οποίο μας επιτρέπει να μπούμε στο τερματικό του Pi και να κάνουμε απλές ή σύνθετες εργασίες. Για όσους είναι εξοικειωμένους με το τερματικό, το SSH είναι προτιμότερο.

Για να χρησιμοποιήσουμε το VNC θα πρέπει να κατεβάσουμε το VNC Viewer στο κινητό ή τον υπολογιστή από τον οποίο θέλουμε να μπαίνουμε στο Pi και να του δώσουμε τη διεύθυνση "https://raspberry.local" ή την IP του (π.χ. "https://192.168.100.200"). Θα μας ζητήσει το username και το password του Pi, με τα προεπιλεγμένα να είναι username: pi / password: raspberry.



Για το SSH ανοίγουμε το τερματικό του υπολογιστή μας ή κατεβάζουμε το Juice SSH στο Android και δίνουμε την ακόλουθη εντολή:

ssh [email protected]


Σημαντική σημείωση 5:
Προσέξτε στο τερματικό πώς ο χρήστης αλλάζει από "ubuntu" στον υπολογιστή "ubuntu" (ubuntu@ubuntu), σε "pi" στον υπολογιστή "server" (pi@server). Βρισκόμαστε πλέον στο τερματικό του Raspberry Pi και οι εντολές που θα δώσουμε, θα εκτελεστούν εκεί και όχι στον υπολογιστή μας.

Για να ενεργοποιήσουμε λοιπόν την πρόσβαση μέσω VNC και SSH στο Raspberry Pi, πηγαίνουμε στις "Προτιμήσεις > Raspberry Pi Configuration", επιλέγουμε την καρτέλα "Interfaces" και ενεργοποιούμε τις ομώνυμες επιλογές.

4. Εγκαθιστούμε το Webmin για εύκολη διαχείριση


Τέλος ένα εξαιρετικό εργαλείο για να βλέπουμε με γραφική απεικόνιση την κατάσταση του Raspberry Pi είναι το Webmin. Το Webmin θα φανεί ιδιαίτερα χρήσιμο όταν αρχίσουμε να εγκαθιστούμε και άλλες υπηρεσίες στο Pi μας. Μας δίνει τη δυνατότητα να δούμε ζωντανά την κατάσταση του δικτύου, πόση μνήμη RAM καταναλώνουν οι υπηρεσίες μας και αν ο επεξεργαστής της συσκευής είναι φορτωμένος.

Μας δείχνει επίσης αν οι εγκατεστημένες μας υπηρεσίες τρέχουν σωστά και μας παρέχει εύκολη διαχείριση για μερικές από αυτές όπως:

  • τον Apache Webserver
  • το Squid Proxy server
  • το Postfix και το Sendmail Mail server και 
  • το BIND DNS server

Για να κατεβάσουμε το Webmin, ανοίγουμε ένα τερματικό και δίνουμε την ακόλουθη εντολή:

wget http://prdownloads.sourceforge.net/webadmin/webmin_1.900_all.deb

Στη συνέχεια το κάνουμε εγκατάσταση με την εξής εντολή:

sudo dpkg --install webmin_1.890_all.deb

Ενδέχεται να μας πει ότι λείπουν κάποιες βιβλιοθήκες στο σύστημά μας. Για να διορθώσουμε το πρόβλημα δίνουμε την εντολή:

sudo apt install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python

Τέλος για διόρθωση των εξαρτήσεων δίνουμε την εντολή:

sudo apt --fix-broken install

Αφού τελειώσει η εγκατάσταση, μπορούμε πλέον να μπούμε στο Webmin. Ανοίγουμε τον browser μας και πληκτρολογούμε τη διεύθυνση:

https://192.168.100.200:10000/session_login.cgi

Το username είναι "root" και το password αυτό που θα ορίσουμε εμείς.


Τα απολύτως απαραίτητα


Αυτές είναι λοιπόν οι πρώτες ρυθμίσεις που πρέπει να κάνουμε στο Pi μας, αν θέλουμε να ξεκινήσουμε να το χρησιμοποιούμε για κάτι περισσότερο από έναν απλό υπολογιστή. Ο ορισμός μίας σταθερής IP, η χρήση εντός domain name που μπορούμε να θυμόμαστε, το SSH και το VNC για απομακρυσμένη σύνδεση, αλλά και το Webmin για εύκολη διαχείριση, θα μας φανούν εξαιρετικά χρήσιμα στο μέλλον.

Τι μας μένει λοιπόν; Να ξεκινήσουμε τα project μας! Στο επόμενο άρθρο θα δούμε πώς φτιάχνουμε έναν απλό file server, δημιουργώντας έναν κοινόχρηστο φάκελο στο οικιακό μας δίκτυο, στον οποίο θα μπορούμε να μπούμε από όλες τις συσκευές μας, για να αφήσουμε ή να πάρουμε αρχεία.

Δείτε επίσης:



Το άρθρο είναι κλεμμένο από το Cerebrux.net

Σχόλια

Δείτε επίσης...

Android | Γιατί δε θα αγόραζα ποτέ smartphone της OnePlus

Φεύγω από την Google (μέρος 15) | ''Ξηλώνουμε'' τα Google apps από το Android

Ιδιωτικό απόρρητο | Το αφελές επιχείρημα του ''Δεν έχω τίποτα να κρύψω''

Docker (μέρος 7) | Στήνουμε έναν reverse proxy για τα container μας με το Traefik

Μάθε παιδί μου Linux (μέρος 11) | Δίσκοι, κατατμήσεις και σύστημα αρχείων (filesystem)

Android | Περιόρισε την παρακολούθηση των εφαρμογών και κόψε τις διαφημίσεις με το TrackerControl

Ubuntu Touch 2020 review | Μια πραγματική mobile GNU/Linux διανομή έτοιμη για καθημερινή χρήση

Απόρρητο | ''Μπερδεύουμε'' τον αλγόριθμο Google και Facebook με ψεύτικες πληροφορίες

Docker (μέρος 1) | Τι είναι και πώς το εγκαθιστούμε στον υπολογιστή μας;

Android | Βάλε στην ''απομόνωση'' τις εφαρμογές που δεν εμπιστεύεσαι με το Shelter