Файрвол не воюет с вирусами. Он при необходимости открывает и закрывает порты в интернет для ваших программ, например, uTorrent-у для скачивания или раздачи или браузеру - для посещения сайтов, или какой-то программе - для обновления. Другие порты он держит закрытыми, чтобы снаружи никто по свободному порту не влез к вам в комп. А их ( портов) не много не мало - больше 65 тысяч. Он хранит в себе список программ и какой программе какой порт открывать. Но иногда или программы нет в его памяти или какой-то сбой - и он не открывает нужный порт - программа не может выйти в инет. Вот тут-то вам ручками приходится открывать порт программе, чтобы она могла нормально функционировать.
Сейчас все большее применение находят комплексные программы (антивирус + файрвол), один открывает порты, а второй отлавливает вирусы, которые лезут через них. Если вы установили свой файрвол, то штатный (виндовый) нужно отключить.