Etätyö toimistossa. RDP, Port Knocking, Mikrotik: yksinkertainen ja turvallinen

Covid-19-viruspandemian ja monien maiden yleisen karanteenin vuoksi monien yritysten ainoa tapa jatkaa työskentelyä on etäyhteys työpaikoille Internetin kautta. Etätyöskentelyyn on monia suhteellisen turvallisia menetelmiä – mutta ongelman laajuuden vuoksi tarvitaan yksinkertainen tapa, jolla kuka tahansa käyttäjä voi ottaa etäyhteyden toimistoon ilman lisäasetuksia, selityksiä, tylsiä konsultaatioita ja pitkiä ohjeita. Tätä menetelmää rakastavat monet järjestelmänvalvojat RDP (Remote Desktop Protocol). Yhteyden muodostaminen suoraan työpaikalle RDP:n kautta ihanteellisesti ratkaisee ongelmamme, paitsi yksi iso kärpäs - RDP-portin pitäminen auki Internetiä varten on erittäin vaarallista. Siksi ehdotan alla yksinkertaista mutta luotettavaa suojausmenetelmää.Etätyö toimistossa. RDP, Port Knocking, Mikrotik: yksinkertainen ja turvallinen

Koska törmännyt usein pieniin organisaatioihin, joissa Mikrotik-laitteita käytetään Internet-yhteyksinä, niin alla kerrotaan kuinka tämä toteutetaan Mikrotikissa, mutta Port Knocking -suojausmenetelmä on helppo toteuttaa muihin korkealuokkaisiin laitteisiin, joissa on samanlaiset tuloreitittimen asetukset ja palomuuri. .

Lyhyesti Port Knockingista. Ihanteellinen Internetiin yhdistetyn verkon ulkoinen suojaus on, kun kaikki resurssit ja portit suljetaan ulkopuolelta palomuurilla. Ja vaikka tällaisella konfiguroidulla palomuurilla varustettu reititin ei reagoi millään tavalla ulkopuolelta tuleviin paketteihin, se kuuntelee niitä. Siksi voit määrittää reitittimen niin, että kun tietty (koodi)sarja verkkopaketteja vastaanotetaan eri porteissa, se (reititin) katkaisee pääsyn tiettyihin resursseihin (portit, protokollat, jne.).

Nyt bisnestä. En tee yksityiskohtaista kuvausta Mikrotikin palomuurin asetuksista - Internet on täynnä korkealaatuisia lähteitä tätä varten. Ihannetapauksessa palomuuri estää kaikki saapuvat paketit, mutta

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

Sallii saapuvan liikenteen muodostetuista, liittyvistä yhteyksistä.
Nyt määritimme Port Knockingin Mikrotikissa:

/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

Nyt tarkemmin:

kaksi ensimmäistä sääntöä

/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

estää saapuvat paketit IP-osoitteista, jotka on mustalla listalla portin tarkistuksen aikana;

Kolmas sääntö:

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

lisää ip:n niiden isäntien luetteloon, jotka tekivät oikean ensimmäisen koputuksen oikeaan porttiin (19000);
Seuraavat neljä sääntöä ovat:

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

luo trap-portteja niille, jotka haluavat skannata porttejasi, ja jos tällaisia ​​yrityksiä havaitaan, lisää heidän IP-osoitteensa mustalle listalle 60 minuutiksi, jonka aikana kaksi ensimmäistä sääntöä eivät anna tällaisille isännille mahdollisuutta koputtaa oikeita portteja;

Seuraava sääntö:

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

laittaa ip:n sallittujen luetteloon 1 minuutiksi (riittää yhteyden muodostamiseen), koska toinen oikea koputus tehtiin haluttuun porttiin (16000);

Seuraava komento:

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

siirtää sääntöjämme ylöspäin palomuurin käsittelyketjussa, koska todennäköisesti meillä on jo määritetty erilaisia ​​estosääntöjä, jotka estävät äskettäin luotuja sääntöjämme toimimasta. Ensimmäinen sääntö Mikrotikissa alkaa nollasta, mutta laitteellani nolla oli sisäänrakennetun säännön varassa, eikä sitä ollut mahdollista siirtää - siirsin sen kohtaan 1. Siksi katsomme asetuksiamme - minne voit siirtää sen ja osoita haluamasi numero.

Seuraava asetus:

/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

välittää mielivaltaisesti valitun portin 33890 tavalliseen RDP-porttiin 3389 ja tarvitsemamme tietokoneen tai päätepalvelimen IP-osoitteeseen. Luomme tällaiset säännöt kaikille tarvittaville sisäisille resursseille, mieluiten asettamalla standardista poikkeavat (ja erilaiset) ulkoiset portit. Luonnollisesti sisäisten resurssien IP:n on oltava joko staattinen tai kiinteä DHCP-palvelimella.

Nyt Mikrotikimme on määritetty ja tarvitsemme yksinkertaisen menettelyn, jotta käyttäjä voi muodostaa yhteyden sisäiseen RDP:hen. Koska meillä on pääasiassa Windows-käyttäjiä, luomme yksinkertaisen bat-tiedoston ja annamme sille nimeksi StartRDP.bat:

1.htm
1.rdp

vastaavasti 1.htm sisältää seuraavan koodin:

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

se sisältää kaksi linkkiä kuvitteellisiin kuviin, jotka sijaitsevat osoitteessa my_router.sn.mynetname.net - otamme tämän osoitteen Mikrotik DDNS -järjestelmästä sen jälkeen, kun se on otettu käyttöön Mikrotikissamme: mene IP-> Cloud -valikkoon - valitse DDNS Enabled -valintaruutu, napsauta Käytä ja kopioi reitittimemme dns-nimi. Mutta tämä on tarpeen vain, kun reitittimen ulkoinen IP on dynaaminen tai käytetään useiden Internet-palveluntarjoajien kokoonpanoa.

Ensimmäisen linkin portti: 19000 vastaa ensimmäistä porttia, johon sinun täytyy koputtaa, toisessa vastaavasti toista. Linkkien välissä on lyhyt ohje, joka kertoo, mitä tehdä, jos yhteytemme yhtäkkiä katkeaa lyhyiden verkko-ongelmien vuoksi - päivitämme sivun, RDP-portti avautuu meille uudelleen 1 minuutiksi ja istuntomme palautuu. Myös img-tunnisteiden välissä oleva teksti muodostaa selaimelle mikroviiveen, mikä vähentää todennäköisyyttä, että ensimmäinen paketti toimitetaan toiseen porttiin (16000) - toistaiseksi tällaisia ​​tapauksia ei ole ollut kahden viikon käytön aikana (30 ihmiset).

Seuraavaksi tulee 1.rdp-tiedosto, jonka voimme määrittää kaikille tai erikseen kullekin käyttäjälle (tein näin - on helpompi viettää ylimääräiset 15 minuuttia kuin muutama tunti neuvotellen niitä, jotka eivät ymmärtäneet sitä)

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

mielenkiintoisista asetuksista tässä on use multimon: i: 1 - tämä sisältää useiden näyttöjen käytön - jotkut tarvitsevat tätä, mutta he eivät itse ajattele käynnistävänsä sitä.

yhteystyyppi: i: 6 ja verkon automaattinen tunnistus: i: 0 - koska suurin osa Internetistä on yli 10 Mbps, ota yhteystyyppi 6 käyttöön (paikallinen verkko 10 Mbps ja enemmän) ja kytke verkon automaattinen tunnistus pois päältä, koska jos oletuksena (auto) , silloin jopa harvinainen pieni verkkoviive asettaa istuntomme automaattisesti hitaalle nopeudelle pitkäksi aikaa, mikä voi aiheuttaa huomattavia viiveitä töissä, etenkin grafiikkaohjelmissa.

poista taustakuva käytöstä: i: 1 - poista työpöydän kuva käytöstä
username:s:myuserlogin - määritämme käyttäjätunnuksen, koska merkittävä osa käyttäjistämme ei tiedä kirjautumistaan
domain:s:mydomain - määritä verkkotunnus tai tietokoneen nimi

Mutta jos haluamme yksinkertaistaa tehtäväämme luoda yhteysmenettely, voimme käyttää myös PowerShellia - 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

Myös vähän RDP-asiakkaasta Windowsissa: MS on kulkenut pitkän tien optimoidessaan protokollaa ja sen palvelin- ja asiakasosia, on ottanut käyttöön monia hyödyllisiä ominaisuuksia - kuten laitteiston 3D-työskentelyn, näytön tarkkuuden optimoinnin näytölle, moninäyttöön, ja niin edelleen. Mutta tietysti kaikki toteutetaan taaksepäin yhteensopivuustilassa, ja jos asiakas on Windows 7 ja etätietokone on Windows 10, RDP toimii protokollaversiolla 7.0. Mutta etuna on, että voit päivittää RDP-versiot uudempiin versioihin - voit esimerkiksi päivittää protokollaversion 7.0:sta (Windows 7) 8.1:een. Siksi asiakkaiden mukavuuden vuoksi on tarpeen lisätä palvelinosan versioita niin paljon kuin mahdollista sekä pudottaa linkkejä uusiin RDP-protokollaasiakkaiden versioihin päivittämiseksi.

Tämän seurauksena meillä on yksinkertainen ja suhteellisen turvallinen tekniikka etäyhteyden muodostamiseen toimivaan tietokoneeseen tai päätepalvelimeen. Mutta turvallisemman yhteyden vuoksi Port Knocking -menetelmäämme voidaan vaikeuttaa useilla suuruusluokilla lisäämällä portteja tarkistettavaksi - voit lisätä 3,4,5,6 ... portin saman logiikan mukaan , ja tässä tapauksessa suora tunkeutuminen verkkoosi on lähes mahdotonta.

Tyhjät tiedostot etäyhteyden luomiseksi RDP:hen.

Lähde: will.com

Lisää kommentti