オフィスでのリモヌトワヌク。 RDP、ポヌトノッキング、Mikrotik: シンプルで安党

新型コロナりむルス感染症のパンデミックず倚くの囜での䞀般的な隔離のため、倚くの䌁業が業務を継続する唯䞀の方法は、むンタヌネットを介しお職堎にリモヌトアクセスするこずです。 リモヌトワヌクのための比范的安党な方法は数倚くありたすが、問題の芏暡を考えるず、远加の蚭定、説明、面倒な盞談や長い指瀺を必芁ずせず、あらゆるナヌザヌがオフィスにリモヌト接続できる簡単な方法が必芁です。 この方法は、倚くの管理者に愛甚されおいる RDP (リモヌト デスクトップ プロトコル) です。 RDP 経由で職堎に盎接接続するこずで、問題を理想的に解決できたす。䟋倖は、19 匹の倧きなパです。むンタヌネット甚に RDP ポヌトを開いたたたにしおおくのは、非垞に危険です。 したがっお、以䞋では、シンプルだが信頌性の高い保護方法を提案したす。オフィスでのリモヌトワヌク。 RDP、ポヌトノッキング、Mikrotik: シンプルで安党

Mikrotik デバむスがむンタヌネット アクセスずしお䜿甚されおいる小芏暡な組織によく遭遇するため、以䞋では Mikrotik でこれを実装する方法を瀺したすが、ポヌト ノッキング保護方法は、同様の入力ルヌタヌ蚭定ずファむアりォヌルを備えた他の䞊䜍クラスのデバむスでも簡単に実装できたす。 。

ポヌトノッキングに぀いお簡単に説明したす。 むンタヌネットに接続されたネットワヌクの理想的な倖郚保護は、すべおのリ゜ヌスずポヌトがファむアりォヌルによっお倖郚から閉じられるこずです。 このように構成されたファむアりォヌルを備えたルヌタヌは、倖郚からのパケットには䞀切反応したせんが、パケットをリッスンしたす。 したがっお、ネットワヌク パケットの特定の (コヌド) シヌケンスが別のポヌトで受信されたずきに、パケットの送信元の IP に察しおルヌタヌ (ルヌタヌ) が特定のリ゜ヌス (ポヌト、プロトコル、等。。

さおビゞネスです。 Mikrotik のファむアりォヌル蚭定に぀いおは詳しく説明したせん。むンタヌネットには、これに関する高品質の゜ヌスがたくさんありたす。 理想的には、ファむアりォヌルはすべおの受信パケットをブロックしたすが、

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

確立された関連接続からの受信トラフィックを蚱可したす。
次に、Mikrotik でポヌト ノッキングを蚭定したす。

/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

より詳现に

最初の XNUMX ぀のルヌル

/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 アドレスからの受信パケットを犁止したす。

XNUMX番目のルヌル

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

正しいポヌト (19000) で正しい最初のノックを行ったホストのリストに ip を远加したす。
次の XNUMX ぀のルヌルは次のずおりです。

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 分間ブラックリストに登録したす。その間、最初の XNUMX ぀のルヌルはそのようなホストに正しいポヌトをノックオンする機䌚を䞎えたせん。

次のルヌル:

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

1 番目の正しいノックが目的のポヌト (16000) で行われたため、ip を蚱可リストに XNUMX 分間 (接続を確立するのに十分な時間) 远加したす。

次のコマンド:

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

ルヌルをファむアりォヌルの凊理チェヌンの䞊流に移動したす。これは、新しく䜜成したルヌルが機胜しないように、すでに別の拒吊ルヌルが蚭定されおいる可胜性が高いためです。 Mikrotik の最初のルヌルは 1 から始たりたすが、私のデバむスでは XNUMX は組み蟌みルヌルによっお占有されおおり、移動するこずは䞍可胜でした。私はそれを XNUMX に移動したした。そのため、蚭定を確認したす。どこに移動できるかです。垌望の番号を指定したす。

次の蚭定:

/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 ナヌザヌがいるため、単玔なバット ファむルを䜜成し、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 にある架空の写真ぞの XNUMX ぀のリンクが含たれおいたす。このアドレスは、Mikrotik で有効にした埌、Mikrotik DDNS システムから取埗したす。[IP] -> [Cloud] メニュヌに移動し、[DDNS Enabled] チェックボックスをオンにしたす。 [適甚] をクリックし、ルヌタヌの DNS 名をコピヌしたす。 ただし、これが必芁になるのは、ルヌタヌの倖郚 IP が動的であるか、耇数のむンタヌネットプロバむダヌによる構成が䜿甚されおいる堎合のみです。

最初のリンクのポヌト 19000 は、ノックする必芁がある最初のポヌトに察応し、1 番目のポヌトは 16000 番目のポヌトにそれぞれ察応したす。 リンクの間には、短いネットワヌクの問題により接続が突然䞭断された堎合の察凊法を瀺す短い説明がありたす。ペヌゞを曎新するず、RDP ポヌトが 30 分間再び開き、セッションが埩元されたす。 たた、img タグ間のテキストはブラりザにずっおマむクロ遅延を圢成し、最初のパケットが XNUMX 番目のポヌト (XNUMX) に配信される可胜性が䜎くなりたす。これたでのずころ、XNUMX 週間の䜿甚でそのようなケヌスはありたせん (XNUMX)人々。

次に 1.rdp ファむルが来たす。これは、すべおのナヌザヌに察しお 15 ぀を構成するこずも、各ナヌザヌに察しお個別に構成するこずもできたす (私はこれを行いたした。理解できない人に数時間盞談するより、远加で XNUMX 分を費やすほうが簡単です)

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

ここでの興味深い蚭定は、 use multimon: i: 1 です。これには耇数のモニタヌの䜿甚が含たれたす。これを必芁ずする人もいたすが、圌ら自身はそれをオンにするこずを考えおいたせん。

接続タむプ: i: 6 および networkautodetect: i: 0 - むンタヌネットの倧郚分が 10 Mbps 以䞊であるため、接続タむプ 6 (ロヌカル ネットワヌク 10 Mbps 以䞊) をオンにし、デフォルト (自動) の堎合は networkautodetect をオフにしたす。堎合、たれに小さなネットワヌク遅延が発生した堎合でも、セッションが自動的に長時間䜎速に蚭定され、特にグラフィックス プログラムで䜜業に顕著な遅延が発生する可胜性がありたす。

壁玙を無効にする: 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 でリモヌト PC が Windows 10 の堎合、RDP はプロトコル バヌゞョン 7.0 を䜿甚しお機胜したす。 ただし、RDP バヌゞョンをより新しいバヌゞョンに曎新できるずいう利点がありたす。たずえば、プロトコル バヌゞョンを 7.0 (Windows 7) から 8.1 にアップグレヌドできたす。 したがっお、クラむアントの利䟿性を考慮しお、サヌバヌ郚分のバヌゞョンをできるだけ高めるずずもに、リンクをドロップしお新しいバヌゞョンの RDP プロトコル クラむアントにアップグレヌドする必芁がありたす。

その結果、皌働䞭の PC たたはタヌミナル サヌバヌにリモヌト接続するための、シンプルで比范的安党なテクノロゞが埗られたした。 しかし、より安党な接続を実珟するには、チェックするポヌトを远加するこずで、ポヌト ノッキング手法を数桁攻撃しにくくするこずができたす。同じロゞックに埓っお 3,4,5,6、XNUMX、XNUMX、XNUMX ... ポヌトを远加するこずもできたす。この堎合、ネットワヌクぞの盎接䟵入はほが䞍可胜になりたす。

RDP ぞのリモヌト接続を䜜成するための空のファむル.

出所 habr.com

コメントを远加したす