Re: Problem with firewalld/iptables and ftp access list?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2 Oct 2016 at 14:45, Gordon Messmer wrote:

Subject:        	Re: Problem with firewalld/iptables and ftp access list?
To:             	 	Community support for Fedora users 
<users@xxxxxxxxxxxxxxxxxxxxxxx>
From:           	Gordon Messmer <gordon.messmer@xxxxxxxxx>
Date sent:      	Sun, 2 Oct 2016 14:45:23 -0700
Send reply to:  	Community support for Fedora users 
<users@xxxxxxxxxxxxxxxxxxxxxxx>

> On 10/02/2016 04:48 AM, Michael D. Setzer II wrote:
> > The modeprobe nf_conntrack_ftp doesn't output any messge or error? Not 
> > sure what it is suppose to output.
> 
> It shouldn't output anything.  In your iptables rules you find these:
> 
> -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
> -A IN_public_allow -p tcp -m tcp --dport 21 -m conntrack --ctstate NEW 
> -j ACCEPT
> 
> When an FTP client connects to your server, it connects to port 21 which 
> is allowed by the second rule quoted above.  The purpose of the 
> nf_conntrack_ftp module is to examine FTP traffic to determine which new 
> connections should be allowed by the former rule.  When a client makes a 
> PASV mode connection, it will make additional connections to high 
> numbered ports for data transfers (including retrieving the output of 
> commands like "LIST").  That connection should be RELATED, and so 
> allowed by the former rule.  It seems that for some reason, your system 
> isn't allowing such connections.
> 
> I'll note several things.
> 
> First, I'm unable to reproduce the problem on a mostly up-to-date Fedora 
> 24 system (still running kernel 4.7.4-200.fc24.x86_64 until I reboot).
> 

Don't know when it exactly started, since I was off-Island for the summer and 
had remotely upgraded the systems from Fedora 23 to 24. Think I noticed 
the ftp issue originally in late August or Early September.  I generally update 
machines often, so are currently running the latest kernels with all updates.  
On main machine, I have a script that uses plink to connect to the other 
systems and run the updates to keep all machines updated. Some of its 
options use ftp to download updated files to other systems.


> Second, your iptables rules are a mess.  For some reason, there are 
> multiple rules allowing connections to TCP ports 21 and 22 in the 
> IN_public_allow chain.  I don't know any reason that would be a problem 
> per se, but it probably indicates that something else is wrong with the 
> system.
> 

After I noticed the ftp wasn't working, I tried manually adding the ports to see 
if it was an issue with the ftp option not doing something, but it made no 
difference, and just didn't undo it?  I had also tried on another system to 
activate vsftpd and got the same results, so it wasn't something on the main 
machine?


> Third, you definitely should not be running both the iptables and 
> firewalld services, simultaneously.

I was thought that firewalld was actually a front-end to iptables?? 
When I checked status they are generally both running, but sometimes I 
seen one listed as dead, but don't recall which one it was or if it may have 
been both at times.
> 
> Fourth, the reason that removing "-A INPUT -j REJECT --reject-with 
> icmp-host-prohibited " from your rules fixes the problem is that 
> removing that rule allows all traffic.  firewalld rules, generally, 
> allow traffic indicated by policy first, and then REJECT everything 
> else.  When you remove the rule that REJECTS everything else, you're 
> allowing the traffic that's allowed by policy and all other traffic hits 
> the policy which is ACCEPT.  Removing that rule is the same as turning 
> off the firewall, except that you still spend the CPU time examining 
> traffic for not reason.
> 

The systems are I7 machine with quad cores and hyperthreading and 8G of 
Ram running on a 1G ethernet in classroom. 

> The problem has been confirmed by Ed and by Alfonso, who opened the bug 
> report, but it isn't universal, since it doesn't affect the one system I 
> tested.  More details are needed.  If it's actually a problem with 
> nf_conntrack_ftp, your kernel version would be helpful, for one.  It may 
> also be helpful to get a network capture.  I used "ngrep" to capture the 
> following FTP sessions, one PASV and the other PORT.
> 
> 
> 
> 
> ####
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    220 (vsFTPd 3.0.3)..
> ##
> T 10.1.10.50:39498 -> 10.1.10.94:21 [AP]
>    FEAT..
> ##
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    211-Features:..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
> EPRT.. EPSV.. MDTM.. PASV.. REST STREAM.. SIZE.. TVFS.. UTF8..211 End..
> ##
> T 10.1.10.50:39498 -> 10.1.10.94:21 [AP]
>    OPTS UTF8 ON..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    200 Always in UTF8 mode...
> #
> T 10.1.10.50:39498 -> 10.1.10.94:21 [AP]
>    USER ftpuser..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    331 Please specify the password...
> #
> T 10.1.10.50:39498 -> 10.1.10.94:21 [AP]
>    PASS ftpuser..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    230 Login successful...
> #
> T 10.1.10.50:39498 -> 10.1.10.94:21 [AP]
>    PWD..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    257 "/" is the current directory..
> #
> T 10.1.10.50:39498 -> 10.1.10.94:21 [AP]
>    PASV..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    227 Entering Passive Mode (10,1,10,94,114,151)...
> ####
> T 10.1.10.50:39498 -> 10.1.10.94:21 [AP]
>    LIST..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    150 Here comes the directory listing...
> #
> T 10.1.10.94:29335 -> 10.1.10.50:49489 [AP]
>    -rw-r--r-- 1 0  00 Oct 02 21:07 test..
> #####
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    226 Directory send OK...
> #
> T 10.1.10.50:39498 -> 10.1.10.94:21 [AP]
>    QUIT..
> ##
> T 10.1.10.94:21 -> 10.1.10.50:39498 [AP]
>    221 Goodbye...
> ##
> T 10.1.10.50:39498 -> 10.1.10.94:21 [R]
>    ......
> #
> T 10.1.10.50:39498 -> 10.1.10.94:21 [R]
>    ......
> 
> 
> 
> ####
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    220 (vsFTPd 3.0.3)..
> ##
> T 10.1.10.50:39500 -> 10.1.10.94:21 [AP]
>    FEAT..
> ##
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    211-Features:..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
> EPRT.. EPSV.. MDTM.. PASV.. REST STREAM.. SIZE.. TVFS.. UTF8..211 End..
> ##
> T 10.1.10.50:39500 -> 10.1.10.94:21 [AP]
>    OPTS UTF8 ON..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    200 Always in UTF8 mode...
> #
> T 10.1.10.50:39500 -> 10.1.10.94:21 [AP]
>    USER ftpuser..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    331 Please specify the password...
> #
> T 10.1.10.50:39500 -> 10.1.10.94:21 [AP]
>    PASS ftpuser..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    230 Login successful...
> #
> T 10.1.10.50:39500 -> 10.1.10.94:21 [AP]
>    PWD..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    257 "/" is the current directory..
> #
> T 10.1.10.50:39500 -> 10.1.10.94:21 [AP]
>    PORT 10,1,10,50,142,235..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    200 PORT command successful. Consider using PASV...
> #
> T 10.1.10.50:39500 -> 10.1.10.94:21 [AP]
>    LIST..
> ####
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    150 Here comes the directory listing...
> #
> T 10.1.10.94:20 -> 10.1.10.50:36587 [AP]
>    -rw-r--r-- 1 0  00 Oct 02 21:07 test..
> #####
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    226 Directory send OK...
> ##
> T 10.1.10.50:39500 -> 10.1.10.94:21 [AP]
>    QUIT..
> #
> T 10.1.10.94:21 -> 10.1.10.50:39500 [AP]
>    221 Goodbye...
> ####
> T 10.1.10.50:39500 -> 10.1.10.94:21 [R]
>    ......
> #
> T 10.1.10.50:39500 -> 10.1.10.94:21 [R]
>    ......
> #
> T 10.1.10.50:39500 -> 10.1.10.94:21 [R]
>    ......
> 

I had used wireshark to monitor while doing the connection, but wasn't 
seeing any traffic between the ls command and the failure. What process 
were you using to capture the above information??

Again, Thanks for the time. I'm assuming, that this isn't a 100% problem, but 
might be some specific combinations of things that are causing the issue.  I 
was originally using UnixWare long ago, at the college, and then started with 
Redhat 9, and have gone thru versions to the latest Fedora 24. 




> _______________________________________________
> users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx
> To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx


+----------------------------------------------------------+
  Michael D. Setzer II -  Computer Science Instructor      
  Guam Community College  Computer Center                  
  mailto:mikes@xxxxxxxxxxxxxxxx                            
  mailto:msetzerii@xxxxxxxxx
  Guam - Where America's Day Begins                        
  G4L Disk Imaging Project maintainer 
  http://sourceforge.net/projects/g4l/
+----------------------------------------------------------+

http://setiathome.berkeley.edu (Original)
Number of Seti Units Returned:  19,471
Processing time:  32 years, 290 days, 12 hours, 58 minutes
(Total Hours: 287,489)

BOINC@HOME CREDITS
ABC         16613838.513356 | EINSTEIN   114625025.788695
ROSETTA     49527492.658188 | SETI        92927032.772384
_______________________________________________
users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx



[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux