Misunderstanding mail protocols
Well, I'm trying to setup a home email server, and I'm using Postfix and openwall popa3d for my pop3 and smtp server. The smtp server sends fine, but I didn't want to even risk spammers using it, so I closed it off to the outside world. For some strange reason, this prevented me from actually receiving mail on pop3. I couldn't figure this out until I tried sending mail through gmail, and watched my shorewall log at the same time. I caught this
Having IPWhois'd GoogleBot a few times, I instantly recognized the SRC as Google, and realize that for some reason, it had to connect to SMTP to send mail to me. So, I opened up SMTP to the outside world, and everything works now.
...SRC=188.8.131.52 DST=192.168.0.3 LEN=60 TOS=0x00 PREC=0x00 TTL=48 ID=14198 PROTO=TCP SPT=56212 DPT=25 WINDOW=5720 RES=0x00 SYN URGP=0
This goes against everything I know about email, which really isn't that much anyway. I'm wondering if this is right, or if there is a problem here. I wouldn't think I'd need SMTP open to receive mail to my POP3 server, but without SMTP being open, nothing will get through.
Secondly, if I really do need SMTP to be open, what's the best way to harden it to prevent spammers using it?