I have a wireguard server setup on my home openwrt router that allows me to access my LAN remotely, and to route traffic through my home connection from possibly insecure (e.g. coffee shop) access points.
When I have a laptop (computer "A") at a remote location I can ssh into my router, and from there ssh into another computer (computer "B") on my LAN, but I cannot directly ssh into that computer (i.e. from "A" I can't "ssh user@B_IP"). It would be sufficient to do this hop ssh, but I also want to mount a drive from "A" onto "B" via smb, and control "A" remotely via screen share using vnc (both computers are macs), which I can't currently do.
I was able to both mount a drive from "B" onto "A" and use remote desktop when I was at home on the LAN, so I thought it would work via the wireguard connection, but apparently not. It seems like I'm close but have some configuration wrong.
I was hoping someone could take a look at my configuration and see if there is anything obviously wrong. Also, I'm still learning new things about openwrt, so feel free to correct anything I've got wrong or misunderstand.
Here is my basic network setup

I've included my network, firewall, and pbr config files below, with sensitive info redacted.
My basic setup is to use the openwrt policy based routing to direct traffic to the internet or via a wireguard connection to a vpn server (wg0 here) based on ip address. 192.168.0.x/24 goes via wg0, 192.168.1.x/24 goes via wan. I try to use static IPs for all devices, though I do have a dhcp server running on the router.
I have two wireguard server interfaces setup. wg1 works and is typically how I connect to the internet using "A". For instance, "A" connects to wg1 and has IP 192.168.0.32. From here I can ssh to router, and mount an smb drive connected to router. I cannot ssh to "B" or mount smb drives ets. When "A" is at home on the lan, this works.
wg2 I just set up as an additional test using suggestions I found in other threads, but nothing currently works.
/etc/config/network
config interface 'loopback'
option device 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option ula_prefix 'XXXX:XXXX:XXXX::/48'
config device
option name 'br-lan'
option type 'bridge'
list ports 'eth0'
config interface 'lan'
option device 'br-lan'
option proto 'static'
option ip6assign '60'
option ipaddr '192.168.0.1'
option netmask '255.255.0.0'
config interface 'wan'
option device 'eth1'
option proto 'dhcp'
config interface 'wan6'
option device 'eth1'
option proto 'dhcpv6'
config interface 'wg0'
option proto 'wireguard'
option listen_port '8003'
option private_key 'XXXX'
option addresses 'XXX.XXX.XXX.XXX'
config wireguard_wg0
option endpoint_port '1337'
list allowed_ips '0.0.0.0/0'
list allowed_ips '::0/0'
option persistent_keepalive '25'
option description 'XXXX'
option public_key 'XXXX'
option endpoint_host 'XXX.XXX.XXX.XXX'
config interface 'wg1'
option proto 'wireguard'
option private_key 'XXXX='
option listen_port '8006'
list addresses '192.168.0.3'
config wireguard_wg1
option description 'Peer1'
option endpoint_port '8006'
option route_allowed_ips '1'
option public_key 'XXXX='
option private_key 'XXXX='
option preshared_key 'XXXX='
list allowed_ips '192.168.0.47/32'
list allowed_ips '192.168.1.47/32'
config interface 'wg2'
option proto 'wireguard'
option private_key 'XXXX='
option listen_port '8007'
option mtu '1280'
list addresses '10.10.10.1/24'
config wireguard_wg2
option description 'Peer1'
option public_key 'XXXX='
option private_key 'XXXX='
option preshared_key 'XXXX='
list allowed_ips '10.10.10.47/32'
option route_allowed_ips '1'
option endpoint_host 'name.ddns.com'
option persistent_keepalive '25'
/etc/config/firewall
config defaults
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option synflood_protect '1'
config zone
option name 'lan'
list network 'lan'
list network 'wg1'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
config zone
option name 'wan'
list network 'wan'
list network 'wan6'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
config forwarding
option src 'lan'
option dest 'wan'
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-IGMP'
option src 'wan'
option proto 'igmp'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-DHCPv6'
option src 'wan'
option proto 'udp'
option dest_port '546'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-MLD'
option src 'wan'
option proto 'icmp'
option src_ip 'fe80::/10'
list icmp_type '130/0'
list icmp_type '131/0'
list icmp_type '132/0'
list icmp_type '143/0'
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 rule
option name 'Allow-IPSec-ESP'
option src 'wan'
option dest 'lan'
option proto 'esp'
option target 'ACCEPT'
config rule
option name 'Allow-ISAKMP'
option src 'wan'
option dest 'lan'
option dest_port '500'
option proto 'udp'
option target 'ACCEPT'
config zone
option name 'wg0'
list network 'wg0'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
config forwarding
option src 'lan'
option dest 'wg0'
config forwarding
option src 'wg0'
option dest 'wan'
config include 'pbr'
option fw4_compatible '1'
option type 'script'
option path '/usr/share/pbr/pbr.firewall.include'
config rule
option name 'Allow-wg1-Inbound'
option family 'ipv4'
list proto 'udp'
option src '*'
option dest_port '8006'
option target 'ACCEPT'
config zone
option name 'wg1fw'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
list network 'wg2'
config rule
option name 'Allow-Wg2-WAN'
list proto 'udp'
option src 'wan'
option dest_port '8007'
option target 'ACCEPT'
option family 'ipv4'
config forwarding
option src 'lan'
option dest 'wg1fw'
config forwarding
option src 'wg1fw'
option dest 'lan'
/etc/config/pbr
config pbr 'config'
option enabled '1'
option verbosity '2'
option strict_enforcement '1'
option resolver_set 'none'
option ipv6_enabled '1'
option boot_timeout '30'
option rule_create_option 'add'
option procd_reload_delay '1'
option webui_show_ignore_target '1'
list webui_supported_protocol 'all'
list webui_supported_protocol 'tcp'
list webui_supported_protocol 'udp'
list webui_supported_protocol 'tcp udp'
list webui_supported_protocol 'icmp'
list ignored_interface 'wg1'
list ignored_interface 'wg2'
config policy
option name 'Ignore LAN'
option interface 'ignore'
option dest_addr '192.168.0.0/16'
config policy
option name 'wg0 Subnet'
option src_addr '192.168.0.0/24'
option interface 'wg0'
config policy
option name 'wan Subnet'
option src_addr '192.168.1.0/24'
option interface 'wan'
Peer1 wireguard config
[Interface]
PrivateKey = XXXX=
ListenPort = 8006
Address = 192.168.0.47/32
DNS = 1.1.1.1, 8.8.8.8
[Peer]
PublicKey = XXXX=
PresharedKey = XXXX=
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = name.ddns.com:8006