[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
howtos:network_services:postfix_dovecot_mysql:email_firewall [2015/06/10 08:10 (UTC)] – typo fix and clarification of example firewall.rules file timhowtos:network_services:postfix_dovecot_mysql:email_firewall [2018/02/06 01:17 (UTC)] (current) – [Firewall Rules For Virtual Mail Server] astrogeek
Line 8: Line 8:
  
 <note important>Loading //only// the rules below as your firewall will close other access that may be important to you such as http and ssh! <note important>Loading //only// the rules below as your firewall will close other access that may be important to you such as http and ssh!
-You should first use iptables -L to check for pre-existing rules and merge those below into your existing firewall+You should first use iptables -L to check for pre-existing rules and __merge those below into your existing firewall__
-If you have no existing firewall and need to allow http and ssh, uncomment the lines for those also included here.</note>+If you have no existing firewall and/or need to allow http and ssh, uncomment the --policy lines and those for http and ssh as necessary to meet your requirements.</note>
  
-Following is a minimal set of iptables rules to provide a firewall for your email server.+Following is a **minimal** set of iptables rules to provide a firewall for your email server. While 
  
 <code> <code>
 +#--policy INPUT DROP
 +#--policy FORWARD DROP
 +#--policy OUTPUT ACCEPT
 +
 -A INPUT -m state --state INVALID -j DROP -A INPUT -m state --state INVALID -j DROP
 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Line 55: Line 59:
  
 To install these rules as your firewall save them to a text file using <code>iptables-save >/etc/firewall.rules</code> then load that file using iptables-restore as shown below. This will replace any currently existing iptables rules with those in the file. To install these rules as your firewall save them to a text file using <code>iptables-save >/etc/firewall.rules</code> then load that file using iptables-restore as shown below. This will replace any currently existing iptables rules with those in the file.
- 
-<note>If you get a "line 1 failed" error message you probably tried using the above example for your firewall.rules file. If you want to do this, you will need to add the following to the beginning of the file  
-<code>*filter 
-:INPUT DROP [0:0] 
-:FORWARD DROP [0:0] 
-:OUTPUT ACCEPT [0:0] 
-</code> 
-and to the end of the file, add <code>COMMIT</code> on a line on its own. 
-As per the note above, don't forget to uncomment the ssh rule if the server is not sitting in front of you, or you'll lock yourself out!</note> 
  
 There are many preferences for saving and loading firewall scripts. I generally use /etc/firewall.rules for my own systems and will use that for this example. There are many preferences for saving and loading firewall scripts. I generally use /etc/firewall.rules for my own systems and will use that for this example.
 howtos:network_services:postfix_dovecot_mysql:email_firewall ()