Το ζητούμενο:- Να περιορίσω την κυκλοφορία bots κλπ στο δίκτυο LTSP του σχολείου, συν
- Να δώσω τη δυνατότητα στο εκπαιδευτικό προσωπικό να συνδέεται στους αντίστοιχους users του από το σπίτι του. (Προς τούτο, επέλεξα το TigerVNC.)
Η συμβουλή της ΤΝ:Μετά από σχετική "συζήτηση" με την DeepSeek, αυτή κατέληξε στο ακόλουθο πακέτο κανόνων:
(Όπου eno1 είναι η κάρτα Ethernet που "βλέπει" τον router του σχολείου / τους ΗΥ στο γραφείο καθηγητών / τους ΗΥ στις αίθουσες διδασκαλίας, και eno2 η κάρτα που "βλέπει" τα εργαστήρια Πληροφορικής.
Γιά ευνόητους λόγους, παραλείπω τη δημόσια ακριβή αναφορά στο συγκεκριμένο σχολικό ip set, που δίνει ο router.)
# (1) Reset if needed
sudo ufw reset
# (2) Default policies
sudo ufw default deny incoming
sudo ufw default allow outgoing
# (3) Internal LTSP services - Teachers
sudo ufw allow in on eno1 from 10.xxx.xxx.0/24 to any port 69
sudo ufw allow in on eno1 from 10.xxx.xxx.0/24 to any port 2049
sudo ufw allow in on eno1 from 10.xxx.xxx.0/24 to any port 111
sudo ufw allow in on eno1 from 10.xxx.xxx.0/24 to any port 22
# (4) Internal LTSP services - Labs
sudo ufw allow in on eno2 from 192.168.67.0/24 to any port 69
sudo ufw allow in on eno2 from 192.168.67.0/24 to any port 2049
sudo ufw allow in on eno2 from 192.168.67.0/24 to any port 111
sudo ufw allow in on eno2 from 192.168.67.0/24 to any port 67:68
sudo ufw allow in on eno2 from 192.168.67.0/24 to any port 22
# (5) REMOTE ACCESS - Adjust YOUR_HOME_IP accordingly
sudo ufw allow in on eno1 from YOUR_HOME_IP to any port 22
sudo ufw allow in on eno1 from YOUR_HOME_IP to any port 5900 # Only if direct VNC needed
# (6) Rate limiting for SSH from unknown sources
sudo ufw limit in on eno1 from any to any port 22
# (7) Established connections
sudo ufw allow in on any proto tcp from any to any state established,related
# (8) Block external access to LTSP services
sudo ufw deny in on eno1 from any to any port 69
sudo ufw deny in on eno1 from any to any port 2049
sudo ufw deny in on eno1 from any to any port 111
# (9) Enable firewall
sudo ufw enableΟι ερωτήσεις μου (πρίν αρχίσω να δίνω τις εντολές· κι αν κάνω καμιά βλακεία, ποιός περιμένει μετά να τελειώσει το restore!...) :
Επειδή δεν έχω επαρκείς γνώσεις σε system security (αν και καταλαβαίνω κάμποσα από τα παραπάνω), κι επειδή μέχρι στιγμής δεν βγάζω απόλυτα άκρη με το GUFW, θα ήθελα να με διαφωτίσετε στα εξής:
- Κατ' αρχάς, είναι γενικώς σωστοί αυτοί οι κανόνες; Λείπουν κάποιοι; περισσεύουν κάποιοι; θέλουν διόρθωση / προσθήκες κάποιοι;
- Αμφιβάλλω αν το (5) εφαρμόζεται πρακτικά, διότι συνήθως οι πάροχοι Internet / τηλεφωνίας μας δίνουν μεταβλητή (dynamic) ip στα σπίτια μας. (Μόνο αν έχει κάποιος συνδρομητής λόγους να ζητήσει static ip, τότε του δίνουν.) Άρα, χρειάζεται πραγματικά το (5) ;
- Στο (6), θεωρητικώς "άγνωστη πηγή" είναι κι όποιος συνάδελφος μπεί από το σπίτι του - έστω, γιά πρώτη φορά. Αυτό σημαίνει ότι θα πέσει η ταχύτητα σύνδεσής του; Επίσης: υπάρχει τρόπος, η "άγνωστη πηγή" να γίνει γνωστή;
- Το (7), τί είναι ακριβώς;
- Το ( 8 )... Αν μπλοκάρεται η πρόσβαση στο LTSP από εξωτερικές πηγές, τότε πώς θα συνδεθεί κανείς στον χρήστη του από το σπίτι του; Ή δεν παίζει ρόλο αυτό;
Αυτά, κι ευχαριστώ εκ των προτέρων γιά πιθανές απαντήσεις σας!
Υγ 1: Στο τέλος, χρειάζεται να δώσουμε:
# Save rules
iptables-save > /etc/iptables/rules.v4Ή όχι (αν σώζονται αυτόματα οι κανόνες) ;
Ή αυτό (γιά Ubuntu / Ubuntu based OS's) ;
# Install iptables-persistent
sudo apt-get install iptables-persistent
# Save current rules
sudo netfilter-persistent saveΥγ 2: Αν δώσω όλες αυτές τις εντολές από γραμμή εντολών, τότε οι ρυθμίσεις αυτές θα φανούν αυτομάτως και στο GUFW;
Υγ 3: Γιά εγκατάσταση των clients του TigerVNC, θα γράψω -μετά από επιτυχείς δοκιμές- σχετικό φυλλάδιο προς χρήση των συναδέλφων. (Γιά χρήστες Ms-Windows βασικά, οι λινουξάδες μάλλον δεν θα το χρειαστούν! :) ) Πιθανώτατα ένα μικρό HowTo κι εδώ.
Υγ4: Κάτι λέει το .pdf της Τεχνικής Στήριξης ότι το port 22 είναι κλειστό (γιά λόγους ασφαλείας), άρα πρέπει ν' ανοίξουμε το port 5900, αν θυμάμαι καλά. Τότε, τί τροποποιήσεις πρέπει να γίνουν στα παραπάνω;
Μετά την πρώτη δοκιμή, κι αφού έδωσα τις εντολές των ενοτήτων (1) έως (4), και τέλος την (9) :
- Την 4η εντολή της (4) θέλει να τη δώσουμε δύο φορές, μία με κατάληξη το 67 και μία με κατάληξη το 68.
- Στην εντολή της (7) δεν αναγνωρίζει την παράμετρο state.
- Το GUFW ενημερώθηκε αυτόματα με τους νέους κανόνες (rules), και έσωσα το νέο profile. (Σώζει στο: /etc/gufw/app_profiles. Δυστυχώς, δεν μπορώ να κάνω copy-paste τους rules, οπότε μόνο screen capture - επισυναπτόμενο.) Το log file του ενημερώθηκε κανονικά με κάθε αλλαγή.
- Το σημαντικώτερο είναι ότι συνεχίζουν να δουλεύουν χωρίς προβλήματα το LTSP και ο Επόπτης, μιά που τίποτε δεν άλλαξε επί της ουσίας. (Οπότε, παίρνω κι ένα backup σ' αυτή τη φάση, πριν προχωρήσω σε εγκατάσταση TigerVNC.)
.........................................................
- Το μόνο κακό με όλ' αυτά, είναι ότι οι clients δεν βλέπουν Διαδίκτυο. Επανέφερα το default profile "Office" του GUFW (που τα επιτρέπει όλα), και επανήλθε το Διαδίκτυο. Γιά περαιτέρω ρυθμίσεις, ίδωμεν...