Kaugtöö kontoris. RDP, Port Knocking, Mikrotik: lihtne ja turvaline

Seoses Covid-19 viiruse pandeemia ja paljudes riikides valitseva üldise karantiiniga on paljude ettevõtete ainus võimalus tööd jätkata töökohtadele kaugjuurdepääsu kaudu Interneti kaudu. Kaugtööks on palju suhteliselt ohutuid meetodeid – kuid arvestades probleemi ulatust, on iga kasutaja jaoks vaja lihtsat meetodit kontoriga kaugühenduse loomiseks ja ilma lisaseadete, selgituste, tüütu konsultatsiooni ja pikkade juhisteta. Seda meetodit armastavad paljud administraatorid RDP (Remote Desktop Protocol). RDP kaudu otse töökohaga ühenduse loomine lahendab meie probleemi ideaalis, välja arvatud üks suur kärbes - RDP pordi avatuna hoidmine Interneti jaoks on väga ebaturvaline. Seetõttu pakun allpool välja lihtsa, kuid usaldusväärse kaitsemeetodi.Kaugtöö kontoris. RDP, Port Knocking, Mikrotik: lihtne ja turvaline

Kuna puutun sageli kokku väikeste organisatsioonidega, kus Mikrotik seadmeid kasutatakse Interneti-juurdepääsuna, siis allpool on näidatud, kuidas seda Mikrotikis rakendada, kuid Port Knocking kaitsemeetodit on lihtne rakendada ka teistes kõrgema klassi seadmetes, millel on sarnased sisendruuteri seaded ja tulemüür. .

Lühidalt Port Knockingust. Internetiga ühendatud võrgu ideaalne väline kaitse on see, kui kõik ressursid ja pordid on väljastpoolt tulemüüriga suletud. Ja kuigi sellise konfigureeritud tulemüüriga ruuter ei reageeri kuidagi väljast tulevatele pakettidele, kuulab ta neid. Seetõttu saate ruuteri konfigureerida nii, et kui erinevates portides võetakse vastu teatud (koodi) võrgupakettide jada, katkestab see (ruuter) selle IP jaoks, kust paketid tulid, juurdepääsu teatud ressurssidele (pordid, protokollid, jne.).

Nüüd äri juurde. Ma ei kirjelda Mikrotiku tulemüüri seadeid üksikasjalikult - Internet on selle jaoks täis kvaliteetseid allikaid. Ideaalis blokeerib tulemüür kõik sissetulevad paketid, kuid

/ip firewall filter
add action=accept chain=input comment="established and related accept" connection-state=established,related

Võimaldab sissetulevat liiklust loodud seotud ühendustest.
Nüüd seadistame Mikrotikis Port Knockingu:

/ip firewall filter
add action=drop chain=input dst-port=19000 protocol=tcp src-address-list="Black_scanners" comment=RemoteRules
add action=drop chain=input dst-port=16000 protocol=tcp src-address-list="Black_scanners" comment=RemoteRules
add action=add-src-to-address-list address-list="remote_port_1" address-list-timeout=1m chain=input dst-port=19000 protocol=tcp comment=RemoteRules
add action=add-src-to-address-list address-list="Black_scanners" address-list-timeout=60m chain=input dst-port=19001 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules
add action=add-src-to-address-list address-list="Black_scanners" address-list-timeout=60m chain=input dst-port=18999 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules
add action=add-src-to-address-list address-list="Black_scanners" address-list-timeout=60m chain=input dst-port=16001 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules
add action=add-src-to-address-list address-list="Black_scanners" address-list-timeout=60m chain=input dst-port=15999 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules
add action=add-src-to-address-list address-list="allow_remote_users" address-list-timeout=1m chain=input dst-port=16000 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules
move [/ip firewall filter find comment=RemoteRules] 1
/ip firewall nat
add action=dst-nat chain=dstnat comment="remote_rdp" src-address-list="allow_remote_users" dst-port=33890 in-interface-list=WAN protocol=tcp to-addresses=192.168.1.33 to-ports=3389

Nüüd täpsemalt:

kaks esimest reeglit

/ip firewall filter
add action=drop chain=input dst-port=19000 protocol=tcp src-address-list="Black_scanners" comment=RemoteRules
add action=drop chain=input dst-port=16000 protocol=tcp src-address-list="Black_scanners" comment=RemoteRules

keelata sissetulevad paketid IP-aadressidelt, mis on pordi skaneerimise ajal mustas nimekirjas;

Kolmas reegel:

add action=add-src-to-address-list address-list="remote_port_1" address-list-timeout=1m chain=input dst-port=19000 protocol=tcp comment=RemoteRules

lisab ip nende hostide loendisse, mis tegid esimese õige koputuse õigele pordile (19000);
Järgmised neli reeglit on järgmised:

add action=add-src-to-address-list address-list="Black_scanners" address-list-timeout=60m chain=input dst-port=19001 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules
add action=add-src-to-address-list address-list="Black_scanners" address-list-timeout=60m chain=input dst-port=18999 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules
add action=add-src-to-address-list address-list="Black_scanners" address-list-timeout=60m chain=input dst-port=16001 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules
add action=add-src-to-address-list address-list="Black_scanners" address-list-timeout=60m chain=input dst-port=15999 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules

looge trap-pordid neile, kes soovivad teie porte skannida, ja kui sellised katsed tuvastatakse, lisage nende ip 60 minutiks musta nimekirja, mille jooksul esimesed kaks reeglit ei anna sellistele hostidele võimalust õigetele portidele koputada;

Järgmine reegel:

add action=add-src-to-address-list address-list="allow_remote_users" address-list-timeout=1m chain=input dst-port=16000 protocol=tcp src-address-list="remote_port_1" comment=RemoteRules

paneb ip 1 minutiks lubatud nimekirja (piisab ühenduse loomiseks), kuna teine ​​õige koputus tehti soovitud pordile (16000);

Järgmine käsk:

move [/ip firewall filter find comment=RemoteRules] 1

liigutab meie reeglid tulemüüri töötlemisahelas ülespoole, kuna tõenäoliselt on meil juba konfigureeritud erinevad keelureeglid, mis takistavad meie äsja loodud reeglite töötamist. Mikrotiku kõige esimene reegel algab nullist, kuid minu seadmes oli null sisseehitatud reegel ja seda oli võimatu liigutada - teisaldasin selle 1-le. Seetõttu vaatame oma seadeid - kuhu saate selle teisaldada ja märkige soovitud number.

Järgmine seade:

/ip firewall nat
add action=dst-nat chain=dstnat comment="remote_rdp_to_33" src-address-list="allow_remote_users" dst-port=33890 in-interface-list=WAN protocol=tcp to-addresses=192.168.1.33 to-ports=3389

edastab suvaliselt valitud pordi 33890 tavapärasesse RDP-porti 3389 ja meile vajaliku arvuti või terminaliserveri ip-d. Loome sellised reeglid kõigi vajalike sisemiste ressursside jaoks, eelistatavalt määrates mittestandardsed (ja erinevad) välispordid. Loomulikult peab sisemiste ressursside IP olema kas staatiline või DHCP-serveris fikseeritud.

Nüüd on meie Mikrotik konfigureeritud ja vajame lihtsat protseduuri, et kasutaja saaks meie sisemise RDP-ga ühenduse luua. Kuna meil on peamiselt Windowsi kasutajad, loome lihtsa bat-faili ja paneme sellele nimeks StartRDP.bat:

1.htm
1.rdp

vastavalt 1.htm sisaldab järgmist koodi:

<img src="http://my_router.sn.mynetname.net:19000/1.jpg">
нажмите обновить страницу для повторного захода по RDP
<img src="http://my_router.sn.mynetname.net:16000/2.jpg">

see sisaldab kahte linki kujuteldavatele piltidele, mis asuvad aadressil my_router.sn.mynetname.net - me võtame selle aadressi Mikrotik DDNS-süsteemist pärast selle lubamist meie Mikrotikis: minge menüüsse IP-> Cloud - märkige ruut DDNS Enabled, klõpsake nuppu Rakenda ja kopeerige meie ruuteri DNS-nimi. Kuid see on vajalik ainult siis, kui ruuteri väline IP on dünaamiline või kui kasutatakse mitme Interneti-teenuse pakkujaga konfiguratsiooni.

Esimese lingi port: 19000 vastab esimesele pordile, millele peate koputama, teises vastavalt teisele. Linkide vahel on lühike juhis, mis näitab, mida teha, kui äkki meie ühendus katkeb lühikeste võrguprobleemide tõttu - värskendame lehte, RDP port avaneb meile uuesti 1 minutiks ja meie seanss taastub. Samuti moodustab img-märgendite vaheline tekst brauseri jaoks mikroviivituse, mis vähendab tõenäosust, et esimene pakett jõuab teise porti (16000) – seni pole kahe nädala jooksul selliseid juhtumeid olnud (30 inimesed).

Järgmiseks tuleb fail 1.rdp, mille saame seadistada kõigi jaoks või iga kasutaja jaoks eraldi (tegin nii - lihtsam on kulutada 15 minutit lisaaega kui paar tundi konsulteerida nendega, kes sellest aru ei saanud)

screen mode id:i:2
use multimon:i:1
.....
connection type:i:6
networkautodetect:i:0
.....
disable wallpaper:i:1
.....
full address:s:my_router.sn.mynetname.net:33890
.....
username:s:myuserlogin
domain:s:mydomain

huvitavatest sätetest on siin multimoni kasutamine: i: 1 - see hõlmab mitme monitori kasutamist - mõned vajavad seda, kuid nad ise ei mõtle seda sisse lülitada.

ühenduse tüüp: i: 6 ja võrguautomaatne tuvastamine: i: 0 - kuna suurem osa Internetist on üle 10 Mbps, siis lülitage sisse ühenduse tüüp 6 (kohalik võrk 10 Mbps ja rohkem) ja lülitage võrguautomaatne tuvastamine välja, sest kui vaikimisi (automaatne) , siis seab isegi haruldane väike võrgulatentsus meie seansi automaatselt pikaks ajaks aeglasele kiirusele, mis võib tekitada töös märgatavaid viivitusi, eriti graafikaprogrammides.

keela taustpilt: i: 1 - keela töölaua pilt
kasutajanimi:s:myuserlogin - me määrame kasutaja sisselogimise, kuna suur osa meie kasutajatest ei tea oma sisselogimist
domeen:s:mydomain – määrake domeen või arvuti nimi

Aga kui tahame ühendusprotseduuri loomise ülesannet lihtsustada, siis võime kasutada ka PowerShelli – StartRDP.ps1

Test-NetConnection -ComputerName my_router.sn.mynetname.net -Port 19000
Test-NetConnection -ComputerName my_router.sn.mynetname.net -Port 16000
mstsc /v:my_router.sn.mynetname.net:33890

Natuke ka Windowsi RDP-kliendist: MS on protokolli ja selle serveri- ja kliendiosade optimeerimisel teinud pika tee, juurutanud palju kasulikke funktsioone – näiteks riistvara 3D-ga töötamine, monitori ekraani eraldusvõime optimeerimine, multiscreen, ja nii edasi. Kuid loomulikult rakendatakse kõike tagasiühilduvusrežiimis ja kui klient on Windows 7 ja kaugarvuti on Windows 10, töötab RDP protokolli versiooni 7.0 abil. Kuid eeliseks on see, et saate värskendada RDP versioone uuematele versioonidele – näiteks saate protokolli versiooni uuendada versioonilt 7.0 (Windows 7) versioonile 8.1. Seetõttu on klientide mugavuse huvides vaja serveriosa versioone nii palju kui võimalik suurendada ja RDP-protokolli klientide uutele versioonidele üleminekuks linke maha jätta.

Tänu sellele on meil lihtne ja suhteliselt turvaline tehnoloogia kaugühenduse loomiseks töötava arvuti või terminaliserveriga. Kuid turvalisema ühenduse huvides saab meie Port Knocking meetodit mitme suurusjärgu võrra rünnatavamaks muuta, lisades kontrollimiseks porte - sama loogika järgi saab lisada 3,4,5,6 ... pordi , ja sel juhul on otsene sissetung teie võrku peaaegu võimatu.

Tühjad failid RDP-ga kaugühenduse loomiseks.

Allikas: www.habr.com

Lisa kommentaar