A resposta simples é um firewall, claro.
No Windows (Vista ou posterior), o Firewall do Windows integrado é realmente muito bom; para versões mais antigas do Windows (ou as mais recentes também se você não gostar do Firewall do Windows por qualquer motivo), eu recomendo o ZoneAlarm ou o Comodo (tive boas experiências com ambos).
No Linux, eu uso o Shorewall como uma interface de configuração para o iptables / iproute, mas isso é bastante complicado para alguém inexperiente com operações de firewall de baixo nível e um entendimento prático de rede. Infelizmente, nunca usei mais nada no Linux, então não tenho recomendações aqui.
Sua outra opção é sair e comprar um roteador barato - um básico pode ser adquirido por apenas US $ 20. Agora, NAT não é realmente uma "verdadeira" linha de defesa, mas eu certamente reconheço que é bom em filtrar muito do lixo lá fora.