Os nomes das cadeias padrão estão definitivamente envolvidos no fluxo de pacotes. Existem muitos diagramas em toda a Internet mostrando os vários caminhos que um pacote pode percorrer nas cadeias, mas, em geral, o tráfego do cenário da máquina atravessará a saída e o tráfego para a máquina atravessará a entrada. Eles também percorrerão outras cadeias, mas isso provavelmente não importará para o escopo desta questão.
Lembre-se também de que o iptables funciona em uma primeira correspondência de dispositivo (a primeira correspondência que descarta um pacote, como aceitar, rejeitar ou descartar, faz com que o processamento da cadeia pare também). Portanto, nenhuma das suas regras de entrada depois de -A INPUT -j REJECT --reject-with icmp-host-prohibited
tem qualquer efeito.
Com isso dito, o motivo pelo qual suas conexões de samba estão funcionando é esta regra de entrada: -m state --state RELATED,ESTABLISHED -j ACCEPT
. Isso porque, quando você se conecta a outro host samba, o conntrack registrará o estado da conexão e essa regra começará a aceitar o tráfego de retorno. Eu suspeito que você encontraria, se você tentasse servir algo desta caixa, que ninguém poderia acessá-lo.