Das sollte mit iptables alles moeglich sein. Allerdings wuerde ich da sehr sorgfaeltig vorgehen, da eine FW ja normalerweise zwischen trusted und untrusted Netzen trennt. Bei Dir liegt ein semitrusted Netz (Nachbar) im untrusted Netz (DSL Router).
Die saubere Loesung waere alle drei Netze mit einem separaten NIC an Deine LinuxKiste/FW anzuschliessen. Dann kannst Du auch alles protokollieren, was da so alles von Deinem Nachbar getrieben wird (DSL Anschluss Haftungsfrage, s.u.).
Ich verstehe Deine Frage nach Ports so, dass Du wissen willst, was Du fuer Deinen Nachbar freischalten musst wenn er auf Dein HeimNetz zugreifen koennen soll. Du hast da was mit ftp, http, usw. Ich denke Du willst ihm nur erlauben auf Netzwerkshares zuzugreifen oder hast Du vor einen Webserver mit allem drum und dran anzubieten? Kann ich mir nicht vorstellen

. Die Idee die Internetverbindung zu scharen finde ich gut (Rechtliche Konsequenzen beachten! Der Eigentuemer des DSL Routeres haftet!) - ich wuerde Eure beiden Netze nur uneingeschraenkt verbinden wenn da keiner sitzt, der jegliche neue Shareware/Demo et al ausprobiert :!: .
Wie schon oben erwaehnt sind die Ports 135, 137, 139 und 445 (ich glaube die warns :roll

Ich wuerde mir das allerdings schon ueberlegen diese nach extern freizugeben... Als Alternative - d.h. wenn Du nur Dateien austauschen willst, kannst Du doch auf Deinem Linux ein Samba zum fliegen bringen und eine gemeinsame Platte zwischen beiden Netzen sharen. Dann musst Du nur Deinen Nachbarn auf Deine LinuxKiste und SambaPorts zulassen und Du bist sicher, dass kein Virus von dem bei Dir Unfug anrichtet.