RouterOS OpenVPN
RouterOS on mahdollista tehdä OpenVPN palvelin ja asiakas. OpenVPN on yksi maailman turvallisimmista VPN tunneli protokolista.
Sisällysluettelo
Palvelin
Tässä ohjeessa tehdään Mikrotikin reitittimeen OpenVPN palvelin.
Vaatimukset / Suositukset
- SSL juurisertifikaatti (CA)
- SSL palvelin sertifikaatti
- SSL asiakas sertifikaatti (suositus tehdä valmiiksi)
- Testattu Mikrotik RB951G-2HnD ja RouterOS 6.26
Konfigurointi
1. Luo SSL sertifikaatit ensin, esimerkiksi OpenSSL:n avulla ja siirrä se Winboxin avulla, vetämällä hiirellä Winboxin päälle.
Importetaan sertifikaatti avain ja sertifikaatti RouterOS:n.
/certificates import file-name=ssl.key
/certificates import file-name=ssl.crt
2. Luo DHCP Pool (jos haluat siltaavaksi voit ohittaa tämän kohdan)
/ip pool add name=ovpn-pool ranges=10.15.32.34-10.15.32.38
- DHCP poolin nimi on ovpn-pool
- Poolin alue on 10.15.32.34-10.15.32.38
3. Luodaan reititys OpenVPN verkosta lähiverkkoon (jos haluat siltaavaksi, voit ohittaa tämän kohdan)
/ip firewall nat add chain=srcnat out-interface=ether2 action=masquerade
Luodaan NAT ether2 interfaceen
4. Luodaan OpenVPN profiili
/ppp profile add name=openvpn local-address=10.15.32.33 remote-address=ovpn-pool
- Profiilin nimi on openvpn
- Paikallinen IP-osoite on 10.15.32.33
- VPN asiakkaille annetaan etä IP-osoitteeksi ovpn-poolista (DHCP)
- Saat siltauksen poistamalla local-address ja remote-address korvaamalla tämä bridge=bridge-local, esimerkki:
/ppp profile add name=openvpn_bridge bridge=bridge-local
5. Luo VPN käyttäjä
/ppp secret add disabled=no name="openvpn" password="Qwerty1" service=any
- Käyttäjänimi: openvpn
- Salasana: Qwerty1
- Palvelut jota tunnusta voi käyttää: Openvpn
6. OpenVPN palvelimen konfiguraatio
/interface ovpn-server server set auth=sha1, certificate=ssl_cert cipher=aes128,aes256 default-profile=openvpn enabled=yes keepalive-timeout=60 max-mtu=1500 mode=ip netmask=29 port=1194 require client-certificate=no
- Todennustapa: SHA1
- SSL sertifikaatti: ssl-cert
- SSL Chipper: AES128, AES256
- Opetusprofiili: openvpn (4. vaiheessa luotu profiili)
- Keepalive-timeout=60
- MAX-MTU (paketin koko): 1500
- mode=ip (jos haluat kahden mikrotikin sillan, laita tähän ethernet)
- require client-certificate=no (jos on asiakas sertifikaatti, niin laita yes)
5. Salli asiakas laitteen muodostamisen OpenVPN palvelimeen palomuurista
/ip firewall filter add action=accept chain=input comment="OpenVPN" disabled=no dst-port=1194 protocol=tcp
Luodaan uusi palomuurisääntö jossa sallitaan protokolassa TCP porttiin 1194 yhdistämisen.
Radius
- Lisää Mikrotikkiin Radius palvelimesi asetukset /radius alle.
- Määritä palvelimelle sallituksia CHAP / PAP, SPAP sekä NAS Port typeksi NAS.
/radius add service=ppp address=10.0.0.254 secret=securepassu authentication-port=1812 accounting-port=1813
Esimerkki konfiguraatiot Windows NPS palvelimelta.
Asiakas
RouterOS
OpenVPN asiakkaalla voit yhdistää OpenVPN palvelimeen.
1. Luodaan OpenVPN asiakkaalle profiili:
/ppp profile add name=openvpn-client
2. Luodaan uusi OpenVPN asiakas:
/intertface ovpn-client name="openvpn-client" connect-to="server.openvpn.com" port="1194" mode="ip" user="openvpn" password="openvpn123" profile="openvpn-client" certificate="no" auth="sha1" cipher="aes128" add-default-route="no"
- name = yhteyden nimi
- connect-to = OpenVPN palvelimen verkko-osoite tai IP-osoite
- port = Portti, jota OpenVPN palvelin kuuntelee
- mode = ip (ethernet silloin jos haluat sillata kaksi Mikrotikkiä)
- user = OpenVPN käyttäjä
- password = OpenVPN käyttäjän salasana
- profile = OpenVPN profiili jota käytetään
- certificate = SSL asiakas sertifikaatti
- auth = Todennus
- cipher = salaus
- add-default-route = Käytetäänkö tätä yhteyttä oletusreittinä.
3. Kokeile yhdistää ja katso lokia jos tulee ongelmia.
Linux
Esimerkki konfiguraatio client.ovpn:
client dev tun #Voi olla tap. Tun on reitittävä ja tap on siltaava. Katso että vastaa palvelimen konfiguraatiota. proto tcp #Tai udp, RouterOS ei tue UDP:nä. resolv-retry infinite nobind remote vpn.example.org 1194 # Etä OpenVPN palvelimen osoite tai IP-osoite sekä portti #Lisää tähän rootCA jonka olet luonut, avaa se ja kopioi sisältö <ca> -----BEGIN CERTIFICATE----- -----END CERTIFICATE----- </ca> #Lisää tähän asiakas sertifikaatin jonka olet luonut. <cert> -----BEGIN CERTIFICATE----- -----END CERTIFICATE----- </cert> #Lisää tähän asiakkaan sertifikaatin privaatti avaimen. <key> -----BEGIN PRIVATE KEY----- -----END PRIVATE KEY----- </key> tls-client port 1194 #Portti jota palvelin kuuntelee user nobody group nogroup #comp-lzo # Do not use compression. It doesn't work with RouterOS (at least up to RouterOS 3.0rc9) # More reliable detection when a system loses its connection. ping 15 ping-restart 10 ping-timer-rem persist-tun persist-key # Silence the output of replay warnings, which are a common false # alarm on WiFi networks. This option preserves the security of # the replay protection code without the verbosity associated with # warnings about duplicate packets. mute-replay-warnings # Verbosity level. # 0 = quiet, 1 = mostly quiet, 3 = medium output, 9 = verbose verb 3 cipher AES-256-CBC auth SHA1 pull route-nopull #Verkot jotka reititetään VPN verkkoon route 192.168.1.0 255.255.255.0 push "dhcp-option DNS 8.8.8.8" #DNS palvelin jota käytetään #redirect-gateway def1 #Haluatko reitittää kaikki VPN kautta? Ota tästä risuaita pois #Salasana tiedosto auth-user-pass auth.cfg
auth.cfg tiedoston tulisi sisältää käyttäjänimen (username) ja salasananan (password)
username password