Кеңседе қашықтан жұмыс. RDP, Port Knocking, Mikrotik: қарапайым және қауіпсіз

Ковид-19 вирусының пандемиясына және көптеген елдердегі жалпы карантинге байланысты көптеген компаниялардың жұмысын жалғастырудың жалғыз жолы - Интернет арқылы жұмыс орындарына қашықтан қол жеткізу. Қашықтан жұмыс істеудің салыстырмалы түрде қауіпсіз әдістері көп, бірақ мәселенің ауқымын ескере отырып, кез келген пайдаланушыға кеңсеге қашықтан және қосымша параметрлерді, түсініктемелерді, жалықтыратын кеңестерді және ұзақ уақыт қосылуды қажет етпейтін қарапайым әдіс қажет. нұсқаулар. Бұл әдісті көптеген әкімшілер жақсы көреді RDP (Қашықтағы жұмыс үстелі протоколы). RDP арқылы жұмыс станциясына тікелей қосылу біздің мәселемізді өте жақсы шешеді, тек бір үлкен шыбыннан басқа - RDP портын Интернет үшін ашық ұстау өте қауіпті. Сондықтан төменде мен қарапайым, бірақ сенімді қорғау әдісін ұсынамын.Кеңседе қашықтан жұмыс. RDP, Port Knocking, Mikrotik: қарапайым және қауіпсіз

Мен Микротик құрылғылары Интернет қосылымы ретінде пайдаланылатын шағын ұйымдарды жиі кездестіретіндіктен, төменде мен мұны Mikrotik-те қалай жүзеге асыру керектігін көрсетемін, бірақ Портты соғудан қорғау әдісін енгізу маршрутизаторы ұқсас параметрлері бар басқа жоғары сыныпты құрылғыларда оңай жүзеге асырылуы мүмкін. брандмауэр

Порт қағу туралы қысқаша. Интернетке қосылған желінің тамаша сыртқы қорғанысы барлық ресурстар мен порттар сырттан брандмауэр арқылы жабылған кезде болады. Мұндай конфигурацияланған брандмауэрі бар маршрутизатор сырттан келетін пакеттерге ешқандай әсер етпесе де, оларды тыңдайды. Сондықтан маршрутизаторды конфигурациялауға болады, ол әртүрлі порттарда желілік пакеттердің белгілі (код) тізбегін алған кезде, ол (маршрутизатор) пакеттер келген жерден IP үшін белгілі бір ресурстарға (порттарға, хаттамаларға және т. .).

Енді нүктеге. Микротикте брандмауэр орнатудың егжей-тегжейлі сипаттамасын бермеймін - Интернет бұл үшін сапалы көздерге толы. Ең дұрысы брандмауэр барлық кіріс пакеттерді блоктайды, бірақ

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

Орнатылған (орнатылған, байланысты) қосылымдардан кіріс трафикке рұқсат береді.
Енді біз Mikrotik-те Port Knocking параметрін конфигурациялаймыз:

/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

Енді қосымша мәлімет алу үшін:

алғашқы екі ереже

/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

портты сканерлеу кезінде қара тізімге енгізілген IP мекенжайларынан кіріс пакеттеріне тыйым салу;

Үшінші ереже:

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

қалаған портқа бірінші рет дұрыс соққы жасаған хосттар тізіміне ip қосады (19000);
Келесі төрт ереже:

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

порттарыңызды сканерлеуді қалайтындар үшін трап порттарын жасаңыз және мұндай әрекеттер анықталған кезде олар өздерінің IP-терін 60 минутқа қара тізімге енгізеді, оның барысында алғашқы екі ереже мұндай хосттарға дұрыс порттарды соғуға мүмкіндік бермейді;

Келесі ереже:

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

IP-ді рұқсат етілгендер тізіміне 1 минутқа қояды (байланыс орнату үшін жеткілікті), өйткені екінші дұрыс соғу қажетті портта (16000) жасалады;

Келесі пәрмен:

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

ережелерімізді брандмауэрді өңдеу тізбегіне жылжытады, өйткені бізде жаңадан жасалғандардың жұмыс істеуіне кедергі болатын конфигурацияланған әртүрлі тыйым салу ережелері болуы мүмкін. Микротиктегі ең бірінші ереже нөлден басталады, бірақ менің құрылғымда нөлді кіріктірілген ереже алған және оны жылжыту мүмкін болмады - мен оны 1-ге жылжыттым. Сондықтан біз параметрлерімізді қараймыз - оны қайда жылжытуға болады және қажетті санды көрсетіңіз.

Келесі параметр:

/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

кездейсоқ таңдалған 33890 портын кәдімгі RDP 3389 портына және бізге қажет компьютердің немесе терминал серверінің IP мекенжайына жібереді. Біз барлық қажетті ішкі ресурстар үшін осындай ережелерді жасаймыз, жақсырақ стандартты емес (және әртүрлі) сыртқы порттарды орнатамыз. Әрине, ішкі ресурстардың IP мекенжайы статикалық немесе DHCP серверіне тағайындалған болуы керек.

Енді біздің Mikrotik конфигурацияланды және бізге ішкі RDP-ге қосылу үшін пайдаланушыға оңай процедура қажет. Бізде негізінен Windows пайдаланушылары болғандықтан, біз қарапайым bat файлын жасаймыз және оны StartRDP.bat деп атаймыз:

1.htm
1.rdp

сәйкес 1.htm келесі кодты қамтиды:

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

мұнда my_router.sn.mynetname.net мекенжайында орналасқан ойдан шығарылған суреттерге екі сілтеме бар - біз бұл мекенжайды Mikrotik DDNS жүйесінен оны Микротикте қосқаннан кейін аламыз: IP->Бұлттық мәзірге өтіңіз - DDNS Қосылғанын тексеріңіз. өрісінде Қолдану түймесін басып, маршрутизаторымыздың DNS атауын көшіріңіз. Бірақ бұл маршрутизатордың сыртқы IP динамикалық болғанда немесе бірнеше Интернет провайдерлері бар конфигурация пайдаланылғанда ғана қажет.

Бірінші сілтемедегі порт: 19000 сіз соғу керек бірінші портқа сәйкес келеді, екіншісінде ол екіншісіне сәйкес келеді. Сілтемелер арасында қысқа желі ақауларына байланысты кенеттен қосылым үзілген жағдайда не істеу керектігін көрсететін қысқа нұсқау бар - біз бетті жаңартамыз, RDP порты біз үшін 1 минутқа қайта ашылды және сессиямыз қалпына келтірілді. Сондай-ақ, img тегтері арасындағы мәтін браузер үшін микро-кідіріс жасайды, бұл бірінші пакеттің екінші портқа (16000) жеткізілу ықтималдығын азайтады - осы уақытқа дейін пайдаланудың екі аптасында мұндай жағдайлар болған жоқ (30 адамдар).

Әрі қарай 1.rdp файлы келеді, біз оны барлығына немесе әр пайдаланушыға бөлек конфигурациялай аламыз (мен осылай жасадым - түсінбегендермен бірнеше сағат кеңес бергеннен гөрі қосымша 15 минут жұмсау оңайырақ)

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

Мұнда қызықты параметрлердің бірі - multimon:i:1 пайдалану - бұл бірнеше мониторларды пайдалануды қамтиды - кейбір адамдарға бұл қажет, бірақ олар оны өздері қосуды ойламайды.

қосылым түрі:i:6 және networkautodetect:i:0 - Интернеттің басым бөлігі 10 Мбит жоғары болғандықтан, 6 қосылым түрін қосыңыз (жергілікті желі 10 Мбит және одан жоғары) және желіні автоматты анықтауды өшіріңіз, өйткені әдепкі параметр (автоматты) болса, содан кейін тіпті сирек кездесетін кішігірім Желілік кідіріс біздің сеансымыздың жылдамдығын ұзақ уақыт бойы төменірек жылдамдыққа автоматты түрде орнатады, бұл жұмыста, әсіресе графикалық бағдарламаларда айтарлықтай кідірістерді тудыруы мүмкін.

өшіру тұсқағаз:i:1 - жұмыс үстелі суретін өшіру
username:s:myuserlogin - біз пайдаланушы логинін көрсетеміз, өйткені біздің пайдаланушыларымыздың едәуір бөлігі өздерінің логинін білмейді.
domain:s:mydomain – доменді немесе компьютер атауын көрсетіңіз

Бірақ қосылым процедурасын жасау тапсырмасын жеңілдеткіміз келсе, PowerShell - 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

Сондай-ақ Windows жүйесіндегі RDP клиенті туралы аздап: MS протоколды және оның сервері мен клиент бөліктерін оңтайландыруда ұзақ жолдан өтті, көптеген пайдалы мүмкіндіктерді енгізді - 3D аппараттық құралдарымен жұмыс істеу, мониторыңыздың экран ажыратымдылығын оңтайландыру, көп экран, т.б. Бірақ, әрине, бәрі кері үйлесімділік режимінде жүзеге асырылады және егер клиент Windows 7 болса және қашықтағы компьютер Windows 10 болса, RDP протоколының 7.0 нұсқасы арқылы жұмыс істейді. Бақытымызға орай, RDP нұсқаларын неғұрлым соңғы нұсқаларға жаңартуға болады - мысалы, протокол нұсқасын 7.0 (Windows 7) нұсқасынан 8.1 нұсқасына дейін жаңартуға болады. Сондықтан, клиенттерге ыңғайлы болу үшін сервер бөлігінің нұсқаларын барынша ұлғайту керек, сонымен қатар RDP протоколының клиенттерінің жаңа нұсқаларына жаңарту үшін сілтемелер беру керек.

Нәтижесінде бізде жұмыс компьютеріне немесе терминал серверіне қашықтан қосылудың қарапайым және салыстырмалы түрде қауіпсіз технологиясы бар. Бірақ қауіпсіз қосылым үшін біздің Port Knocking әдісін тексеру үшін порттарды қосу арқылы бірнеше дәрежелі шабуыл жасау қиындатылуы мүмкін - сол логиканы пайдалана отырып, сіз 3,4,5,6... портты және бұл жағдайда желіге тікелей кіру мүмкін болмайды.

RDP-ге қашықтағы қосылымды құруға арналған файлды дайындау.

Ақпарат көзі: www.habr.com

пікір қалдыру