Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1368
  • Last Modified:

What port does sendmail send mail on?

Hi,

I would like to completely firewall my linux box's internet interface. I want to block all incoming packets and accept only outgoing packets from sendmail, as this is the only service that should need internet access. Does sendmail use port 25 for outgoing packets? Do I need any other ports open?

Also, when setting an iptables rule for OUTPUT packets, do I refer to the source port instead of the destination port?

Thanks
0
tomp_gl
Asked:
tomp_gl
  • 3
  • 2
  • 2
  • +1
6 Solutions
 
dekkarCommented:
Should be port 25, but it can be changed. If you dont have any other functions that need to access the net on that server, then 25 is the only port you need open.
0
 
giltjrCommented:
SMTP uses a destination port of 25 and a source port that is 1024 or greater.

For OUTPUT you use the destination port.

Typically for IP protocols the source port is a random port that is 1024 or greater.  You typically filter/block based on destination port.

0
 
tomp_glAuthor Commented:
The server will only be sending mail, not accepting it. Would I need to accept INPUT packets to established or related connections? Also, do I need to accept ping requests?

Essentially I want to do this:

# only let sendmail out
iptables -A OUTPUT -p tcp --dport 25 -j ACCEPT
iptables -P OUTPUT DROP
# let nothing in
iptables -P INPUT DROP

But will I need to keep any other source ports open for OUTPUT packets?

Thanks
0
Automating Your MSP Business

The road to profitability.
Delivering superior services is key to ensuring customer satisfaction and the consequent long-term relationships that enable MSPs to lock in predictable, recurring revenue. What's the best way to deliver superior service? One word: automation.

 
Kerem ERSOYPresidentCommented:
HI,

SMTP uses Port 25 by default. So does sendmail.

If you want to block incoming e-mail traffic then don't include any rules that allow port 25 among your iptables rules.

But when sendmail wants to send mail to oustside the default

iptables -A input -m state --state ESTABLISHED,RELATED -j ACCEPT

rule will allow your SMTP server to connect to outside SMTP servers over the default SMTP port.
0
 
Kerem ERSOYPresidentCommented:
If all you want is this then you don't need any other ports. But you might like servers to access your DNS if it is located at the same segment though.

0
 
tomp_glAuthor Commented:
If sendmail is using a random source port then I should probably accept all OUTPUT packets... are there any security ramifications to this?
0
 
Kerem ERSOYPresidentCommented:
You've already accomplsh this.

to say --dport=25 means --sport 0:65535 also. so you don't need another port.
0
 
giltjrCommented:
Typically you allow anything out.  If you want to allow only specific packets out, then you want to allow based on destination port, not source port.

So:

# let sendmail out
iptables -A OUTPUT -p tcp --dport 25 -j ACCEPT
# let DNS queries out, both TCP and UDP
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -P OUTPUT DROP

Then use the entry that KeremE had in his post

# allow inbound TCP traffic if we established the connection outbound
iptables -A input -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT DROP

However, this means that NOTHING other than smtp and DNS queries gets OUT.  You can't surf the web, you can't ftp, you have NO way to get patches/updates from the network.

Again, typically any traffic is allowed out and only inbound traffic is filters.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 3
  • 2
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now