O catchall deve estar no arquivo virtual_alias_maps (no seu caso /etc/postfix/virtual ) e não no arquivo virtual_mailbox .
Dê uma olhada aqui , pesquise a página por Mail forwarding domains e você encontrará este exemplo:
1 /etc/postfix/main.cf:
2 virtual_alias_domains = example.com ...other hosted domains...
3 virtual_alias_maps = hash:/etc/postfix/virtual
4
5 /etc/postfix/virtual:
6 [email protected] postmaster
7 [email protected] joe@somewhere
8 [email protected] jane@somewhere-else
9 # Uncomment entry below to implement a catch-all address
10 # @example.com jim@yet-another-site
11 ...virtual aliases for more domains...