Por favor, você poderia fornecer iptables -t filter -nvL de saídas nos servidores B e C?
Eu acho que o canal autossh é executado no servidor C. Está correto? Se assim for, sugiro uma abordagem diferente. Em B, você precisa de uma regra REDIRECT, porque o kernel não permitirá que um usuário sem privilégios abra a porta 80.
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 10000
iptables -t filter -A INPUT -p tcp --dport 10000 -j ACCEPT
(EDIT) : no servidor B, GatewayPorts deve estar ativado em /etc/ssh/sshd_config :
# /etc/ssh/sshd_config
GatewayPorts clientspecified
No servidor C, direcione as conexões diretamente para o dongle, modificando autossh arguments:
autossh -M 0 -N [email protected] -R 10022:127.0.0.1:22 \
-R :10000:192.168.8.1:80
O único erro que vejo em sua configuração reside na regra de PREROUTING da cadeia do servidor C. Nesse cenário, ela não será avaliada porque afeta apenas os pacotes que entram pelas interfaces de rede. As conexões criadas por ssh são geradas localmente, portanto, elas seriam afetadas pelas regras em OUTPUT chain.