Teme: Mikrotik

Mikrotik kao PPTP server

Skraćena veza: http://pedja.supurovic.net/veza/5438

Često se javlja potreba da se napravi simulirana internet veza koja služi kao bezbedna veza između dve udaljene tačke koje obe imaju pristup Internetu. Razlozi mogu biti raznoliki, a najčešće se radi o povećanju bezbednosti i zaštite podataka koji idu kroz nesigurno internet okruženje.

Ovakva veza se naziva tunelom jer ima samo dva kraja i ne može se u nju ući drugačije, osim na ta dva kraja. Tunel može biti obezbeđen lozinkom i šifrovan. Dve tačke ovakvu vezu vide kao da je stvarna veza i mogu je koristiti isto kao i bilo koju drugu internet vezu.

Pošto je sve što prolazi kroz tunel sigurno od pristupa sa strane, on se može propustiti preko Interneta i tako povezivati tačke koje treba da razmenjuju osetljive informacije. Iako je Internet nesiguran teren, tunel obezbeđuje potrebnu sigurnost jer sav saobraćaj kroz tunel je izolovan i zaštićen od drugog internet saobraćaja.

Tunel vezama se stvaraju prividne privatne mreže (VPN – Virtual Private Network). One omogućavaju da formiramo cele mreže računara kroz Internet, a da se pri tom oni međusobno vide kao da su u lokalnoj mreži, odvojeni od drugog internet saobraćaja.  Takva mreža je prividna, ali radi isto kao i da je napravljena stvarnim fizičkim vezama.

Tuneli su vrlo praktični kada je potrebno omogućiti pristup „sa terena“, odnosno sa Inteneta lokalnoj mreži. Korisnik može da se kroz Internet poveže tunelom tako da njegov računar postaje deo lokalne mreže, baš kao da je fizički u nju povezan. Jedino ograničenje je – ograničenje brzine internet veza.

Virtuelna privatna mreža spaja računare preko Interneta

PPTP

Postoji dosta tunel protokola, napravljenih sa različitim namenama. Mikrotik ih dosta i podržava tako da na raspolaganju imate veliki izbor. U članku ću se zadržati na opisu protokola PPTP, koji je često u upotrebi. Drugi protokoli se upotrebljavaju na sličan način, a razlike su uglavnom u efikasnosti i stepenu zaštite.

Point-to-Point Tunneling Protocol (PPTP) je tunel koji je zasnovan na PPP (Point-to-Point) protokolu. On se koristi kada je potrebno spojiti dve tačke koje su inače međusobno vidljive na TCP nivou (uprošćeno rečeno, ako radi ping, radiće i PPTP tunel). PPTP konekcija prolazi kroz rutere.

Povezivanje se vrši između dve IP adrese od kojih se na jednoj nalazi server a na drugoj klijent. Server može da prihvati konekcije više klijenata. Klijenti mogu biti svi uređaji koji mogu da upotebe ovaj protokol, uključujući druge rutere ili računare.

Veza se obezbeđuje korisničkim imenom i lozinkom i ima mogućnost korišćenja šifrovanja. Namenjen je za povezivanje udaljenih tačaka i mreža preko postojećih internet mreža.

Mikrotik PPTP interfejs tretira na isti način kao i ostale fizičke mrežne interfejse. Kada jednom podesite PPTP interfejs, nadalje sa njim možete raditi praktično isto što i sa fizičkim interfejsima.

Podešavanje PPTP servera

Uključivanje PPTP servera na mikrotiku je vrlo jednostavno, jednom komandom:

/interface pptp-server server set \
  authentication=mschap1,mschap2
  default-profile=default-encryption \
  enabled=yes \
  keepalive-timeout=30 \
  max-mru=1460 \
  max-mtu=1460 \
  mrru=disabled

Ovo su sve podrazumevana podešavanja. Jedino je server podrazumevano isključen pa je potrebno da ga uključimo. Parametri su:

authentication – određuje koji protokoli za prijavu klijenta se mogu koristiti. mscha2 je neophodan za šifrovanu konekciju.

default-profile – određuje profil korisnika koji će se primeniti ako korisniku nije dodeljen neki profil. O tome ćemo kasnije.

enabled – da li je server uključen ili isključen.

keepalive-timeout – služi za proveru da li je konekcija „živa“. Server će periodično proveravati da li je klijent još uvek dostupan i ako nije, prekinuće konekciju. Period se navodi u sekundama.

max-mru/max-mtu/mrru – maksimalne dužine primljenih i poslatih paketa. Ne dirajte ako ne znate čemu služi. Pogledajte PPPoE konekcija Mikrotik rutera kao klijenta za detaljnije objašnjenje.

Ovako podešen server je spreman da prihvati korisnike.

Korisnički nalozi

Da bi se korisnik mogao povezati na PPTP server neophodno je kreirati nalog za njega. Osnovna svrha naloga je da identifikuje korisnika, jer određuje korisničko ime i lozinku. pord toga, kroz nalog se korisniku dodeljuje IP adresa, određuje brzina protoka ako je potrebno, i drugi parametri veze.

/ppp secret add \
  name=user1 \
  password=lozinka \
  profile=default-encryption \
  local-address=10.10.10.1 \
  remote-address=10.10.10.2 \
  service=pptp \
  caller-id="" \
  limit-bytes-in=0 \
  limit-bytes-out=0 \
  routes="" \
  comment="" \
  disabled=no

Značenje parametara:

name – ime korisnika

password – lozinka sa kojom korisnik uspostavlja vezu

profile – profil korisnika. Ako veći broj korisnika treba da ima iste parametre konekcije onda je bolje umesto podešavanja svakog korisnika ponaosob napraviti profil i dodeljivati ga svim tim korisnicima. Profil default-encryption je unapred pripremljen i on ima omogućenu enkripciju, što je poželjno za konekcije koje idu preko Interneta. Obično ovaj profil i zadovoljava osnovne potrebe. Ako je potrebno da izmenite profil, napravite novi i njega koristite.

local-address – za svaku aktivnu PPTP konekciju ruter pravi novi mrežni interfejs. Ovaj parameter određuje koja IP adresa će biti dodeljena tom interfejsu. Ako imate više korisnika, možete za sve njih navesti isti lokalni IP rutera.

remote-address – ovo je IP adresa koja treba da bude dodeljena korisniku.

service – izbor servisa koje korisnik može da upotrebi. Može se omogućiti više protokola a ne samo PPTP.

caller-id – Dodatni nivo bezbednosti se može postići ako se navede IP adresa sa koje korisnik uspostavlja PPTP vezu. To znači da i ako neko zna korisničko ime i lozinku, neće moći da uspostavi vezu ako ima drugačiji IP.

limit-bytes-in/limit-bytes-out – ograničenje brzine protoka za svaki smer posebno. Ako je ovo podešeno, ruter će napraviti Simple Queue pravilo za ograničenje brzine za navedenu PPTP konekciju.

routes –  ukoliko je potrebno, ruter može, nakon uspostavljene veze da podesi određene statičke rute. Ovo je zgodno ako je potrebno da se kroz uspostavljenu konekciju rutiraneki IP saobraćaj.

Ovo je najjednostavniji način da kreirate korisnike za PPTP konekcije. Praktičan je ako se radi o manjem broju konekcija. Ako je potrebno da omogućite pristup velikom broju korisnika, a pogotovo ako je potrebno da merite saobraćaj, onda je bolje koristiti radijus (RADIUS) server, no to izlazi iz okvira ovog članka.

Statični mrežni interfejsi za PPTP konekcije

Kada se korisnik poveže na PPTP server, ruter će tada kreirati novi mrežni interfejs za njega, uspostaviti konekciju, dodeliti IP adrese interfejsu i korisniku i uopšte obaviti sve što je potrebno da veza radi. Kada korisnik prekine konekciju, ruter briše taj interfejs.

To je najčešće sasvim prihvatljiv načina rada. Ipak, to može da bude nezgodno ako je potrebno da neka druga podešavanja na ruteru vežete za taj interfejs. Nije to baš lako izvesti ako interfejs čas postoji – čas ne postoji, zavisno do toga da li je korisnik povezan na server.

Zato, ako je potrebno, možete unapred napraviti PPTP interfejs za određenog korisnika. Taj interfejs će na ruteru postojati i kada korisnik nije povezan, tako da je lako napraviti ostala vezana podešavanja.

Željeni interfejs kreirate komandom:

/interface pptp-server add \
  name=pptp-in-user1
  user="user1"
  comment=""
  disabled=no

Parametrom name određujemo ime mrežnog interfejsa servera, a parametrom user određujemo kom koriniku je taj interfejs namenjen. Od tada, kada se navedeni korisnik bude povezan na PPTP server biće mu dodeljen ovaj interfejs umesto kreiranja privremenog.

Provera podešavanja

Ako želite da proverite koji su korisnici povezani na PPTP server upotrebite komandu

/ppp active print

Dobićete prikaz sličan ovom:

[admin@Mikrotik] /ppp active print
Flags: R - radius
 # NAME  SERVICE CALLER-ID       ADDRESS    UPTIME  ENCODING
 0 user1 pptp    186.21.211.129  10.10.10.2 5h8m58s MPPE128 stateless
 1 user2 pptp    81.212.215.34   10.10.10.3 5h8m59s MPPE128 stateless
 2 user3 pptp    118.253.232.137 10.10.10.4 5h8m59s MPPE128 stateless
 3 user4 pptp    12.221.111.206  10.10.10.5 6m15s   MPPE128 stateless

A ako imate problem sa nekim korisnikom koji ne uspeva da se poveže, onda upotrebite log da proverite šta je problem. Najpre omogućite logovanje PPTP konekcija:

/system logging add action=memory disabled=no prefix="" topics=pptp

Sada je dovoljno da otvorite log i pratite sve ta se dešava sa PPTP konekcijama. To će vam sigurno pomoći da otkrijete problem.

PPTP server iza zaštitnog zida

Ako se PPTP server nalazi iza zaštitnog zida (NAT) on nije direktno dostupan. Ukoliko je potrebno da se pristup PPTP serveru sa Interneta omogući kroz zaštitni zid, onda je neophodno da se na zaštitnom zidu napravi prolaz za konekcije na portu TCP 1723 kao i prolaz gre protokola. Potrebno je i jedne i druge konkekcije usmeriti na PPTP server.

Ako je zaštitni zid takođe na mikrotiku (drugom, ne onom na kome je PPTP server) onda se taj drugi mikrotik podešava komandama:

/ip firewall nat \
  add action=dst-nat chain=dstnat comment="dstnat pptp" disabled=no \
      in-interface=wan dst-port=1723 protocol=tcp \
      to-addresses=192.168.1.2 to-ports=1723

  add action=dst-nat chain=dstnat comment="dstnat gre" disabled=no \
      in-interface=wan protocol=gre \
      to-addresses=192.168.1.2

U primeru je pretpostavka da je adresa PPTP servera u mreži sa zaštitnim zidom 192.168.1.2.

PPTP korisnici i lan korisnici u istom mrežnom opsegu

Primer u članku podrazumeva da IP opseg koji se korsiti za PPTP korinike nije isti kao IP opseg koji se koristi za druge korisnike u lokalnoj mreži. Ipak, česta je potreba da se korisnicima koji pristupaju lokalnoj mreži preko PPTP omogući da vide lokalne mreže resurse kao da su fizički u lokalnoj mreži – na primer da mogu da korsite vindouz šering.

Iako se kao logično rešenje nameše k0orišćenje bridža, PPTP interfejsi se u mikrotiku ruteru ne mogu staviti u bridž, pa ovo neće raditi.

Umesto bridža treba na lan interfejsu (interfejsu preko koga je lokalna mreža spojena na mikrotik ruter) uključiti opciju:

 arp=proxy-arp

Nakon toga, dovoljno je svim PPTP korisnicima dodeljivati IP adrese iz opsega lokalne mreže, samo treba voditi računa da se ne preklapaju sa IP adresama koje se već koriste u lokalnoj mreži. Kao local-address PPTP korisnicima treba podesiti IP adresu koja je dodeljena lan intefejsu.


Podelite ovaj članak sa prijateljima


2 comments to Mikrotik kao PPTP server

  • Sasa

    Samo da ti kazem SVAKA TI CAST i za uputstvo, i za ceo sajt! Samo napred, svaka cast!!!

  • Vanja

    Postovani Pedja,
    nisam mogao otvoriti novu temu pa sam napisao ovde. Naime imam jedan mali problemcic, pa bih molio za savet.

    imam tri lokacije, na svim lokacijam a je doveden telekomov adsl, i na svim lokacijama je postavljen mikrotik 951.

    na jednoj lokaciji imam staticku adresu i podignut je pptp server i hotspot.
    Druge dve lokacije se konekutuju pptp na nju.

    takodje uspostavljen je eoip izmedju njih i ubacene su u bridge mode zajedno sa wlan interfaceom.

    lokacija 1 BRIDGE(wlan+eoip_lokacija2+eoip_lokacija3) i hotspot nad svime

    lokacija 2 i 3 BRIDGE(wlan+eoip_lokacija1)

    Ideja je bila centralizovani hotspot.
    Problem je u tome sto dobijem adresu na lokaciji 2 i 3 ali nista ne mogu da otvorim cak ni login stranu hotspota.

    hotspot na lokaciji jedan radi bez problema

    hvala unapred

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Popunite izraz tako da bude tačan: *