SSH connection fails over vpn

Hi,

I can not connect via ssh over the vpn connection before I'm not connected to the web interface.

Hardware: Raspberry PI
Firmware: OpenWrt SNAPSHOT, r16585+131-182eaa4916

  1. I checked the vpn connection via ping: result - ok
  2. Connect via ssh: result - failed
    Last log entrie: authpriv.info dropbear[2357]: Child connection from 172.18.0.181:60980

If I connect to the web interface of the modul and than via ssh (both connection over the vpn connection): I get the login info and everything works fine.

Last log entries:
Wed May 12 20:46:17 2021 authpriv.info dropbear[2556]: Child connection from 172.18.0.181:61136
Wed May 12 20:46:22 2021 authpriv.notice dropbear[2556]: Password auth succeeded for 'root' from 172.18.0.181:61136

Has anyone a good idea?

Best regards
Martin

Please run the following commands (copy-paste the whole block) and paste the output here, using the "Preformatted text </> " button:
grafik
Remember to redact passwords, MAC addresses and any public IP addresses you may have

ubus call system board; \
uci export network; uci export dropbear; uci export firewall; \
head -n -0 /etc/firewall.user; \
iptables-save -c; \
ip -4 addr ; ip -4 ro li tab all ; ip -4 ru
1 Like

Hi Trendy,

I make the output two times. One time before I connected to the web interface (ssh was not working) and one time after I connected to the web interface (ssh was working) All connection over the vpn tunnel. Then I compared both otutpus. Result: both are the same.

Before I connected to the webinterface (ssh didn't work):

{
        "kernel": "5.4.117",
        "hostname": "pi-cam-01",
        "system": "ARMv8 Processor rev 3",
        "model": "Raspberry Pi Compute Module 4 Rev 1.0",
        "board_name": "raspberrypi,4-compute-module",
        "release": {
                "distribution": "OpenWrt",
                "version": "SNAPSHOT",
                "revision": "r16585+131-182eaa4916",
                "target": "bcm27xx/bcm2711",
                "description": "OpenWrt SNAPSHOT r16585+131-182eaa4916"
        }
}
package network

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config interface 'lan'
        option proto 'static'
        option dns '8.8.8.8'
        option netmask '255.255.255.0'
        option ipaddr '10.81.1.1'
        option delegate '0'
        option ifname 'eth0'

config interface 'WAN'
        option proto 'dhcp'
        option ifname 'eth1'
        option delegate '0'

config interface 'vpnPICAM'
        option ifname 'tun1'
        option proto 'none'
        option auto '1'

config interface 'WLAN'
        option proto 'static'
        option ipaddr '10.80.1.1'
        option netmask '255.255.255.0'
        option dns '8.8.8.8'

package dropbear

config dropbear
        option PasswordAuth 'on'
        option RootPasswordAuth 'on'
        option Port '22'

package firewall

config rule
        option name 'Allow-DHCP-Renew'
        option src 'wan'
        option proto 'udp'
        option dest_port '68'
        option target 'ACCEPT'
        option family 'ipv4'

config rule
        option name 'Allow-Ping'
        option src 'wan'
        option proto 'icmp'
        option icmp_type 'echo-request'
        option family 'ipv4'
        option target 'ACCEPT'

config rule
        option name 'Allow-DHCPv6'
        option src 'wan'
        option proto 'udp'
        option src_ip 'fe80::/10'
        option src_port '547'
        option dest_ip 'fe80::/10'
        option dest_port '546'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Input'
        option src 'wan'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        list icmp_type 'router-solicitation'
        list icmp_type 'neighbour-solicitation'
        list icmp_type 'router-advertisement'
        list icmp_type 'neighbour-advertisement'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Forward'
        option src 'wan'
        option dest '*'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'

config defaults
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

config zone
        option name 'lan'
        option network 'lan'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        option input 'ACCEPT'

config zone
        option name 'wan'
        option output 'ACCEPT'
        option masq '1'
        option mtu_fix '1'
        option network 'wan wan6 WAN'
        option forward 'REJECT'
        option input 'ACCEPT'

config include
        option path '/etc/firewall.user'

config zone 'vpnPICAM'
        option name 'vpnPICAM'
        option network 'vpnPICAM'
        option forward 'REJECT'
        option output 'ACCEPT'
        option masq '1'
        option input 'ACCEPT'

config forwarding
        option dest 'vpnPICAM'
        option src 'lan'

config zone
        option name 'wlan'
        option input 'ACCEPT'
        option forward 'REJECT'
        option output 'ACCEPT'
        option network 'wlan WLAN'

config forwarding
        option dest 'wan'
        option src 'wlan'

config forwarding
        option src 'lan'
        option dest 'wan'

# This file is interpreted as shell script.
# Put your custom iptables rules here, they will
# be executed with each firewall (re-)start.

# Internal uci firewall chains are flushed and recreated on reload, so
# put custom rules into the root chains e.g. INPUT or FORWARD or into the
# special user chains, e.g. input_wan_rule or postrouting_lan_rule.
# Generated by iptables-save v1.8.7 on Thu May 13 12:48:10 2021
*nat
:PREROUTING ACCEPT [34:19234]
:INPUT ACCEPT [4:394]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:postrouting_lan_rule - [0:0]
:postrouting_rule - [0:0]
:postrouting_vpnPICAM_rule - [0:0]
:postrouting_wan_rule - [0:0]
:postrouting_wlan_rule - [0:0]
:prerouting_lan_rule - [0:0]
:prerouting_rule - [0:0]
:prerouting_vpnPICAM_rule - [0:0]
:prerouting_wan_rule - [0:0]
:prerouting_wlan_rule - [0:0]
:zone_lan_postrouting - [0:0]
:zone_lan_prerouting - [0:0]
:zone_vpnPICAM_postrouting - [0:0]
:zone_vpnPICAM_prerouting - [0:0]
:zone_wan_postrouting - [0:0]
:zone_wan_prerouting - [0:0]
:zone_wlan_postrouting - [0:0]
:zone_wlan_prerouting - [0:0]
[34:19234] -A PREROUTING -m comment --comment "!fw3: Custom prerouting rule chain" -j prerouting_rule
[0:0] -A PREROUTING -i eth0 -m comment --comment "!fw3" -j zone_lan_prerouting
[31:19078] -A PREROUTING -i eth1 -m comment --comment "!fw3" -j zone_wan_prerouting
[3:156] -A PREROUTING -i tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_prerouting
[0:0] -A POSTROUTING -m comment --comment "!fw3: Custom postrouting rule chain" -j postrouting_rule
[0:0] -A POSTROUTING -o eth0 -m comment --comment "!fw3" -j zone_lan_postrouting
[0:0] -A POSTROUTING -o eth1 -m comment --comment "!fw3" -j zone_wan_postrouting
[0:0] -A POSTROUTING -o tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_postrouting
[0:0] -A zone_lan_postrouting -m comment --comment "!fw3: Custom lan postrouting rule chain" -j postrouting_lan_rule
[0:0] -A zone_lan_prerouting -m comment --comment "!fw3: Custom lan prerouting rule chain" -j prerouting_lan_rule
[0:0] -A zone_vpnPICAM_postrouting -m comment --comment "!fw3: Custom vpnPICAM postrouting rule chain" -j postrouting_vpnPICAM_rule
[0:0] -A zone_vpnPICAM_postrouting -m comment --comment "!fw3" -j MASQUERADE
[3:156] -A zone_vpnPICAM_prerouting -m comment --comment "!fw3: Custom vpnPICAM prerouting rule chain" -j prerouting_vpnPICAM_rule
[0:0] -A zone_wan_postrouting -m comment --comment "!fw3: Custom wan postrouting rule chain" -j postrouting_wan_rule
[0:0] -A zone_wan_postrouting -m comment --comment "!fw3" -j MASQUERADE
[31:19078] -A zone_wan_prerouting -m comment --comment "!fw3: Custom wan prerouting rule chain" -j prerouting_wan_rule
[0:0] -A zone_wlan_postrouting -m comment --comment "!fw3: Custom wlan postrouting rule chain" -j postrouting_wlan_rule
[0:0] -A zone_wlan_prerouting -m comment --comment "!fw3: Custom wlan prerouting rule chain" -j prerouting_wlan_rule
COMMIT
# Completed on Thu May 13 12:48:10 2021
# Generated by iptables-save v1.8.7 on Thu May 13 12:48:10 2021
*mangle
:PREROUTING ACCEPT [188:37709]
:INPUT ACCEPT [158:18869]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [166:21197]
:POSTROUTING ACCEPT [166:21197]
[0:0] -A FORWARD -o eth1 -p tcp -m tcp --tcp-flags SYN,RST SYN -m comment --comment "!fw3: Zone wan MTU fixing" -j TCPMSS --clamp-mss-to-pmtu
[0:0] -A FORWARD -i eth1 -p tcp -m tcp --tcp-flags SYN,RST SYN -m comment --comment "!fw3: Zone wan MTU fixing" -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Completed on Thu May 13 12:48:10 2021
# Generated by iptables-save v1.8.7 on Thu May 13 12:48:10 2021
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
:forwarding_lan_rule - [0:0]
:forwarding_rule - [0:0]
:forwarding_vpnPICAM_rule - [0:0]
:forwarding_wan_rule - [0:0]
:forwarding_wlan_rule - [0:0]
:input_lan_rule - [0:0]
:input_rule - [0:0]
:input_vpnPICAM_rule - [0:0]
:input_wan_rule - [0:0]
:input_wlan_rule - [0:0]
:output_lan_rule - [0:0]
:output_rule - [0:0]
:output_vpnPICAM_rule - [0:0]
:output_wan_rule - [0:0]
:output_wlan_rule - [0:0]
:reject - [0:0]
:syn_flood - [0:0]
:zone_lan_dest_ACCEPT - [0:0]
:zone_lan_forward - [0:0]
:zone_lan_input - [0:0]
:zone_lan_output - [0:0]
:zone_lan_src_ACCEPT - [0:0]
:zone_vpnPICAM_dest_ACCEPT - [0:0]
:zone_vpnPICAM_dest_REJECT - [0:0]
:zone_vpnPICAM_forward - [0:0]
:zone_vpnPICAM_input - [0:0]
:zone_vpnPICAM_output - [0:0]
:zone_vpnPICAM_src_ACCEPT - [0:0]
:zone_wan_dest_ACCEPT - [0:0]
:zone_wan_dest_REJECT - [0:0]
:zone_wan_forward - [0:0]
:zone_wan_input - [0:0]
:zone_wan_output - [0:0]
:zone_wan_src_ACCEPT - [0:0]
:zone_wlan_dest_ACCEPT - [0:0]
:zone_wlan_dest_REJECT - [0:0]
:zone_wlan_forward - [0:0]
:zone_wlan_input - [0:0]
:zone_wlan_output - [0:0]
:zone_wlan_src_ACCEPT - [0:0]
[0:0] -A INPUT -i lo -m comment --comment "!fw3" -j ACCEPT
[160:18949] -A INPUT -m comment --comment "!fw3: Custom input rule chain" -j input_rule
[156:18555] -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -m comment --comment "!fw3" -j ACCEPT
[3:156] -A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m comment --comment "!fw3" -j syn_flood
[0:0] -A INPUT -i eth0 -m comment --comment "!fw3" -j zone_lan_input
[1:238] -A INPUT -i eth1 -m comment --comment "!fw3" -j zone_wan_input
[3:156] -A INPUT -i tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_input
[0:0] -A FORWARD -m comment --comment "!fw3: Custom forwarding rule chain" -j forwarding_rule
[0:0] -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A FORWARD -i eth0 -m comment --comment "!fw3" -j zone_lan_forward
[0:0] -A FORWARD -i eth1 -m comment --comment "!fw3" -j zone_wan_forward
[0:0] -A FORWARD -i tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_forward
[0:0] -A FORWARD -m comment --comment "!fw3" -j reject
[0:0] -A OUTPUT -o lo -m comment --comment "!fw3" -j ACCEPT
[170:22157] -A OUTPUT -m comment --comment "!fw3: Custom output rule chain" -j output_rule
[170:22157] -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A OUTPUT -o eth0 -m comment --comment "!fw3" -j zone_lan_output
[0:0] -A OUTPUT -o eth1 -m comment --comment "!fw3" -j zone_wan_output
[0:0] -A OUTPUT -o tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_output
[0:0] -A reject -p tcp -m comment --comment "!fw3" -j REJECT --reject-with tcp-reset
[0:0] -A reject -m comment --comment "!fw3" -j REJECT --reject-with icmp-port-unreachable
[3:156] -A syn_flood -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 25/sec --limit-burst 50 -m comment --comment "!fw3" -j RETURN
[0:0] -A syn_flood -m comment --comment "!fw3" -j DROP
[0:0] -A zone_lan_dest_ACCEPT -o eth0 -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_lan_forward -m comment --comment "!fw3: Custom lan forwarding rule chain" -j forwarding_lan_rule
[0:0] -A zone_lan_forward -m comment --comment "!fw3: Zone lan to vpnPICAM forwarding policy" -j zone_vpnPICAM_dest_ACCEPT
[0:0] -A zone_lan_forward -m comment --comment "!fw3: Zone lan to wan forwarding policy" -j zone_wan_dest_ACCEPT
[0:0] -A zone_lan_forward -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port forwards" -j ACCEPT
[0:0] -A zone_lan_forward -m comment --comment "!fw3" -j zone_lan_dest_ACCEPT
[0:0] -A zone_lan_input -m comment --comment "!fw3: Custom lan input rule chain" -j input_lan_rule
[0:0] -A zone_lan_input -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port redirections" -j ACCEPT
[0:0] -A zone_lan_input -m comment --comment "!fw3" -j zone_lan_src_ACCEPT
[0:0] -A zone_lan_output -m comment --comment "!fw3: Custom lan output rule chain" -j output_lan_rule
[0:0] -A zone_lan_output -m comment --comment "!fw3" -j zone_lan_dest_ACCEPT
[0:0] -A zone_lan_src_ACCEPT -i eth0 -m conntrack --ctstate NEW,UNTRACKED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_vpnPICAM_dest_ACCEPT -o tun1 -m conntrack --ctstate INVALID -m comment --comment "!fw3: Prevent NAT leakage" -j DROP
[0:0] -A zone_vpnPICAM_dest_ACCEPT -o tun1 -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_vpnPICAM_dest_REJECT -o tun1 -m comment --comment "!fw3" -j reject
[0:0] -A zone_vpnPICAM_forward -m comment --comment "!fw3: Custom vpnPICAM forwarding rule chain" -j forwarding_vpnPICAM_rule
[0:0] -A zone_vpnPICAM_forward -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port forwards" -j ACCEPT
[0:0] -A zone_vpnPICAM_forward -m comment --comment "!fw3" -j zone_vpnPICAM_dest_REJECT
[3:156] -A zone_vpnPICAM_input -m comment --comment "!fw3: Custom vpnPICAM input rule chain" -j input_vpnPICAM_rule
[0:0] -A zone_vpnPICAM_input -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port redirections" -j ACCEPT
[3:156] -A zone_vpnPICAM_input -m comment --comment "!fw3" -j zone_vpnPICAM_src_ACCEPT
[0:0] -A zone_vpnPICAM_output -m comment --comment "!fw3: Custom vpnPICAM output rule chain" -j output_vpnPICAM_rule
[0:0] -A zone_vpnPICAM_output -m comment --comment "!fw3" -j zone_vpnPICAM_dest_ACCEPT
[3:156] -A zone_vpnPICAM_src_ACCEPT -i tun1 -m conntrack --ctstate NEW,UNTRACKED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_wan_dest_ACCEPT -o eth1 -m conntrack --ctstate INVALID -m comment --comment "!fw3: Prevent NAT leakage" -j DROP
[0:0] -A zone_wan_dest_ACCEPT -o eth1 -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_wan_dest_REJECT -o eth1 -m comment --comment "!fw3" -j reject
[0:0] -A zone_wan_forward -m comment --comment "!fw3: Custom wan forwarding rule chain" -j forwarding_wan_rule
[0:0] -A zone_wan_forward -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port forwards" -j ACCEPT
[0:0] -A zone_wan_forward -m comment --comment "!fw3" -j zone_wan_dest_REJECT
[1:238] -A zone_wan_input -m comment --comment "!fw3: Custom wan input rule chain" -j input_wan_rule
[0:0] -A zone_wan_input -p udp -m udp --dport 68 -m comment --comment "!fw3: Allow-DHCP-Renew" -j ACCEPT
[0:0] -A zone_wan_input -p icmp -m icmp --icmp-type 8 -m comment --comment "!fw3: Allow-Ping" -j ACCEPT
[0:0] -A zone_wan_input -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port redirections" -j ACCEPT
[1:238] -A zone_wan_input -m comment --comment "!fw3" -j zone_wan_src_ACCEPT
[0:0] -A zone_wan_output -m comment --comment "!fw3: Custom wan output rule chain" -j output_wan_rule
[0:0] -A zone_wan_output -m comment --comment "!fw3" -j zone_wan_dest_ACCEPT
[1:238] -A zone_wan_src_ACCEPT -i eth1 -m conntrack --ctstate NEW,UNTRACKED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_wlan_forward -m comment --comment "!fw3: Custom wlan forwarding rule chain" -j forwarding_wlan_rule
[0:0] -A zone_wlan_forward -m comment --comment "!fw3: Zone wlan to wan forwarding policy" -j zone_wan_dest_ACCEPT
[0:0] -A zone_wlan_forward -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port forwards" -j ACCEPT
[0:0] -A zone_wlan_forward -m comment --comment "!fw3" -j zone_wlan_dest_REJECT
[0:0] -A zone_wlan_input -m comment --comment "!fw3: Custom wlan input rule chain" -j input_wlan_rule
[0:0] -A zone_wlan_input -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port redirections" -j ACCEPT
[0:0] -A zone_wlan_input -m comment --comment "!fw3" -j zone_wlan_src_ACCEPT
[0:0] -A zone_wlan_output -m comment --comment "!fw3: Custom wlan output rule chain" -j output_wlan_rule
[0:0] -A zone_wlan_output -m comment --comment "!fw3" -j zone_wlan_dest_ACCEPT
COMMIT
# Completed on Thu May 13 12:48:10 2021
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN qlen 1000
    inet 10.81.1.1/24 brd 10.81.1.255 scope global eth0
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP qlen 1000
    inet 192.168.1.113/24 brd 192.168.1.255 scope global eth1
       valid_lft forever preferred_lft forever
7: tun1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN qlen 500
    inet 172.18.0.97 peer 172.18.0.98/32 scope global tun1
       valid_lft forever preferred_lft forever
default via 192.168.1.1 dev eth1  src 192.168.1.113
10.81.1.0/24 dev eth0 scope link  src 10.81.1.1
172.18.0.0/24 via 172.18.0.98 dev tun1
172.18.0.98 dev tun1 scope link  src 172.18.0.97
192.168.1.0/24 dev eth1 scope link  src 192.168.1.113
broadcast 10.81.1.0 dev eth0 table local scope link  src 10.81.1.1
local 10.81.1.1 dev eth0 table local scope host  src 10.81.1.1
broadcast 10.81.1.255 dev eth0 table local scope link  src 10.81.1.1
broadcast 127.0.0.0 dev lo table local scope link  src 127.0.0.1
local 127.0.0.0/8 dev lo table local scope host  src 127.0.0.1
local 127.0.0.1 dev lo table local scope host  src 127.0.0.1
broadcast 127.255.255.255 dev lo table local scope link  src 127.0.0.1
local 172.18.0.97 dev tun1 table local scope host  src 172.18.0.97
broadcast 192.168.1.0 dev eth1 table local scope link  src 192.168.1.113
local 192.168.1.113 dev eth1 table local scope host  src 192.168.1.113
broadcast 192.168.1.255 dev eth1 table local scope link  src 192.168.1.113
0:      from all lookup local
32766:  from all lookup main
32767:  from all lookup default

After I connected to the web interface (ssh works):

{
        "kernel": "5.4.117",
        "hostname": "pi-cam-01",
        "system": "ARMv8 Processor rev 3",
        "model": "Raspberry Pi Compute Module 4 Rev 1.0",
        "board_name": "raspberrypi,4-compute-module",
        "release": {
                "distribution": "OpenWrt",
                "version": "SNAPSHOT",
                "revision": "r16585+131-182eaa4916",
                "target": "bcm27xx/bcm2711",
                "description": "OpenWrt SNAPSHOT r16585+131-182eaa4916"
        }
}
package network

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config interface 'lan'
        option proto 'static'
        option dns '8.8.8.8'
        option netmask '255.255.255.0'
        option ipaddr '10.81.1.1'
        option delegate '0'
        option ifname 'eth0'

config interface 'WAN'
        option proto 'dhcp'
        option ifname 'eth1'
        option delegate '0'

config interface 'vpnPICAM'
        option ifname 'tun1'
        option proto 'none'
        option auto '1'

config interface 'WLAN'
        option proto 'static'
        option ipaddr '10.80.1.1'
        option netmask '255.255.255.0'
        option dns '8.8.8.8'

package dropbear

config dropbear
        option PasswordAuth 'on'
        option RootPasswordAuth 'on'
        option Port '22'

package firewall

config rule
        option name 'Allow-DHCP-Renew'
        option src 'wan'
        option proto 'udp'
        option dest_port '68'
        option target 'ACCEPT'
        option family 'ipv4'

config rule
        option name 'Allow-Ping'
        option src 'wan'
        option proto 'icmp'
        option icmp_type 'echo-request'
        option family 'ipv4'
        option target 'ACCEPT'

config rule
        option name 'Allow-DHCPv6'
        option src 'wan'
        option proto 'udp'
        option src_ip 'fe80::/10'
        option src_port '547'
        option dest_ip 'fe80::/10'
        option dest_port '546'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Input'
        option src 'wan'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        list icmp_type 'router-solicitation'
        list icmp_type 'neighbour-solicitation'
        list icmp_type 'router-advertisement'
        list icmp_type 'neighbour-advertisement'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Forward'
        option src 'wan'
        option dest '*'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'

config defaults
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

config zone
        option name 'lan'
        option network 'lan'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        option input 'ACCEPT'

config zone
        option name 'wan'
        option output 'ACCEPT'
        option masq '1'
        option mtu_fix '1'
        option network 'wan wan6 WAN'
        option forward 'REJECT'
        option input 'ACCEPT'

config include
        option path '/etc/firewall.user'

config zone 'vpnPICAM'
        option name 'vpnPICAM'
        option network 'vpnPICAM'
        option forward 'REJECT'
        option output 'ACCEPT'
        option masq '1'
        option input 'ACCEPT'

config forwarding
        option dest 'vpnPICAM'
        option src 'lan'

config zone
        option name 'wlan'
        option input 'ACCEPT'
        option forward 'REJECT'
        option output 'ACCEPT'
        option network 'wlan WLAN'

config forwarding
        option dest 'wan'
        option src 'wlan'

config forwarding
        option src 'lan'
        option dest 'wan'

# This file is interpreted as shell script.
# Put your custom iptables rules here, they will
# be executed with each firewall (re-)start.

# Internal uci firewall chains are flushed and recreated on reload, so
# put custom rules into the root chains e.g. INPUT or FORWARD or into the
# special user chains, e.g. input_wan_rule or postrouting_lan_rule.
# Generated by iptables-save v1.8.7 on Thu May 13 12:49:04 2021
*nat
:PREROUTING ACCEPT [94:53636]
:INPUT ACCEPT [10:884]
:OUTPUT ACCEPT [5:380]
:POSTROUTING ACCEPT [0:0]
:postrouting_lan_rule - [0:0]
:postrouting_rule - [0:0]
:postrouting_vpnPICAM_rule - [0:0]
:postrouting_wan_rule - [0:0]
:postrouting_wlan_rule - [0:0]
:prerouting_lan_rule - [0:0]
:prerouting_rule - [0:0]
:prerouting_vpnPICAM_rule - [0:0]
:prerouting_wan_rule - [0:0]
:prerouting_wlan_rule - [0:0]
:zone_lan_postrouting - [0:0]
:zone_lan_prerouting - [0:0]
:zone_vpnPICAM_postrouting - [0:0]
:zone_vpnPICAM_prerouting - [0:0]
:zone_wan_postrouting - [0:0]
:zone_wan_prerouting - [0:0]
:zone_wlan_postrouting - [0:0]
:zone_wlan_prerouting - [0:0]
[94:53636] -A PREROUTING -m comment --comment "!fw3: Custom prerouting rule chain" -j prerouting_rule
[0:0] -A PREROUTING -i eth0 -m comment --comment "!fw3" -j zone_lan_prerouting
[87:53272] -A PREROUTING -i eth1 -m comment --comment "!fw3" -j zone_wan_prerouting
[7:364] -A PREROUTING -i tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_prerouting
[5:380] -A POSTROUTING -m comment --comment "!fw3: Custom postrouting rule chain" -j postrouting_rule
[0:0] -A POSTROUTING -o eth0 -m comment --comment "!fw3" -j zone_lan_postrouting
[5:380] -A POSTROUTING -o eth1 -m comment --comment "!fw3" -j zone_wan_postrouting
[0:0] -A POSTROUTING -o tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_postrouting
[0:0] -A zone_lan_postrouting -m comment --comment "!fw3: Custom lan postrouting rule chain" -j postrouting_lan_rule
[0:0] -A zone_lan_prerouting -m comment --comment "!fw3: Custom lan prerouting rule chain" -j prerouting_lan_rule
[0:0] -A zone_vpnPICAM_postrouting -m comment --comment "!fw3: Custom vpnPICAM postrouting rule chain" -j postrouting_vpnPICAM_rule
[0:0] -A zone_vpnPICAM_postrouting -m comment --comment "!fw3" -j MASQUERADE
[7:364] -A zone_vpnPICAM_prerouting -m comment --comment "!fw3: Custom vpnPICAM prerouting rule chain" -j prerouting_vpnPICAM_rule
[5:380] -A zone_wan_postrouting -m comment --comment "!fw3: Custom wan postrouting rule chain" -j postrouting_wan_rule
[5:380] -A zone_wan_postrouting -m comment --comment "!fw3" -j MASQUERADE
[87:53272] -A zone_wan_prerouting -m comment --comment "!fw3: Custom wan prerouting rule chain" -j prerouting_wan_rule
[0:0] -A zone_wlan_postrouting -m comment --comment "!fw3: Custom wlan postrouting rule chain" -j postrouting_wlan_rule
[0:0] -A zone_wlan_prerouting -m comment --comment "!fw3: Custom wlan prerouting rule chain" -j prerouting_wlan_rule
COMMIT
# Completed on Thu May 13 12:49:04 2021
# Generated by iptables-save v1.8.7 on Thu May 13 12:49:04 2021
*mangle
:PREROUTING ACCEPT [606:110242]
:INPUT ACCEPT [522:57490]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [586:108702]
:POSTROUTING ACCEPT [586:108702]
[0:0] -A FORWARD -o eth1 -p tcp -m tcp --tcp-flags SYN,RST SYN -m comment --comment "!fw3: Zone wan MTU fixing" -j TCPMSS --clamp-mss-to-pmtu
[0:0] -A FORWARD -i eth1 -p tcp -m tcp --tcp-flags SYN,RST SYN -m comment --comment "!fw3: Zone wan MTU fixing" -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Completed on Thu May 13 12:49:04 2021
# Generated by iptables-save v1.8.7 on Thu May 13 12:49:04 2021
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
:forwarding_lan_rule - [0:0]
:forwarding_rule - [0:0]
:forwarding_vpnPICAM_rule - [0:0]
:forwarding_wan_rule - [0:0]
:forwarding_wlan_rule - [0:0]
:input_lan_rule - [0:0]
:input_rule - [0:0]
:input_vpnPICAM_rule - [0:0]
:input_wan_rule - [0:0]
:input_wlan_rule - [0:0]
:output_lan_rule - [0:0]
:output_rule - [0:0]
:output_vpnPICAM_rule - [0:0]
:output_wan_rule - [0:0]
:output_wlan_rule - [0:0]
:reject - [0:0]
:syn_flood - [0:0]
:zone_lan_dest_ACCEPT - [0:0]
:zone_lan_forward - [0:0]
:zone_lan_input - [0:0]
:zone_lan_output - [0:0]
:zone_lan_src_ACCEPT - [0:0]
:zone_vpnPICAM_dest_ACCEPT - [0:0]
:zone_vpnPICAM_dest_REJECT - [0:0]
:zone_vpnPICAM_forward - [0:0]
:zone_vpnPICAM_input - [0:0]
:zone_vpnPICAM_output - [0:0]
:zone_vpnPICAM_src_ACCEPT - [0:0]
:zone_wan_dest_ACCEPT - [0:0]
:zone_wan_dest_REJECT - [0:0]
:zone_wan_forward - [0:0]
:zone_wan_input - [0:0]
:zone_wan_output - [0:0]
:zone_wan_src_ACCEPT - [0:0]
:zone_wlan_dest_ACCEPT - [0:0]
:zone_wlan_dest_REJECT - [0:0]
:zone_wlan_forward - [0:0]
:zone_wlan_input - [0:0]
:zone_wlan_output - [0:0]
:zone_wlan_src_ACCEPT - [0:0]
[0:0] -A INPUT -i lo -m comment --comment "!fw3" -j ACCEPT
[524:57570] -A INPUT -m comment --comment "!fw3: Custom input rule chain" -j input_rule
[514:56686] -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -m comment --comment "!fw3" -j ACCEPT
[7:364] -A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m comment --comment "!fw3" -j syn_flood
[0:0] -A INPUT -i eth0 -m comment --comment "!fw3" -j zone_lan_input
[3:520] -A INPUT -i eth1 -m comment --comment "!fw3" -j zone_wan_input
[7:364] -A INPUT -i tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_input
[0:0] -A FORWARD -m comment --comment "!fw3: Custom forwarding rule chain" -j forwarding_rule
[0:0] -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A FORWARD -i eth0 -m comment --comment "!fw3" -j zone_lan_forward
[0:0] -A FORWARD -i eth1 -m comment --comment "!fw3" -j zone_wan_forward
[0:0] -A FORWARD -i tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_forward
[0:0] -A FORWARD -m comment --comment "!fw3" -j reject
[0:0] -A OUTPUT -o lo -m comment --comment "!fw3" -j ACCEPT
[590:109646] -A OUTPUT -m comment --comment "!fw3: Custom output rule chain" -j output_rule
[585:109266] -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A OUTPUT -o eth0 -m comment --comment "!fw3" -j zone_lan_output
[5:380] -A OUTPUT -o eth1 -m comment --comment "!fw3" -j zone_wan_output
[0:0] -A OUTPUT -o tun1 -m comment --comment "!fw3" -j zone_vpnPICAM_output
[0:0] -A reject -p tcp -m comment --comment "!fw3" -j REJECT --reject-with tcp-reset
[0:0] -A reject -m comment --comment "!fw3" -j REJECT --reject-with icmp-port-unreachable
[7:364] -A syn_flood -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 25/sec --limit-burst 50 -m comment --comment "!fw3" -j RETURN
[0:0] -A syn_flood -m comment --comment "!fw3" -j DROP
[0:0] -A zone_lan_dest_ACCEPT -o eth0 -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_lan_forward -m comment --comment "!fw3: Custom lan forwarding rule chain" -j forwarding_lan_rule
[0:0] -A zone_lan_forward -m comment --comment "!fw3: Zone lan to vpnPICAM forwarding policy" -j zone_vpnPICAM_dest_ACCEPT
[0:0] -A zone_lan_forward -m comment --comment "!fw3: Zone lan to wan forwarding policy" -j zone_wan_dest_ACCEPT
[0:0] -A zone_lan_forward -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port forwards" -j ACCEPT
[0:0] -A zone_lan_forward -m comment --comment "!fw3" -j zone_lan_dest_ACCEPT
[0:0] -A zone_lan_input -m comment --comment "!fw3: Custom lan input rule chain" -j input_lan_rule
[0:0] -A zone_lan_input -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port redirections" -j ACCEPT
[0:0] -A zone_lan_input -m comment --comment "!fw3" -j zone_lan_src_ACCEPT
[0:0] -A zone_lan_output -m comment --comment "!fw3: Custom lan output rule chain" -j output_lan_rule
[0:0] -A zone_lan_output -m comment --comment "!fw3" -j zone_lan_dest_ACCEPT
[0:0] -A zone_lan_src_ACCEPT -i eth0 -m conntrack --ctstate NEW,UNTRACKED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_vpnPICAM_dest_ACCEPT -o tun1 -m conntrack --ctstate INVALID -m comment --comment "!fw3: Prevent NAT leakage" -j DROP
[0:0] -A zone_vpnPICAM_dest_ACCEPT -o tun1 -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_vpnPICAM_dest_REJECT -o tun1 -m comment --comment "!fw3" -j reject
[0:0] -A zone_vpnPICAM_forward -m comment --comment "!fw3: Custom vpnPICAM forwarding rule chain" -j forwarding_vpnPICAM_rule
[0:0] -A zone_vpnPICAM_forward -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port forwards" -j ACCEPT
[0:0] -A zone_vpnPICAM_forward -m comment --comment "!fw3" -j zone_vpnPICAM_dest_REJECT
[7:364] -A zone_vpnPICAM_input -m comment --comment "!fw3: Custom vpnPICAM input rule chain" -j input_vpnPICAM_rule
[0:0] -A zone_vpnPICAM_input -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port redirections" -j ACCEPT
[7:364] -A zone_vpnPICAM_input -m comment --comment "!fw3" -j zone_vpnPICAM_src_ACCEPT
[0:0] -A zone_vpnPICAM_output -m comment --comment "!fw3: Custom vpnPICAM output rule chain" -j output_vpnPICAM_rule
[0:0] -A zone_vpnPICAM_output -m comment --comment "!fw3" -j zone_vpnPICAM_dest_ACCEPT
[7:364] -A zone_vpnPICAM_src_ACCEPT -i tun1 -m conntrack --ctstate NEW,UNTRACKED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_wan_dest_ACCEPT -o eth1 -m conntrack --ctstate INVALID -m comment --comment "!fw3: Prevent NAT leakage" -j DROP
[5:380] -A zone_wan_dest_ACCEPT -o eth1 -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_wan_dest_REJECT -o eth1 -m comment --comment "!fw3" -j reject
[0:0] -A zone_wan_forward -m comment --comment "!fw3: Custom wan forwarding rule chain" -j forwarding_wan_rule
[0:0] -A zone_wan_forward -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port forwards" -j ACCEPT
[0:0] -A zone_wan_forward -m comment --comment "!fw3" -j zone_wan_dest_REJECT
[3:520] -A zone_wan_input -m comment --comment "!fw3: Custom wan input rule chain" -j input_wan_rule
[0:0] -A zone_wan_input -p udp -m udp --dport 68 -m comment --comment "!fw3: Allow-DHCP-Renew" -j ACCEPT
[0:0] -A zone_wan_input -p icmp -m icmp --icmp-type 8 -m comment --comment "!fw3: Allow-Ping" -j ACCEPT
[0:0] -A zone_wan_input -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port redirections" -j ACCEPT
[3:520] -A zone_wan_input -m comment --comment "!fw3" -j zone_wan_src_ACCEPT
[5:380] -A zone_wan_output -m comment --comment "!fw3: Custom wan output rule chain" -j output_wan_rule
[5:380] -A zone_wan_output -m comment --comment "!fw3" -j zone_wan_dest_ACCEPT
[3:520] -A zone_wan_src_ACCEPT -i eth1 -m conntrack --ctstate NEW,UNTRACKED -m comment --comment "!fw3" -j ACCEPT
[0:0] -A zone_wlan_forward -m comment --comment "!fw3: Custom wlan forwarding rule chain" -j forwarding_wlan_rule
[0:0] -A zone_wlan_forward -m comment --comment "!fw3: Zone wlan to wan forwarding policy" -j zone_wan_dest_ACCEPT
[0:0] -A zone_wlan_forward -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port forwards" -j ACCEPT
[0:0] -A zone_wlan_forward -m comment --comment "!fw3" -j zone_wlan_dest_REJECT
[0:0] -A zone_wlan_input -m comment --comment "!fw3: Custom wlan input rule chain" -j input_wlan_rule
[0:0] -A zone_wlan_input -m conntrack --ctstate DNAT -m comment --comment "!fw3: Accept port redirections" -j ACCEPT
[0:0] -A zone_wlan_input -m comment --comment "!fw3" -j zone_wlan_src_ACCEPT
[0:0] -A zone_wlan_output -m comment --comment "!fw3: Custom wlan output rule chain" -j output_wlan_rule
[0:0] -A zone_wlan_output -m comment --comment "!fw3" -j zone_wlan_dest_ACCEPT
COMMIT
# Completed on Thu May 13 12:49:04 2021
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN qlen 1000
    inet 10.81.1.1/24 brd 10.81.1.255 scope global eth0
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP qlen 1000
    inet 192.168.1.113/24 brd 192.168.1.255 scope global eth1
       valid_lft forever preferred_lft forever
7: tun1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN qlen 500
    inet 172.18.0.97 peer 172.18.0.98/32 scope global tun1
       valid_lft forever preferred_lft forever
default via 192.168.1.1 dev eth1  src 192.168.1.113
10.81.1.0/24 dev eth0 scope link  src 10.81.1.1
172.18.0.0/24 via 172.18.0.98 dev tun1
172.18.0.98 dev tun1 scope link  src 172.18.0.97
192.168.1.0/24 dev eth1 scope link  src 192.168.1.113
broadcast 10.81.1.0 dev eth0 table local scope link  src 10.81.1.1
local 10.81.1.1 dev eth0 table local scope host  src 10.81.1.1
broadcast 10.81.1.255 dev eth0 table local scope link  src 10.81.1.1
broadcast 127.0.0.0 dev lo table local scope link  src 127.0.0.1
local 127.0.0.0/8 dev lo table local scope host  src 127.0.0.1
local 127.0.0.1 dev lo table local scope host  src 127.0.0.1
broadcast 127.255.255.255 dev lo table local scope link  src 127.0.0.1
local 172.18.0.97 dev tun1 table local scope host  src 172.18.0.97
broadcast 192.168.1.0 dev eth1 table local scope link  src 192.168.1.113
local 192.168.1.113 dev eth1 table local scope host  src 192.168.1.113
broadcast 192.168.1.255 dev eth1 table local scope link  src 192.168.1.113
0:      from all lookup local
32766:  from all lookup main
32767:  from all lookup default

Not relevant to your problem, but GoogleDNS should be applied to WAN interface, not lan and WLAN, where it is reachable from.
Apart from that I don't see anything wrong with your configuration. Evidently from logs the router receives the ssh packet, however it doesn't finish the handshake. You could try to troubleshoot further, however since it is a snapshot, which is unstable, I would suggest to upgrade to a newer snapshot, or even better to the community build.