English · Ελληνικά
Το να φέρεις ένα laptop ή τηλέφωνο με ασφάλεια πίσω στο γραφείο σε RouterOS καταλήγει στο να διαλέξεις το σωστό πρωτόκολλο ανάλογα με το πού βρίσκεται ο χρήστης. IKEv2 για native mobile clients, SSTP για να τρυπώσεις μέσα από εχθρικά firewalls στο port 443. Αυτό χτίζει και τα δύο, συν τις παγίδες road-warrior που κάνουν το remote access του MikroTik να «δουλεύει στο lab, αποτυγχάνει στο αεροδρόμιο». Το δίδυμο του post IKEv2 της Cisco.
Σε αντίθεση με το WireGuard (φοβερό, αλλά χρειάζεται εφαρμογή) ή το site-to-site (σταθεροί peers), το remote access αφορά αυθαίρετους clients από αυθαίρετα δίκτυα. Το RouterOS σου δίνει αρκετές επιλογές road-warrior, και η σωστή επιλογή είναι ερώτημα firewall: το IKEv2 είναι ενσωματωμένο σε iOS/macOS/Windows εγγενώς και είναι το μοντέρνο default — μέχρι ένα δίκτυο επισκεπτών ή ξενοδοχείου να μπλοκάρει UDP 500/4500. Το SSTP κάνει tunnel πάνω από TLS στο 443, οπότε μοιάζει με HTTPS και περνά σχεδόν παντού — το αξιόπιστο fallback. Το L2TP/IPsec είναι η legacy επιλογή που υποστηρίζει κάθε συσκευή αλλά κανείς δεν αγαπά.
Θα χτίσουμε IKEv2 (native clients, mode-config για να αναθέτει διευθύνσεις) και SSTP (443, ανθεκτικό σε firewall), και τα δύο δίνοντας στον client μια διεύθυνση από ένα pool και κάνοντάς τον route προς το LAN. Καθρεφτίζει το remote access IKEv2 της Cisco· το μοντέλο είναι πανομοιότυπο, τα μενού είναι RouterOS.
01
Ξεκίνα εδώ, γιατί είναι το πιο ανθεκτικό και το πιο απλό. Το SSTP πατάει πάνω σε TLS/443, οπότε διασχίζει NAT και περιοριστικά firewalls διάφανα. Ένα server cert, ένα PPP profile, και ένας χρήστης.
# Address pool + ένα PPP profile που αναθέτει το gateway και το εύρος client. /ip pool add name=ra-pool ranges=10.99.0.10-10.99.0.200 /ppp profile add name=ra local-address=10.99.0.1 remote-address=ra-pool \ dns-server=10.10.0.53 # Ενεργοποίησε τον server SSTP με το cert σου (443 = μοιάζει με HTTPS). /interface sstp-server server set enabled=yes certificate=ra-cert default-profile=ra \ authentication=mschap2 port=443 tls-version=only-1.2 # Ένας χρήστης (ή δείξε το authentication σε RADIUS για κλίμακα). /ppp secret add name=road.warrior password="strong-pass" service=sstp profile=ra
Τα VPN road-warrior αποτυγχάνουν πιο συχνά όχι στο crypto αλλά στην προσβασιμότητα — ο client είναι σε δίκτυο café με captive portal που μπλοκάρει τα πάντα εκτός από web ports. Το SSTP στο 443 περνάει γιατί είναι μη διακριτό από HTTPS για ένα stateful firewall. Το κόστος είναι ότι είναι native στα Windows αλλά χρειάζεται εφαρμογή client σε άλλες πλατφόρμες, και το TLS προσθέτει λίγο overhead. Για το «πρέπει να δουλεύει από όπου κι αν είναι ο χρήστης», το SSTP είναι η απάντηση· συνδύασέ το με IKEv2 για την εμπειρία native-mobile.
02
Το IKEv2 είναι ενσωματωμένο σε τηλέφωνα και laptops χωρίς εφαρμογή, οπότε είναι η πιο ωραία εμπειρία — όταν το επιτρέπει το δίκτυο. Στο RouterOS είναι IPsec με mode-config για να δίνει στον client μια διεύθυνση και μια policy παραγμένη ανά σύνδεση.
# Το mode-config αναθέτει στον client μια διεύθυνση από το pool + DNS. /ip ipsec mode-config add name=ra-mc address-pool=ra-pool address-prefix-length=32 \ split-include=10.10.0.0/24 # split tunnel: μόνο το subnet του γραφείου # Phase 1/2 + ένας passive peer που περιμένει clients (exchange-mode ike2). /ip ipsec profile add name=ra-p1 enc-algorithm=aes-256 hash-algorithm=sha256 dh-group=modp2048 /ip ipsec proposal add name=ra-p2 enc-algorithms=aes-256-cbc auth-algorithms=sha256 pfs-group=modp2048 /ip ipsec peer add name=ra passive=yes exchange-mode=ike2 profile=ra-p1 \ send-initial-contact=no # Identity: authenticate clients με EAP (username/password) + server cert, # και auto-generate policies ανά client, με scope το mode-config. /ip ipsec identity add peer=ra auth-method=eap-radius certificate=ra-cert \ generate-policy=port-strict mode-config=ra-mc
Δύο κλασικά road-warrior. Πρώτο, το generate-policy=port-strict είναι αυτό που αφήνει έναν peer με άγνωστη source διεύθυνση (έναν client από οπουδήποτε) να εγκαταστήσει policy δυναμικά — χωρίς αυτό, το IKEv2 remote access απλά δεν θα χτίσει tunnel για έναν client του οποίου το IP δεν προ-ρύθμισες. Δεύτερο, ακριβώς όπως στη Cisco: ο client επικυρώνει το server certificate του router, οπότε πρέπει να είναι CA-signed με όνομα που ταιριάζει με αυτό που καλεί ο client, αλλιώς οι native clients αρνούνται με ασαφές σφάλμα. Το crypto σπάνια είναι το πρόβλημα· το policy-generation και η εμπιστοσύνη cert είναι.
03
Οι clients φτάνουν στην input chain του WAN και η κίνησή τους πρέπει να φτάσει — και να γίνει NATed προς — το LAN. Δύο κανόνες που ξεχνά ο κόσμος, και το tunnel ανεβαίνει αλλά τίποτα δεν περνάει.
# Επίτρεψε τα transports VPN προς τα ΜΕΣΑ (443 για SSTP· 500/4500 + ESP για IKEv2). /ip firewall filter add chain=input protocol=tcp dst-port=443 action=accept comment="SSTP" add chain=input protocol=udp port=500,4500 action=accept comment="IKEv2" add chain=input protocol=ipsec-esp action=accept # Άφησε τους clients να φτάσουν το LAN, και ΜΗΝ κάνεις masquerade κίνηση VPN->LAN. /ip firewall nat add chain=srcnat src-address=10.99.0.0/24 dst-address=10.10.0.0/24 action=accept place-before=0
04
Επιβεβαίωσε ότι οι listeners είναι up και δες έναν client να συνδέεται σε κάθε πρωτόκολλο.
/interface sstp-server print # server τρέχει στο 443 /ppp active print # συνδεδεμένοι χρήστες SSTP + ανατεθειμένα IP /ip ipsec active-peers print # clients IKEv2, state=established /ip ipsec policy print where dynamic=yes # auto-generated policies ανά client /log print where topics~"ipsec" # πρώτη στάση όταν ένας client δεν συνδέεται
Βασικα Συμπερασματα
generate-policy=port-strict είναι αυτό που αφήνει clients από άγνωστες διευθύνσεις να χτίσουν tunnel — χωρίς αυτό, το IKEv2 remote access δεν δουλεύει.Χτίζω VPN road-warrior σε MikroTik και Cisco — IKEv2 για native υποστήριξη συσκευών, SSTP ως fallback για δίκτυα που μπλοκάρουν τα πάντα άλλα — με πραγματικά πιστοποιητικά αντί για κοινό κλειδί, και έλεγχο πρόσβασης ανά χρήστη.
Κλεισε μια Discovery Call →