O argumento setup
está relacionado ao que a regra corresponde. Nesse caso, ele corresponde ao primeiro pacote de handshake de 3 vias do TCP, no qual o cliente envia um pacote SYN ao servidor.
O argumento keep-state
é uma instrução sobre o que fazer após a correspondência da regra. Neste caso, diz para permitir todos os outros pacotes, uma vez que o primeiro pacote tenha sido enviado.
O padrão setup keep-state
é geralmente usado para conexões de saída, não para conexões de entrada, como você fez neste exemplo.