IP Firewalling by DNS name
neuhauser at sigpipe.cz
Wed Jun 1 08:45:28 PDT 2005
# bruce at nikkel.com / 2005-05-31 19:48:33 +0200:
> On Tue, May 31, 2005 at 04:43:16PM +0200, Ivan Voras wrote:
> > Is it possible to use ipfw to filter packets by domain name?
> > What I need it for: I'd like to allow ssh logins only from a specific
> > TLD (by reverse lookup...) - maybe there's another way?
> Access control based on the reverse lookup of an IP address is a
> dangerous idea in general. Anyone who manages their own reverse DNS
> could bypass the security simply by creating a DNS entry. If someone
> controls the in-addr.arpa zone for a particular IP range, they can make
> those IPs resolve with any FQDN they want, even with domains they don't
When you look at it from the "right" angle, dns actually involves NO
ip adresses (except nothing else makes sense in NS RRs (Resource
Records)). All you have is FQDN -> value mappings. In the case of
PTR RRs (socalled "reverse dns"), the domain name is
D.C.B.A.in-addr.arpa. for an IP address of A.B.C.D (that association
is basically by convention :). The value could be "my grandma is 78
years old" FWIW. Again, there's really nothing special about the
in-addr.arpa. domain: in-addr is a subdomain of arpa just like freebsd
is a subdomain of org, and both org and arpa are children of the
nameless root, which is the empty string to the right of the last dot
(often implied) in each dns record: "www.freebsd.org" is actually
a shorthand for "www.freebsd.org.".
The problem can be mitigated by checking whether there's a
corresponding A or CNAME RR, IOW whether
D.C.B.A.in-addr.arpa. -> whatever.example.org. -> A.B.C.D
(this kind of check is quite common in MTA configurations).
To bring this back closer to the topic: I know for fact that pf (in
OpenBSD at least) accepts hostnames instead of addresses, but you
better make sure your resolv.conf is in good shape, and it resolves
the names when it *loads* the rule (you need to be passing dns
traffic at that point). But this still isn't what the OP asked
How many Vietnam vets does it take to screw in a light bulb?
You don't know, man. You don't KNOW.
Cause you weren't THERE. http://bash.org/?255991
More information about the freebsd-stable