Am un server în rețeaua mea pe care vreau să-l expun la conexiuni SSH externe. Pot trimite ssh direct pe dispozitiv din rețeaua mea (de ex. ssh 192.168.88.162
Merge bine).Am o regulă NAT configurată, astfel încât conexiunile la 17722 să fie redirecționate la 22. Cu toate acestea, aceasta nu reușește:
PS C:\Users\Me> ssh -vvv -i .\.ssh\id_rsa -p 17722 [email protected]
OpenSSH_for_Windows_8.1p1, LibreSSL 3.0.2
debug1: Citirea datelor de configurare C:\Users\Me/.ssh/config
debug3: Eroare la deschiderea fișierului: C:/ProgramData/ssh/ssh_config: 2
debug2: resolve_canonicalize: numele de gazdă 160.119.XXX.XXX este adresa
debug2: ssh_connect_direct
depanare1: se conectează la portul 160.119.XXX.XXX [160.119.XXX.XXX] 17722.
debug3: finish_connect - EROARE: asincron io finalizat cu eroare: 10060, io:00000222C310DC10
depanare1: conectați-vă la adresa 160.119.XXX.XXX portul 17722: conexiune a expirat
ssh: conectați-vă la gazda 160.119.XXX.XXX portul 17722: conexiune a expirat
Cum pot obține ssh-ul de la IP-ul extern de lucru?
tcpdump pe server arată:
eu@JanJansen:~ $ grep 64236 tcpdump
22:13:56.097727 IP 192.168.88.177.64236 > 192.168.88.162.ssh: steaguri [S], seq 3490646443, win 64240, opțiuni [mss 88.162.ssh, nock 1460psa, lungime
22:13:56.098213 IP 192.168.88.162.ssh > 192.168.88.177.64236: Flags [S.], seq 869880002, ack 3490646444, win, options, options, 640pss640s, 649880002 [S.] lungime 0
22:13:57.105046 IP 192.168.88.177.64236 > 192.168.88.162.ssh: Flags [S], seq 3490646443, win 64240, options [mss 88.162.ssh, no 146psa, nockpsa, 1460psa]
22:13:57.105398 IP 192.168.88.162.ssh > 192.168.88.177.64236: Flags [S.], seq 869880002, ack 3490646444, win, options, options, 640pss640s, 649880002 [S.] lungime 0
22:13:58.162258 IP 192.168.88.162.ssh > 192.168.88.177.64236: Flags [S.], seq 869880002, ack 3490646444, win, options, options, 640pss640s, 649880002 [S.] lungime 0
22:13:59.117541 IP 192.168.88.177.64236 > 192.168.88.162.ssh: steaguri [S], seq 3490646443, win 64240, opțiuni [mss 88.162.ssh, nock 1460psa, lungime
22:13:59.117912 IP 192.168.88.162.ssh > 192.168.88.177.64236: Flags [S.], seq 869880002, ack 3490646444, win, options, options, 640pss640s, 649880002 [S.] lungime 0
22:14:01.122237 IP 192.168.88.162.ssh > 192.168.88.177.64236: Flags [S.], seq 869880002, ack 3490646444, win, options, options 640psa240s, OK 649880002 [S.] lungime 0
În comparație cu un ssh local care are multe [P] steaguri, nu [S], care este cea mai mare diferență pe care o văd, dar nu am idee cum să acționez în acest sens.
Pentru cât valorează, pot vedea regulile NAT în vigoare. Iată configurația routerului:
# oct/04/2021 23:17:07 de RouterOS 6.47.4
# ID software = VBLW-UG4R
#
# model = 951Ui-2HnD
# număr de serie = B8710C65021A
/ punte de interfață
adăugați admin-mac=48:8F:5A:79:92:71 auto-mac=fără comentariu=defconf name=bridge
/interfață fără fir
set [ find default-name=wlan1 ] mode=ap-bridge ssid=MikroTik wireless-protocol=802.11
/interfață pppoe-client
adăugați add-default-route=da dezactivat=fără interfață=ether5 nume=pppoe-out1 use-peer-dns=da [email protected]
/listă de interfețe
adăugați comentariu=defconf nume=WAN
adăugați comentariu=defconf nume=LAN
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
adăugați nume=dhcp range=192.168.88.10-192.168.88.254
/ip dhcp-server
adăugați pool-adresă=dhcp dezactivat=fără interfață=timp de închiriere pod=12h nume=defconf
/port bridge interfață
adăugați bridge=bridge comment=defconf interfață=ether2
adăugați bridge=bridge comment=defconf interfață=ether3
adăugați bridge=bridge comment=defconf interfață=ether4
adăugați bridge=bridge comment=defconf interfață=wlan1
setări de descoperire a vecinului /ip
setați discover-interface-list=LAN
/membru din lista interfeței
adauga comentariu=defconf interfata=lista de poduri=LAN
adăugați comentariu=defconf interfață=ether1 list=WAN
add interface=pppoe-out1 list=WAN
/adresa IP
adăugați adresa=192.168.88.1/24 comment=defconf interfață=ether2 network=192.168.88.0
/ip arp
adăugați adresa=192.168.88.162 comentariu=Interfață JanJansen=adresa mac-bridge=00:0F:13:39:20:33
adauga adresa=192.168.88.177 comment=Sarevok interfata=bridge mac-address=40:8D:5C:58:C0:97
adăugați adresa=192.168.88.202 interface=bridge mac-address=32:63:2A:49:58:D9
adăugați adresa=192.168.88.101 interface=bridge mac-address=18:56:80:24:47:12
/ip nor
setați ddns-enabled=da
/ip dhcp-client
adăugați comentariu=defconf interfață=ether1
/ip dhcp-server de rețea
adăugați adresa=192.168.88.0/24 comment=defconf gateway=192.168.88.1
/ip dns
setați allow-remote-requests=da
/ip dns static
adauga adresa=192.168.88.1 comment=defconf nume=router.lan
filtru firewall /ip
add action=accept chain=input comment="defconf: accept stabilit,related,untracked" connection-state=stabilit,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid
add action=accept chain=input comment="defconf: accept ICMP" protocol=icmp
add action=accept chain=input comment="defconf: accept la loopback local (pentru CAPsMAN)" dst-address=127.0.0.1
add action=drop chain=input comment="defconf: drop all not vining from LAN" in-interface-list=!LAN
add action=accept chain=forward comment="defconf: accept in ipsec policy" ipsec-policy=in,ipsec
add action=accept chain=forward comment="defconf: acceptați politica ipsec" ipsec-policy=out,ipsec
add action=fasttrack-connection chain=forward comment="defconf: fasttrack" connection-state=stabilit,related
add action=accept chain=forward comment="defconf: accept stabilit,related, untracked" connection-state=stabilited,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid
add action=drop chain=forward comment="defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat connection-state=new in-interface-list=WAN
add action=accept chain=forward comment="Outside SSH" dst-port=22 log=yes protocol=tcp
/ip firewall nat
add action=masquerade chain=srcnat comment="defconf: masquerade" ipsec-policy=out,none out-interface-list=WAN
adăugați acțiune=dst-nat lanț=dstnat comentariu=JanJansen dst-port=17722 in-interface=bridge log=da protocol=tcp to-addresses=192.168.88.162 to-ports=22
/ipv6 firewall listă de adrese
adauga adresa=::/128 comment="defconf: adresa nespecificata" list=bad_ipv6
adauga adresa=::1/128 comment="defconf: lo" list=bad_ipv6
adăugați adresa=fec0::/10 comment="defconf: site-local" list=bad_ipv6
adăugați adresa=::ffff:0.0.0.0/96 comment="defconf: ipv4-mapped" list=bad_ipv6
adauga adresa=::/96 comment="defconf: ipv4 compat" list=bad_ipv6
adăugați adresa=100::/64 comment="defconf: aruncați numai " list=bad_ipv6
adăugați adresa=2001:db8::/32 comment="defconf: documentation" list=bad_ipv6
adauga adresa=2001:10::/28 comment="defconf: ORCHID" list=bad_ipv6
adăugați adresa=3ffe::/16 comment="defconf: 6bone" list=bad_ipv6
adauga adresa=::224.0.0.0/100 comment="defconf: other" list=bad_ipv6
adauga adresa=::127.0.0.0/104 comment="defconf: other" list=bad_ipv6
adăugați adresa=::/104 comment="defconf: other" list=bad_ipv6
adauga adresa=::255.0.0.0/104 comment="defconf: other" list=bad_ipv6
filtru firewall /ipv6
add action=accept chain=input comment="defconf: accept stabilit,related,untracked" connection-state=stabilit,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid
add action=accept chain=input comment="defconf: accept ICMPv6" protocol=icmpv6
add action=accept chain=input comment="defconf: accept UDP traceroute" port=33434-33534 protocol=udp
add action=accept chain=input comment="defconf: accept DHCPv6-Client prefix delegation." dst-port=546 protocol=udp src-address=fe80::/10
add action=accept chain=input comment="defconf: accept IKE" dst-port=500,4500 protocol=udp
adaugă acțiune=accept lanț=input comment="defconf: accept ipsec AH" protocol=ipsec-ah
add action=accept chain=input comment="defconf: accept ipsec ESP" protocol=ipsec-esp
add action=accept chain=input comment="defconf: acceptați tot ce se potrivește cu politica ipsec" ipsec-policy=in,ipsec
add action=drop chain=input comment="defconf: aruncați tot ce nu provine din LAN" în-interfață-list=!LAN
add action=accept chain=forward comment="defconf: accept stabilit,related,untracked" connection-state=stabilited,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid
add action=drop chain=forward comment="defconf: drop packets with src ipv6" src-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: drop packets with bad dst ipv6" dst-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: rfc4890 drop hop-limit=1" hop-limit=equal:1 protocol=icmpv6
add action=accept chain=forward comment="defconf: accept ICMPv6" protocol=icmpv6
add action=accept chain=forward comment="defconf: accept HIP" protocol=139
add action=accept chain=forward comment="defconf: accept IKE" dst-port=500,4500 protocol=udp
adăugați acțiune=acceptați lanț=forward comment="defconf: accept ipsec AH" protocol=ipsec-ah
add action=accept chain=forward comment="defconf: accept ipsec ESP" protocol=ipsec-esp
add action=accept chain=forward comment="defconf: acceptați tot ce se potrivește cu politica ipsec" ipsec-policy=in,ipsec
add action=drop chain=forward comment="defconf: renunțați la tot ce nu provine din LAN" in-interface-list=!LAN
/ceasul de sistem
set time-zone-name=Africa/Johannesburg
/tool mac-server
setați allow-interface-list=LAN
/tool mac-server mac-winbox
setați allow-interface-list=LAN