As portas são abertas assim que um aplicativo as ouve. Por exemplo, se você instalar o openssh-server, a porta 25 TCP estará aberta. Se você entrar no arquivo de configuração e alterar a porta de 25 para 48 e reiniciar o servidor, 48 serão abertos e 25 fechados.
Então, basicamente, sempre que um aplicativo estiver escutando, a porta estará aberta.
O que você pensa basicamente são filtros de pacotes como o iptables. Se você configurou anteriormente um filtro de pacotes, essa é uma camada adicional. Se você configurou da maneira mais comum, todas as portas serão fechadas por esse filtro de pacotes, exceto as que você especificamente permitir. Como estes são configurados é descrito nos manuais do único filtro de pacote.
Além disso, outro dispositivo pode bloquear uma porta. Então, basicamente, se tudo passa pelo seu roteador, então ele pode ser parado ali e tem que ser configurado lá.
Mas, basicamente, uma porta é "aberta" assim que você tiver um aplicativo ouvindo essa porta. Se não houver escuta de aplicativo, os pacotes de dados serão descartados.