SlideShare a Scribd company logo
DansGuardian Open Source Content Filtering Andrew Vandever RHC{T,E,I,X} [email_address] http://avcomp.net
DansGuardian What Is DansGuardian?
Installing DansGuardian
Basic Configuration
List Management
Filter Groups
Advanced Url Matching with RegExp
Further Resources
What Is DansGuardian? Content Filter Offensive Content
Time-Wasters
Malware Logging
User-Based Management Squid Users
Ident
IP Addresses
What Is DansGuardian? Comparable to WebSense, SonicWall
Pairs with Proxy Squid
TinyProxy
Other Scalable
Easy to Install Fedora/EPEL

More Related Content

PDF
Nginx + PHP
PDF
honeyTLS - Profiling and Clustering Internet-wide SSL/TLS Scans with JA3
PDF
Varnish Cache and Django (Falcon, Flask etc)
ODT
Squid file
PDF
Nginx cheat sheet
PPT
Lightweight DAS components in Perl
PDF
WordPress Security - A Top Down Approach
PDF
Keeping your rack cool
Nginx + PHP
honeyTLS - Profiling and Clustering Internet-wide SSL/TLS Scans with JA3
Varnish Cache and Django (Falcon, Flask etc)
Squid file
Nginx cheat sheet
Lightweight DAS components in Perl
WordPress Security - A Top Down Approach
Keeping your rack cool

What's hot (20)

PDF
Protect your edge BGP security made simple
PDF
IBCAST 2021: Observations and lessons learned from the APNIC Community Honeyn...
PDF
HTTPS Explained Through Fairy Tales
PDF
FastNetMonを試してみた
PDF
Passive DNS Collection -- the 'dnstap' approach, by Paul Vixie [APNIC 38 / AP...
PDF
Passive DNS Collection – Henry Stern, Cisco
PDF
DNSSEC signing Tutorial
PDF
Webserver Architecture Example
PDF
Universal DDoS Mitigation Bypass
PDF
Hydra - Getting Started
PDF
Efficient HTTP Apis
PDF
Fighting Abuse with DNS
PDF
Introduction To The DANE Protocol (DNSSEC)
PDF
Caching the Uncacheable
PDF
DNS High-Availability Tools - Open-Source Load Balancing Solutions
PDF
Defending Against Application DoS attacks
PDF
Analyse Tweets using Flume, Hadoop and Hive
PDF
Beyond basic web development
PDF
The DNSSEC KSK of the root rolls
DOCX
How to force google safe search
Protect your edge BGP security made simple
IBCAST 2021: Observations and lessons learned from the APNIC Community Honeyn...
HTTPS Explained Through Fairy Tales
FastNetMonを試してみた
Passive DNS Collection -- the 'dnstap' approach, by Paul Vixie [APNIC 38 / AP...
Passive DNS Collection – Henry Stern, Cisco
DNSSEC signing Tutorial
Webserver Architecture Example
Universal DDoS Mitigation Bypass
Hydra - Getting Started
Efficient HTTP Apis
Fighting Abuse with DNS
Introduction To The DANE Protocol (DNSSEC)
Caching the Uncacheable
DNS High-Availability Tools - Open-Source Load Balancing Solutions
Defending Against Application DoS attacks
Analyse Tweets using Flume, Hadoop and Hive
Beyond basic web development
The DNSSEC KSK of the root rolls
How to force google safe search
Ad

Similar to DansGuardian open source content filtering (20)

ODP
Ubuntu And Parental Controls
PDF
Null bhopal Sep 2016: What it Takes to Secure a Web Application
PPT
Download It
PPT
Squid server
DOCX
Debian graylog logging server.docx
PDF
Squid, SquidGuard, and Lightsquid on pfSense 2.3 & 2.4 - pfSense Hangout Janu...
PPT
Securing Network Access with Open Source solutions
PDF
How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...
PDF
Running the Apache Web Server
PPT
bh-us-02-murphey-freebsd
PDF
Aeon mike guide transparent ssl filtering
PDF
Aeon mike guide transparent ssl filtering (1)
PDF
Using aphace-as-proxy-server
PPTX
PPTX
How to test if Cloudflare is running live for your website
PPTX
Palo Alto Networks authentication
PPTX
Xdebug
PPTX
Oscon 2011 - ATS
PDF
Usint Charles Proxy to understand REST
PPT
Apache
Ubuntu And Parental Controls
Null bhopal Sep 2016: What it Takes to Secure a Web Application
Download It
Squid server
Debian graylog logging server.docx
Squid, SquidGuard, and Lightsquid on pfSense 2.3 & 2.4 - pfSense Hangout Janu...
Securing Network Access with Open Source solutions
How to turn any dynamic website into a static site | 24.01.2018 | Artem Danil...
Running the Apache Web Server
bh-us-02-murphey-freebsd
Aeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filtering (1)
Using aphace-as-proxy-server
How to test if Cloudflare is running live for your website
Palo Alto Networks authentication
Xdebug
Oscon 2011 - ATS
Usint Charles Proxy to understand REST
Apache
Ad

Recently uploaded (20)

PDF
Spectral efficient network and resource selection model in 5G networks
PPT
Teaching material agriculture food technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
KodekX | Application Modernization Development
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Cloud computing and distributed systems.
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
Spectral efficient network and resource selection model in 5G networks
Teaching material agriculture food technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Programs and apps: productivity, graphics, security and other tools
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Machine learning based COVID-19 study performance prediction
Understanding_Digital_Forensics_Presentation.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
NewMind AI Weekly Chronicles - August'25 Week I
KodekX | Application Modernization Development
Chapter 3 Spatial Domain Image Processing.pdf
Encapsulation_ Review paper, used for researhc scholars
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
The AUB Centre for AI in Media Proposal.docx
Diabetes mellitus diagnosis method based random forest with bat algorithm
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Cloud computing and distributed systems.
Advanced methodologies resolving dimensionality complications for autism neur...

DansGuardian open source content filtering

Editor's Notes

  • #4: Schools, businesses and even home users have a lot to lose from their workstation users accidentally or intentionally accessing offensive content, time-wasting content, or malware. DansGuardian protects your network from all three. DansGuardian logs to /var/log/dansguardian/access.log. Directives in the configuration can tell DG to log in squid format, making it easy to analyze the logs later with tools like calamaris.
  • #5: TinyProxy uses far fewer resources than squid, making it very nice for home use. However, you give up 3 of 5 of your authentication mechanisms. Squid is also probably better for an environment with many users. DG forks similar to Apache HTTPD. EPEL, of course, being “Extra Packages for Enterprise Linux”. You could also grab the source from dansguardian.org.
  • #6: Smoothwall gives a commercial packaging and support for DG. Either the browser intentionally used DG as a proxy, or the firewall intercepts the traffic, redirecting it to DG. Explicit-proxy is better, but more difficult to manage. Transparent-proxy is easier to manage, but gives you less flexibility when it comes to traffic like SSL, as well as cutting out 3 of 5 of DG's auth mechanisms. For SSL, sending the traffic directly to squid is typically a better idea.
  • #10: Examples: Gateway is 10.0.0.1, dg box is 10.0.0.2 iptables -t nat -A FORWARD -s 10.0.0.2 -j ACCEPT iptables -t nat -A FORWARD -m tcp -p tcp –dport 80 ! -d 10.0.0.0/8 -j DNAT –to-destination 10.0.0.2:8080 iptables -t filter -A FORWARD -m tcp -p tcp –dport 3128 ! -d 10.0.0.2 -j REJECT iptables -t filter -A FORWARD -m tcp -p tcp –dport 8080 ! -d 10.0.0.2 -j REJECT iptables -t filter -A FORWARD -m tcp -p tcp –dport 8888 -j REJECT iptables -t filter -A FORWARD -m tcp -p tcp –dport 443 -j REJECT iptables -t filter -A FORWARD -j LOG Service iptables save Now, make sure you set squid on 10.0.0.1 to listen to port 80 only from loopback (DG), but 443 from all clients
  • #11: Examples: Redirect box's own traffic to dg iptables -t nat -A OUTPUT -m owner --uid-owner squid -j ACCEPT iptables -t nat -A OUTPUT -m tcp -p tcp –dport 80 -j DNAT –to-destination 127.0.0.1:8080 iptables -t filter -A OUTPUT -m tcp -p tcp --dport 3128 -j REJECT iptables -t filter -A OUTPUT -m tcp -p tcp –dport 8080 -j REJECT iptables -t filter -A OUTPUT -m tcp -p tcp --dport 8888 -j REJECT iptables -t filter -A OUTPUT -j LOG service iptables save
  • #12: The default BIND (named) configuration in fedora will perform recursive lookups for localhost, and cache the results. With just a little bit of tweaking you can also use this as the nameserver for the workstations on your network. The way certain sites (like facebook.com) do dns-based load-balancing can make DG think you're being spoofed. Local lookups prevent this, although the strict behavior is disabled in DG by default in current versions. Contentscanner can set all your incoming content to be virus-scanned. Downloadmanager will try to assist with download speed, but can break large downloads in some cases.
  • #13: shallalist.de is free for non-commercial use. urlblacklist.com costs money to use. Some on the mailing list tell me shallalist is better anyway.
  • #18: Unfortunately you have to put “filterX” in your groupslist, even if you specify a groupname in your dansguardianfX.conf for the group. Many sites will have a default group that has zero access to the internet, forcing users to login to get any access. In a DHCP setting, you might use ip auth to place most users in a default group, but set permanent leases for frequent users who you want to place in a different group.
  • #19: Anything you can do in Perl, you can do here, but keep in mind it's perlre, not PCRE.