Πίσω στο blog

English  ·  Ελληνικά

MikroTik / RouterOS  ·  VPN  ·  Ιουλιος 2026

MikroTik
Remote-Access VPN (IKEv2 & SSTP)

Το να φέρεις ένα laptop ή τηλέφωνο με ασφάλεια πίσω στο γραφείο σε RouterOS καταλήγει στο να διαλέξεις το σωστό πρωτόκολλο ανάλογα με το πού βρίσκεται ο χρήστης. IKEv2 για native mobile clients, SSTP για να τρυπώσεις μέσα από εχθρικά firewalls στο port 443. Αυτό χτίζει και τα δύο, συν τις παγίδες road-warrior που κάνουν το remote access του MikroTik να «δουλεύει στο lab, αποτυγχάνει στο αεροδρόμιο». Το δίδυμο του post IKEv2 της Cisco.

MikroTik RouterOS Remote Access IKEv2 SSTP VPN

Σε αντίθεση με το 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 — Αυτο που Δουλευει Παντα

Ξεκίνα εδώ, γιατί είναι το πιο ανθεκτικό και το πιο απλό. Το SSTP πατάει πάνω σε TLS/443, οπότε διασχίζει NAT και περιοριστικά firewalls διάφανα. Ένα server cert, ένα PPP profile, και ένας χρήστης.

RouterOS 7 — server SSTP πανω απο 443
# 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
◆ Γιατι το SSTP ειναι το Πρακτικο Default στο MikroTik

Τα 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 — Ενσωματωμενοι Clients σε Κινητα

Το IKEv2 είναι ενσωματωμένο σε τηλέφωνα και laptops χωρίς εφαρμογή, οπότε είναι η πιο ωραία εμπειρία — όταν το επιτρέπει το δίκτυο. Στο RouterOS είναι IPsec με mode-config για να δίνει στον client μια διεύθυνση και μια policy παραγμένη ανά σύνδεση.

RouterOS 7 — IKEv2 road-warrior με mode-config
# Το 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
⚠ Παγιδα — generate-policy & η Εμπιστοσυνη του Client στο Cert σου

Δύο κλασικά 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

Μην Ξεχασεις το Firewall & NAT

Οι clients φτάνουν στην input chain του WAN και η κίνησή τους πρέπει να φτάσει — και να γίνει NATed προς — το LAN. Δύο κανόνες που ξεχνά ο κόσμος, και το tunnel ανεβαίνει αλλά τίποτα δεν περνάει.

RouterOS 7 — επιτρεψε το VPN + εξαιρεσε την κινηση VPN απο masquerade
# Επίτρεψε τα 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

Επαληθευσε και τα Δυο Paths Ασφαλες να το Τρεξεις

Επιβεβαίωσε ότι οι listeners είναι up και δες έναν client να συνδέεται σε κάθε πρωτόκολλο.

RouterOS 7 — το περπατημα υγειας
/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 δεν συνδέεται

Βασικα Συμπερασματα

  1. Διάλεξε το πρωτόκολλο ανάλογα με το πού είναι ο χρήστης: IKEv2 για native mobile, SSTP (TLS/443) για να τρυπώσεις μέσα από εχθρικά firewalls, L2TP/IPsec ως η παγκόσμια legacy.
  2. Το SSTP είναι το πρακτικό default — μοιάζει με HTTPS και δουλεύει από δίκτυα café και ξενοδοχείων που μπλοκάρουν τα πάντα άλλα.
  3. Το IKEv2 χρειαζεται mode-config για να αναθέτει στον client διεύθυνση, DNS, και routes split-tunnel — το αντίστοιχο της authorization policy της Cisco.
  4. Το generate-policy=port-strict είναι αυτό που αφήνει clients από άγνωστες διευθύνσεις να χτίσουν tunnel — χωρίς αυτό, το IKEv2 remote access δεν δουλεύει.
  5. Ο client εμπιστεύεται το server certificate σου — CA-signed, με ταιριαστό όνομα, αλλιώς οι native clients αρνούνται με ασαφές σφάλμα.
  6. Άνοιξε τα transports στην input chain και εξαίρεσε το VPN→LAN από masquerade, αλλιώς το tunnel είναι up αλλά τίποτα δεν περνάει.

Προσωπικο απο μακρια που χρειαζεται προσβαση απο αεροδρομια, café, και sites πελατων;

Χτίζω VPN road-warrior σε MikroTik και Cisco — IKEv2 για native υποστήριξη συσκευών, SSTP ως fallback για δίκτυα που μπλοκάρουν τα πάντα άλλα — με πραγματικά πιστοποιητικά αντί για κοινό κλειδί, και έλεγχο πρόσβασης ανά χρήστη.

Κλεισε μια Discovery Call →