SlideShare a Scribd company logo
1 of 29
Download to read offline
Squid, SquidGuard, and Lightsquid
On pfSense 2.3 & 2.4
January 2017 Hangout
Jim Pingle
About this Hangout
● Project News
● Squid, SquidGuard,
LightSquid Intro
● HTTPS Interception
Overview
● Installing the packages &
prep work
● Squid Configuration
● Transparent Proxy
● SSL/TLS Interception
configuration & Testing
● Anti-Virus in Squid
● SquidGuard
● Lightsquid
● Browser Testing hints
● Monitoring
Project News
● pfSense exceeded 500,000 active installs in December!
● pfSense Code Audit
– Audit was performed by an independent consulting firm, InfoSec Global
– Full results at
https://www.netgate.com/blog/netgate-taps-infosec-global-for-pfsense-code-revie
w.html
● Fortinet, Cisco, and pfSense are ranked as the leading firewalls of 2016
based on peer reviews
– http://www.prweb.com/releases/2017/01/prweb13984638.htm
● NET-SNMP package available for pfSense 2.4
– More secure, IPv6 support, SNMPv3, encrypted transport, user or TLS auth,
extendable with custom commands, better trap handling/generation
● Updated trademark policy: https://blog.pfsense.org/?p=2273
● 2.4 getting closer!
What are
Squid/SquidGuard/LightSquid?
● Squid is a caching proxy for HTTP and other protocols
– Can speed up access by locally caching commonly loaded sites/objects
– Can save bandwidth by reducing multiple duplicate downloads
– Allows further action on web traffic (access control, reporting)
● SquidGuard is used for access control based on the domain or URL
requested by a client
– Decisions can be made to allow or deny access based on client and/or
destination
– Blocked sites can be redirected to an error page in most cases
– Custom lists of sites or preset blacklists from other sources
● Lightsquid is used for reporting web access history
– Parses squid access log, notes who went where, how much bandwidth they used
– Has reports for daily use, monthly use, etc.
Will Squid Work for Me?
●
Without squid, the firewall cannot take an action based on the contents of HTTP/HTTPS packets
– In pf, all that may be seen is the destination IP address and port number, not hostname
– Hostnames can resolve to many IP addresses, or random sets, and cannot be effectively tracked with aliases
in many cases though pfBlocker can assist here with AS tracking in some cases.
– As a proxy, squid sees the whole HTTP transaction including the requested site name
●
Squid can easily transparently capture HTTP content, not HTTPS
– HTTPS can be handled in a few ways that we will cover
●
Squid is not easily compatible with Multi-WAN
– Default gateway switching gets failover, but Load Balancing is not possible/practical
●
SquidGuard tests based on client and destination URL, not page content
●
Squid can help by caching static content, but many pages are dynamic and may not cache well or
at all so the savings may not significant
– Caching dynamic content could also prevent a page from working properly
●
At this time, squid cannot transparently intercept IPv6 traffic on FreeBSD/pfSense, so IPv6 must
be disabled or it could be used to bypass the proxy
●
DNSBL from pfBlocker is a viable alternative to proxying in some cases
HTTPS Interception
● Squid can intercept HTTPS (SSL, TLS) in some cases to see all or part of the client communication
● Breaking the chain of trust by acting as a Man-in-the-Middle is a very bad idea
– It could be illegal, check local laws/regulations
– Unless users are notified, it is unethical
– Users will no longer see invalid certificate messages, squid must decide whether or not to trust servers
● Several modes with varying levels of intrusion
– Bump – Allows squid to be a MITM and present a fake certificate, handling separate TLS connections from client and to server
– Peek - Lets squid peek inside the SSL negotiation to see things like SNI, can't bump after but can splice
– Stare - Like peek, but can bump after and not splice
– Splice - become a TCP tunnel without decrypting traffic. Client and server exchange data as if there is no proxy
● Peek & Splice is a simple way to unobtrusively filter HTTPS at least by hostname without intruding on client
privacy
– It can only see the hostname but in the majority of cases that is enough to determine if a site should be blocked by squidGuard
● Bump requires installing a self-signed Certificate Authority onto all clients and client browsers so the clients will
trust fake certificates generated by squid
– NOT viable for public networks like a guest network, cafe, hotel, airport, etc!
– Generally only viable for small networks or networks under control of AD or similar with GPO
What can Squid See/Act on?
●
Full contents of HTTP are available in any mode
●
Direct means proxy settings in client OS/browser or WPAD type setup where the client knows
proxy & connects
●
Transparent means the client does not know a proxy is in place
● Peek & Splice checks SSL negotiation packets but does not interfere with end-to-end connection
security. It cannot redirect to an error page, only prevent the connection from completing
●
SSL MITM bump decrypts contents of connection, breaks chain of trust
●
Being able to see “Page Contents” means that scanning (e.g. ClamAV) and caching is possible
Squid Mode HTTPS
Destination
Host
HTTPS
Request
URL
HTTPS
Page
Contents
Self-Signed
CA on
Clients
Error
Page
Redirect
Direct ✓ HTTP Only
Transparent HTTP Only
D+Peek&Splice ✓ HTTP Only
T+Peek&Splice ✓ HTTP Only
D+MITM/Bump ✓ ✓ ✓ ✓ ✓
T+MITM/Bump ✓ ✓ ✓ ✓ ✓
Install Packages & Prep
●
Before anything can be done, the packages must be installed and
configured
●
System > Package Manager, Available Packages tab
●
Find/install Squid, SquidGuard, Lightsquid, whichever will be used
● Create a Self-Signed CA if using Peek & Splice or MITM
– System > Cert Manager, CAs tab
– Click Add, set Method to Create Internal
– Fill in the Name and other details with sensible values
– Click Save
●
If you will use SSL/TLS MITM, create a server certificate for the GUI
– It can be used for redirects from SquidGuard or AV and the clients will trust it
– Use hostname as CN, hostname as SAN, add IP addresses as SAN entries
Basic Squid Configuration
● First get a basic configuration going before attempting anything complicated
● Services > Squid Proxy Server
● Setup Local Cache tab first
– Defaults are fine for most
– Set Hard Disk Cache Size (in MB)
● Large cache eats more RAM! On 64-bit systems squid uses 14MBytes of RAM per 1GB of cache
– Hard Disk Cache System
● Set to “null” when using RAM disks or when only filtering with squidGuard, not caching
– Memory Cache Sizes
● Tune to system RAM
● Actual memory usage will be higher, this is only RAM cache size, not total RAM used by squid
– Object Sizes
● Minimum Object Size: Smaller than this not saved to disk
● Maximum Object Size: Larger than this not saved to disk. Speed = Low, Bandwidth saving = High
● Maximum Object Size in RAM: Smaller than this will be put in memory cache.
Basic Squid Configuration
● Squid General tab settings
– Check Enable Squid Proxy
– Check Keep Settings/Data
– Select Proxy Interfaces (e.g. LAN), always include Localhost
– Do not check Transparent HTTP Proxy yet, it could be disruptive – Get the basics
working first
– Do not check Enable SSL filtering yet, even if you want it – Get the basics
working first.
– Check Enable Access Logging, if you want to track where users are going
● Set rotate logs to 7
– Set the Visible Hostname and other related fields if you want them to appear in
the proxy headers
● If you want to hide the proxy, set X-Forwarded-For Header Mode to Delete, check Disable
VIA header, and check Suppress Squid Version
● Some places can still detect a proxy by testing request behavior
Basic Squid Configuration
●
ACLs tab
– Not normally necessary to touch, except perhaps to add more Allowed Subnets for
routed segments on internal interfaces
●
Traffic Mgmt tab
– Sizes are in Kilo*bytes*, not bits – Important to remember for the throttling settings.
Set to 0 to disable limits.
– Max down/up sizes – Careful, can break updates
– Throttling – Overall and per-host
– Throttle extensions
● Binary Files: bin, cab, sea, ar, arj, tar, tgz, gz, tbz, bz2, zip, 7z, exe, com
● CD images: iso, bin, mds, nrg, gho, bwt, b5t, pqi
● Multimedia: aif/aiff, asf, avi, divx, mov, mp3, mp4, wmv, mpg/mpeg, qt,ram/rm
● Other extensions
– Custom list, just put in the letters in the extension
– NO spaces between items!
– Example: vmx,vdi,ova
Basic Squid Configuration
●
Authentication
– Only viable with direct connections (user has proxy settings in OS/browser manually
or via GPO, WPAD)
– Local, RADIUS, LDAP
– No viable SSO option currently
– For Local, add users on Users tab
●
Testing initial setup
– Put proxy IP address & info into Firefox or a user's OS settings
– FF: Hamburger > Gear > Advanced > Network > Connection Settings, Manual,
enter firewall IP Address, Port
– Try some web requests, check access.log
– If access is not working, fix errors
– If access is working, move on to more advanced configuration
– Remove proxy info from browser if a transparent mode will be utilized
Squid – Transparent Proxy
● Now that the proxy is tested and working...
● Transparent proxy - Squid general tab, enable
– Choose the transparent proxy interfaces
– If you are connected to VPNs or other privately-numbered
networks, check Bypass Proxy for Private Address
Destination
– Fill in any other addresses to bypass for
source/destination, don't use website addresses here
● For hostnames, put them in an alias, use alias name here
● Can’t track large sites, but can track ones with simple, static
DNS results
Squid – SSL/TLS Peek & Splice
● SSL/TLS Peek & Splice
– Check Enable SSL Filtering
– SSL/MITM Mode
● Splice All: Will always splice every request
● Splice Whitelist, Bump Otherwise: Does what it says on the tin.
– When chosen, to splice all, Visit ACLs tab, enter .* in Whitelist or enter
specific sites to splice.
– Set SSL Intercept Interfaces
– Choose a self-signed CA
● Squid requires it to be set, but it isn’t used in this mode
– Select/enter nothing in the other fields of this section
Squid – SSL/TLS Interception
●
Setup SSL/TLS Man-in-the-Middle bump (interception)
– Squid General tab
– Check Enable SSL Filtering
– SSL/MITM Mode: Splice Whitelist, Bump Otherwise
– Set SSL Intercept Interfaces
– SSL Proxy Compatibility Mode:
●
Leave on modern unless users complain about security negotiation errors
– Choose a self-signed CA
– Daemon Children may need increased if the network is busy
– Set Remote Cert Checks and Certificate Adapt to taste, but both can be
left with nothing selected
– Visit ACLs tab after, make sure Whitelist is blank so everything will be
bumped
Squid – SSL/TLS Interception
● Install CA Certificate to clients
● Export CA Cerfificate only (not key): System > Cert Manager, CA tab
● Copy to client system(s), examples:
– Windows (IE, Chrome – NOT Edge!)
● Locate CA file on the client PC (e.g. MyCA.crt) & double click
● Click Install Certificate…, select Local Machine, Click Next
● Click Yes at the UAC prompt
● Select Place all Certificates in the following store
● Click Browse, then Trusted Root Certification Authorities
● Click Next, Finish, OK, OK
● May need a reboot
– OS X (Safari, Chrome)
● Double click CA File in Finder, enter login info & click Modify Keychain
● Locate the imported certificate under Login, All Items, drag the certificate onto System
● Click the Certificate, File > Get Info
● Expand Trust, Set When using this certificate to Always Trust
– Firefox (Any OS)
● Click Hamburger, Options, Advanced, Certificates Tab, View Certificates
● Click Import, Find & Pick the CA, Check all boxes
● Click OK, close and reopen Firefox
Squid – Testing SSL/TLS
Interception
● Open a browser and visit a secure site known to work before you started
● Peek & Splice
– Check the site cert, it should show the actual cert & trust info
– If a cert error is shown, check that SSL/MITM Mode is set to Splice All or that .* is
in Whitelist on ACLs tab
● Bump/MITM
– If a certificate error is shown, check the way the CA was imported, reboot/close &
reopen browser/etc
– If the request succeeded, check cert info, it should match your self-signed CA
– If it succeeded, no cert error, but shows original cert, then either the request did
not go through the proxy or squid is using peek & splice
● Check that SSL/MITM Mode is set to Splice Whitelist, Bump Otherwise
● Empty out Whitelist on ACLs tab
Squid – Anti-Virus (ClamAV)
● Downsides:
– Not all that effective overall, no gateway AV is
– Only viable for HTTP or SSL+MITM since it must inspect page contents
– Uses a LOT of RAM & CPU!
●
Won't run until AV DB is updated
● Services > Squid Proxy Server > Antivirus tab, Check Enable
●
Client forward: What info clamav will know about the client (Affects virus detected page)
● Enable Manual Config: Disabled – Do not use this unless you know clamav well!
●
Redirect URL: Leave blank to use the internal page
● Google Safe Browsing: Helpful, but consumes even more RAM
●
Exclude Audio/Video Streams: Check to reduce the burden on the scanner by not passing A/V traffic through
●
ClamAV DB Update: 6/24 hrs is probably OK for regular DB update. If using Google Safe Browsing, use 1 hr
●
Regional Mirror: Pick the one closest to this firewall
●
Advanced: Do not touch
● Click Save on AV tab & then Save again on General tab
●
Back to AV tab, Click Update AV – This will take a while to finish
● Add Squid AV Status widget to dashboard, wait for the "Last Update" to fill in
●
Test it out by trying to download EICAR file from client http://www.eicar.org/85-0-Download.html
● There are some additional custom databases that can improve detection, check forum
SquidGuard
● SquidGuard is used for allowing or denying based on the
URL requested by the client (e.g. domain name, part of
URL) and the client itself
● Does NOT filter based on text inside page
● Some parts of this package do not currently play well with
the Dark theme, so use Light theme
● SquidGuard Settings are at Services > SquidGuard
Proxy Filter
● After any change in squidGuard, return to this page and
click Apply
SquidGuard – General
● Check Enable to activate SquidGuard
● Logging options: Enable all, set rotation
● Clean Advertising: Looks for blacklists with _ads or _adv in name, URLs
in these lists get replaced with a blank image
● Blacklists:
– MESD – Free to use by all: http://squidguard.mesd.k12.or.us/
● Small lists, has some categories that are empty
– Shalla – Free for non-commercial use: http://www.shallalist.de/
● This does not seem to be maintained as actively as it was in the past
– Others: http://www.squidguard.org/blacklists.html
– Enable blacklists if you want, enter a URL to the .tgz to download
– Visit Blacklist tab after saving to download or update the list
– Even if you only intend to use blacklists, you must create at least one custom
Target Category!
SquidGuard – Target Categories
● Target Categories tab:
– Custom lists of sites to allow or deny, similar to blacklist categories
– Domain list can be entered, separated by spaces
● Blocks subdomains (e.g. facebook.com also blocks apps.facebook.com),
but does not block partial matches (e.g. notfacebook.com)
– URL list and Regex can also define patterns to match beyond the
domain name
● Remember: SSL Peek & Splice can only see domain name, not full URL!
– Redirect modes: Will cover shortly under ACLs
– If GUI is running HTTPS, redirected users will receive a cert error.
Recommend using an external redirect.
● If you are doing SSL MITM, create a WebGUI certificate signed by your
MITM CA so the users will already trust it!
SquidGuard – ACLs
● Common ACL - ACL for anyone not matched by a group ACL
● Target Rules List
– Choose access level for each category (custom or blacklist)
– Access types:
● “---” - No action taken for this later category
● allow – Allow if never blocked
– If the site is in a later category that is Denied, it will still be blocked!
● whitelist – Allow even if blocked
● deny – Do not allow access
● Default access
– Controls whether access to any site not in a blacklist is allowed or denied by default
– Default deny is more secure but much more of a headache to setup and maintain
● Do not allow IP Addresses in URL: Forces users to access sites by name rather
than IP address, which could bypass name-based checks
– This is known to break some services such as Netflix
● Proxy Denied Error: This text goes at the top of internal error pages
SquidGuard Configuration
● Redirect Mode
– Only valid for HTTP or HTTPS with SSL MITM, Peek & Splice will drop the connection harshly
– Select the type and enter a proper value in the box if needed.
– none - Deny content without displaying a formal error.
– Internal Error Page: Enter an error message in the box, displayed with other blocked page details
– Internal Blank Page: Returns an HTML page, but blank
– Internal Blank Image: Returns an image file, but blank (Useful for Ad blocking)
– External URL Error Page: Appears to the browser as the actual requested page
● Cannot include other files unless they are inline in the html (no external css, images, etc)
● Automatically has SquidGuard variables appended to pass the requested URL, client IP/name, group, target to the script
– External URL Redirect: Same as "External URL Error Page" except it does not append the request variables
– External URL Move: Redirects with 301
● Client browser is redirected to an external error page but in a way the client browser knows that it happens (301)
● 301 is a permanent redirect, and browsers will often cache it as such
● Since it is an external page, it can use any external resources you like
● Does not get the request variables appended, but you can add them yourself (?a=%a&n=%n&i=%i&s=%s&t=%t&u=%u)
● Because it is an external page in a separate request, your ACLs in squidGuard must allow access to the page if it is remote
– External URL Found: Redirects with 302
● Same as above but uses a 302 response
● 302 is temporary so the browser will keep trying the original URL for later requests
● Use SafeSearch engine
– For known search engines that support it, forces the use of the "safesearch" mechanism to prevent loading of adult
material
SquidGuard – Group ACLs
●
Similar to Common ACL but applies to only a specific set of users
●
Name – Custom name of the ACL (e.g. user's name, workgroup, set of users)
●
Order – Make sure to list more specific ACLs (e.g. 10.2.0.5) ahead of more general ones
(10.2.0.0/24) so that your desired actions will take place
●
Client (source): Determines what devices will match this ACL
– IP adresses, subnets, IP Ranges, hostnames, or usernames (if using user auth without transparent mode)
– Entries separated by space
●
Time – Schedule used for "off-time" decisions. Not covered in this presentation.
●
Target Rules
– Same mechanism as Common ACL
– Must specify an action for ALL categories for which an action should be taken
– Does NOT “fall through” to common ACL settings
– Left column is used with or without schedules
– If a time is chosen, left column is inside the time period, right column is outside
●
Other options are the same as Common ACL
LightSquid - Configuration
●
Requires logging from squid
●
Requires Proxy Interface in squid general settings to include Localhost
●
Runs using a separate web server process on the firewall, using a different port with its own
authentication
●
Lightsquid can be found in the GUI at Status > Squid Proxy Reports
●
Lightsquid Web Port, default is 7445 using SSL
●
Enter a custom user/pass to protect content
●
Report Template Settings
– Whatever you think looks best, such as English, NovoSea, Blue
●
IP Resolve Method
– DNS is the best choice for most, or IP address only
●
Skip URL(s) to leave out of stats (e.g. intranet pages that don't matter)
●
Refresh Scheduler
– 30-60m is probably fine, depending on hardware and server load
● Click Refresh Full before opening the first time or after changing report options
●
Click Refresh to trigger an interim update later
LightSquid - Reports
● Click Open Lightsquid to view report
– Access report by year, month, day
– Top sites list can be sorted by Bytes or Connections
– Totals shows all bandwidth used by a client over
time
– Day report shows users that accessed sites that day
● Click their IP address to see the sites they accessed
– “Big Files” shows if a user has downloaded files
larger than a couple MB and shows the full URL
Browser Tests
● Use Incognito Mode, Private Browsing Mode, etc. Avoid issues with cached redirects
● Load a proxy test page such as http://www.lagado.com/proxy-test
● Load a normal unblocked/whitelisted web page
● Load a blocked web page - internal error
● Load a blocked web page - external error
● Load HTTPS version of blocked page
● Configure browser for proxy (varies by OS/Browser) & Test again
– Set to use the IP address of the firewall on port 3128 as proxy for all
● Can block 443 on LAN rules if Peek & Splice is not sufficient
● Remember to import the CA Certificate into not just the OS but also browsers like
Firefox if they have a separate certificate store
● After loading some sites, manually refresh lightsquid and then load the report again to
see if reporting works
Monitoring
● Squid
– Real Time tab – AJAX page to watch squid logs in near-real-time
● Shows access log, cache log, squidguard blocked requests, AV results, and more
– Sqstat in lightsquid
● Click Open sqstat from Status > Squid Proxy Reports to view squid realtime stats (only
shows large ongoing downloads)
● SquidGuard – Log tab
– For viewing squidguard logs generated by the GUI and other actions
– Blocked: Blocked sites, if logged (also shown on squid Real Time tab)
– Filter GUI Log: Messages about the squidGuard GUI configuration
– Filter Log: SquidGuard process events
– Proxy Config: View of the squid configuration file
– Filter Config: View of the squidGuard configuration file
Conclusion
● Questions?
● Ideas for hangout topics? Post on forum,
comment on the blog posts, Reddit, etc

More Related Content

What's hot

BGP FlowSpec experience and future developments
BGP FlowSpec experience and future developmentsBGP FlowSpec experience and future developments
BGP FlowSpec experience and future developmentsPavel Odintsov
 
Mlag invisibile layer 2 redundancy
Mlag invisibile layer 2 redundancyMlag invisibile layer 2 redundancy
Mlag invisibile layer 2 redundancyCumulus Networks
 
netfilter and iptables
netfilter and iptablesnetfilter and iptables
netfilter and iptablesKernel TLV
 
Understanding and Extending Prometheus AlertManager
Understanding and Extending Prometheus AlertManagerUnderstanding and Extending Prometheus AlertManager
Understanding and Extending Prometheus AlertManagerLee Calcote
 
Dynamic Routing with FRR - pfSense Hangout December 2017
Dynamic Routing with FRR - pfSense Hangout December 2017Dynamic Routing with FRR - pfSense Hangout December 2017
Dynamic Routing with FRR - pfSense Hangout December 2017Netgate
 
BPF Internals (eBPF)
BPF Internals (eBPF)BPF Internals (eBPF)
BPF Internals (eBPF)Brendan Gregg
 
TRex Traffic Generator - Hanoch Haim
TRex Traffic Generator - Hanoch HaimTRex Traffic Generator - Hanoch Haim
TRex Traffic Generator - Hanoch Haimharryvanhaaren
 
Nmap Hacking Guide
Nmap Hacking GuideNmap Hacking Guide
Nmap Hacking GuideAryan G
 
OSPF On Router OS7
OSPF On Router OS7OSPF On Router OS7
OSPF On Router OS7GLC Networks
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Andriy Berestovskyy
 
Cfgmgmtcamp 2023 — eBPF Superpowers
Cfgmgmtcamp 2023 — eBPF SuperpowersCfgmgmtcamp 2023 — eBPF Superpowers
Cfgmgmtcamp 2023 — eBPF SuperpowersRaphaël PINSON
 
Using eBPF for High-Performance Networking in Cilium
Using eBPF for High-Performance Networking in CiliumUsing eBPF for High-Performance Networking in Cilium
Using eBPF for High-Performance Networking in CiliumScyllaDB
 
Faster packet processing in Linux: XDP
Faster packet processing in Linux: XDPFaster packet processing in Linux: XDP
Faster packet processing in Linux: XDPDaniel T. Lee
 
introduction to linux kernel tcp/ip ptocotol stack
introduction to linux kernel tcp/ip ptocotol stack introduction to linux kernel tcp/ip ptocotol stack
introduction to linux kernel tcp/ip ptocotol stack monad bobo
 
Advanced Captive Portal - pfSense Hangout June 2017
Advanced Captive Portal - pfSense Hangout June 2017Advanced Captive Portal - pfSense Hangout June 2017
Advanced Captive Portal - pfSense Hangout June 2017Netgate
 
Backup and Restore with pfSense 2.4 - pfSense Hangout August 2017
Backup and Restore with pfSense 2.4 - pfSense Hangout August 2017Backup and Restore with pfSense 2.4 - pfSense Hangout August 2017
Backup and Restore with pfSense 2.4 - pfSense Hangout August 2017Netgate
 
Monitoring in CloudStack
Monitoring in CloudStackMonitoring in CloudStack
Monitoring in CloudStackShapeBlue
 
Linux kernel tracing
Linux kernel tracingLinux kernel tracing
Linux kernel tracingViller Hsiao
 
nftables - the evolution of Linux Firewall
nftables - the evolution of Linux Firewallnftables - the evolution of Linux Firewall
nftables - the evolution of Linux FirewallMarian Marinov
 

What's hot (20)

BGP FlowSpec experience and future developments
BGP FlowSpec experience and future developmentsBGP FlowSpec experience and future developments
BGP FlowSpec experience and future developments
 
Mikrotik firewall mangle
Mikrotik firewall mangleMikrotik firewall mangle
Mikrotik firewall mangle
 
Mlag invisibile layer 2 redundancy
Mlag invisibile layer 2 redundancyMlag invisibile layer 2 redundancy
Mlag invisibile layer 2 redundancy
 
netfilter and iptables
netfilter and iptablesnetfilter and iptables
netfilter and iptables
 
Understanding and Extending Prometheus AlertManager
Understanding and Extending Prometheus AlertManagerUnderstanding and Extending Prometheus AlertManager
Understanding and Extending Prometheus AlertManager
 
Dynamic Routing with FRR - pfSense Hangout December 2017
Dynamic Routing with FRR - pfSense Hangout December 2017Dynamic Routing with FRR - pfSense Hangout December 2017
Dynamic Routing with FRR - pfSense Hangout December 2017
 
BPF Internals (eBPF)
BPF Internals (eBPF)BPF Internals (eBPF)
BPF Internals (eBPF)
 
TRex Traffic Generator - Hanoch Haim
TRex Traffic Generator - Hanoch HaimTRex Traffic Generator - Hanoch Haim
TRex Traffic Generator - Hanoch Haim
 
Nmap Hacking Guide
Nmap Hacking GuideNmap Hacking Guide
Nmap Hacking Guide
 
OSPF On Router OS7
OSPF On Router OS7OSPF On Router OS7
OSPF On Router OS7
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)
 
Cfgmgmtcamp 2023 — eBPF Superpowers
Cfgmgmtcamp 2023 — eBPF SuperpowersCfgmgmtcamp 2023 — eBPF Superpowers
Cfgmgmtcamp 2023 — eBPF Superpowers
 
Using eBPF for High-Performance Networking in Cilium
Using eBPF for High-Performance Networking in CiliumUsing eBPF for High-Performance Networking in Cilium
Using eBPF for High-Performance Networking in Cilium
 
Faster packet processing in Linux: XDP
Faster packet processing in Linux: XDPFaster packet processing in Linux: XDP
Faster packet processing in Linux: XDP
 
introduction to linux kernel tcp/ip ptocotol stack
introduction to linux kernel tcp/ip ptocotol stack introduction to linux kernel tcp/ip ptocotol stack
introduction to linux kernel tcp/ip ptocotol stack
 
Advanced Captive Portal - pfSense Hangout June 2017
Advanced Captive Portal - pfSense Hangout June 2017Advanced Captive Portal - pfSense Hangout June 2017
Advanced Captive Portal - pfSense Hangout June 2017
 
Backup and Restore with pfSense 2.4 - pfSense Hangout August 2017
Backup and Restore with pfSense 2.4 - pfSense Hangout August 2017Backup and Restore with pfSense 2.4 - pfSense Hangout August 2017
Backup and Restore with pfSense 2.4 - pfSense Hangout August 2017
 
Monitoring in CloudStack
Monitoring in CloudStackMonitoring in CloudStack
Monitoring in CloudStack
 
Linux kernel tracing
Linux kernel tracingLinux kernel tracing
Linux kernel tracing
 
nftables - the evolution of Linux Firewall
nftables - the evolution of Linux Firewallnftables - the evolution of Linux Firewall
nftables - the evolution of Linux Firewall
 

Similar to Squid, SquidGuard, and Lightsquid on pfSense 2.3 & 2.4 - pfSense Hangout January 2017

Server Load Balancing on pfSense 2.4 - pfSense Hangout July 2017
Server Load Balancing on pfSense 2.4 - pfSense Hangout July 2017Server Load Balancing on pfSense 2.4 - pfSense Hangout July 2017
Server Load Balancing on pfSense 2.4 - pfSense Hangout July 2017Netgate
 
Overview of SSL: choose the option that's right for you
Overview of SSL: choose the option that's right for youOverview of SSL: choose the option that's right for you
Overview of SSL: choose the option that's right for youCloudflare
 
Securing Network Access with Open Source solutions
Securing Network Access with Open Source solutionsSecuring Network Access with Open Source solutions
Securing Network Access with Open Source solutionsNick Owen
 
Let's Encrypt - pfSense Hangout April 2017
Let's Encrypt - pfSense Hangout April 2017Let's Encrypt - pfSense Hangout April 2017
Let's Encrypt - pfSense Hangout April 2017Netgate
 
OpenVPN as a WAN - pfSense Hangout October 2016
OpenVPN as a WAN - pfSense Hangout October 2016OpenVPN as a WAN - pfSense Hangout October 2016
OpenVPN as a WAN - pfSense Hangout October 2016Netgate
 
Remote Access VPNs - pfSense Hangout September 2015
Remote Access VPNs - pfSense Hangout September 2015Remote Access VPNs - pfSense Hangout September 2015
Remote Access VPNs - pfSense Hangout September 2015Netgate
 
Securing the client side web
Securing the client side webSecuring the client side web
Securing the client side webSC5.io
 
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...Netgate
 
Null bhopal Sep 2016: What it Takes to Secure a Web Application
Null bhopal Sep 2016: What it Takes to Secure a Web ApplicationNull bhopal Sep 2016: What it Takes to Secure a Web Application
Null bhopal Sep 2016: What it Takes to Secure a Web ApplicationAnant Shrivastava
 
RADIUS and LDAP on pfSense 2.4 - pfSense Hangout February 2018
RADIUS and LDAP on pfSense 2.4 - pfSense Hangout February 2018RADIUS and LDAP on pfSense 2.4 - pfSense Hangout February 2018
RADIUS and LDAP on pfSense 2.4 - pfSense Hangout February 2018Netgate
 
Foreman in Your Data Center :OSDC 2015
Foreman in Your Data Center :OSDC 2015Foreman in Your Data Center :OSDC 2015
Foreman in Your Data Center :OSDC 2015Stephen Benjamin
 
pfSense 2.4.4 Short Topic Miscellany - pfSense Hangout August 2018
pfSense 2.4.4 Short Topic Miscellany - pfSense Hangout August 2018pfSense 2.4.4 Short Topic Miscellany - pfSense Hangout August 2018
pfSense 2.4.4 Short Topic Miscellany - pfSense Hangout August 2018Netgate
 
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017Netgate
 
NGINX: High Performance Load Balancing
NGINX: High Performance Load BalancingNGINX: High Performance Load Balancing
NGINX: High Performance Load BalancingNGINX, Inc.
 
Routed IPsec on pfSense 2.4.4 - pfSense Hangout June 2018
Routed IPsec on pfSense 2.4.4 - pfSense Hangout June 2018Routed IPsec on pfSense 2.4.4 - pfSense Hangout June 2018
Routed IPsec on pfSense 2.4.4 - pfSense Hangout June 2018Netgate
 
SPDY - http reloaded - WebTechConference 2012
SPDY - http reloaded - WebTechConference 2012SPDY - http reloaded - WebTechConference 2012
SPDY - http reloaded - WebTechConference 2012Fabian Lange
 
Aeon mike guide transparent ssl filtering (1)
Aeon mike guide transparent ssl filtering (1)Aeon mike guide transparent ssl filtering (1)
Aeon mike guide transparent ssl filtering (1)Conrad Cruz
 
Aeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filteringAeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filteringConrad Cruz
 

Similar to Squid, SquidGuard, and Lightsquid on pfSense 2.3 & 2.4 - pfSense Hangout January 2017 (20)

Server Load Balancing on pfSense 2.4 - pfSense Hangout July 2017
Server Load Balancing on pfSense 2.4 - pfSense Hangout July 2017Server Load Balancing on pfSense 2.4 - pfSense Hangout July 2017
Server Load Balancing on pfSense 2.4 - pfSense Hangout July 2017
 
Overview of SSL: choose the option that's right for you
Overview of SSL: choose the option that's right for youOverview of SSL: choose the option that's right for you
Overview of SSL: choose the option that's right for you
 
HTTPS @Scale
HTTPS @ScaleHTTPS @Scale
HTTPS @Scale
 
Securing Network Access with Open Source solutions
Securing Network Access with Open Source solutionsSecuring Network Access with Open Source solutions
Securing Network Access with Open Source solutions
 
Let's Encrypt - pfSense Hangout April 2017
Let's Encrypt - pfSense Hangout April 2017Let's Encrypt - pfSense Hangout April 2017
Let's Encrypt - pfSense Hangout April 2017
 
OpenVPN as a WAN - pfSense Hangout October 2016
OpenVPN as a WAN - pfSense Hangout October 2016OpenVPN as a WAN - pfSense Hangout October 2016
OpenVPN as a WAN - pfSense Hangout October 2016
 
Remote Access VPNs - pfSense Hangout September 2015
Remote Access VPNs - pfSense Hangout September 2015Remote Access VPNs - pfSense Hangout September 2015
Remote Access VPNs - pfSense Hangout September 2015
 
Digital certificates
Digital certificatesDigital certificates
Digital certificates
 
Securing the client side web
Securing the client side webSecuring the client side web
Securing the client side web
 
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
Using Google Cloud Identity Secure LDAP with pfSense - Netgate Hangout Octobe...
 
Null bhopal Sep 2016: What it Takes to Secure a Web Application
Null bhopal Sep 2016: What it Takes to Secure a Web ApplicationNull bhopal Sep 2016: What it Takes to Secure a Web Application
Null bhopal Sep 2016: What it Takes to Secure a Web Application
 
RADIUS and LDAP on pfSense 2.4 - pfSense Hangout February 2018
RADIUS and LDAP on pfSense 2.4 - pfSense Hangout February 2018RADIUS and LDAP on pfSense 2.4 - pfSense Hangout February 2018
RADIUS and LDAP on pfSense 2.4 - pfSense Hangout February 2018
 
Foreman in Your Data Center :OSDC 2015
Foreman in Your Data Center :OSDC 2015Foreman in Your Data Center :OSDC 2015
Foreman in Your Data Center :OSDC 2015
 
pfSense 2.4.4 Short Topic Miscellany - pfSense Hangout August 2018
pfSense 2.4.4 Short Topic Miscellany - pfSense Hangout August 2018pfSense 2.4.4 Short Topic Miscellany - pfSense Hangout August 2018
pfSense 2.4.4 Short Topic Miscellany - pfSense Hangout August 2018
 
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
Certificate Management on pfSense 2.4 - pfSense Hangout September 2017
 
NGINX: High Performance Load Balancing
NGINX: High Performance Load BalancingNGINX: High Performance Load Balancing
NGINX: High Performance Load Balancing
 
Routed IPsec on pfSense 2.4.4 - pfSense Hangout June 2018
Routed IPsec on pfSense 2.4.4 - pfSense Hangout June 2018Routed IPsec on pfSense 2.4.4 - pfSense Hangout June 2018
Routed IPsec on pfSense 2.4.4 - pfSense Hangout June 2018
 
SPDY - http reloaded - WebTechConference 2012
SPDY - http reloaded - WebTechConference 2012SPDY - http reloaded - WebTechConference 2012
SPDY - http reloaded - WebTechConference 2012
 
Aeon mike guide transparent ssl filtering (1)
Aeon mike guide transparent ssl filtering (1)Aeon mike guide transparent ssl filtering (1)
Aeon mike guide transparent ssl filtering (1)
 
Aeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filteringAeon mike guide transparent ssl filtering
Aeon mike guide transparent ssl filtering
 

More from Netgate

Configuring Netgate Appliance Integrated Switches on pfSense 2.4.4 - pfSense ...
Configuring Netgate Appliance Integrated Switches on pfSense 2.4.4 - pfSense ...Configuring Netgate Appliance Integrated Switches on pfSense 2.4.4 - pfSense ...
Configuring Netgate Appliance Integrated Switches on pfSense 2.4.4 - pfSense ...Netgate
 
Local DNS with pfSense 2.4 - pfSense Hangout April 2018
Local DNS with pfSense 2.4 - pfSense Hangout April 2018Local DNS with pfSense 2.4 - pfSense Hangout April 2018
Local DNS with pfSense 2.4 - pfSense Hangout April 2018Netgate
 
Monitoring pfSense 2.4 with SNMP - pfSense Hangout March 2018
Monitoring pfSense 2.4 with SNMP - pfSense Hangout March 2018Monitoring pfSense 2.4 with SNMP - pfSense Hangout March 2018
Monitoring pfSense 2.4 with SNMP - pfSense Hangout March 2018Netgate
 
User Management and Privileges on pfSense 2.4 - pfSense Hangout January 2018
User Management and Privileges on pfSense 2.4 - pfSense Hangout January 2018User Management and Privileges on pfSense 2.4 - pfSense Hangout January 2018
User Management and Privileges on pfSense 2.4 - pfSense Hangout January 2018Netgate
 
Firewall Best Practices for VoIP on pfSense - pfSense Hangout October 2017
Firewall Best Practices for VoIP on pfSense - pfSense Hangout October 2017Firewall Best Practices for VoIP on pfSense - pfSense Hangout October 2017
Firewall Best Practices for VoIP on pfSense - pfSense Hangout October 2017Netgate
 
Advanced OpenVPN Concepts on pfSense 2.4 & 2.3.3 - pfSense Hangout February 2017
Advanced OpenVPN Concepts on pfSense 2.4 & 2.3.3 - pfSense Hangout February 2017Advanced OpenVPN Concepts on pfSense 2.4 & 2.3.3 - pfSense Hangout February 2017
Advanced OpenVPN Concepts on pfSense 2.4 & 2.3.3 - pfSense Hangout February 2017Netgate
 
Console Menu - pfSense Hangout December 2016
Console Menu - pfSense Hangout December 2016Console Menu - pfSense Hangout December 2016
Console Menu - pfSense Hangout December 2016Netgate
 
DHCP Server - pfSense Hangout September 2016
DHCP Server - pfSense Hangout September 2016DHCP Server - pfSense Hangout September 2016
DHCP Server - pfSense Hangout September 2016Netgate
 
High Availability Part 2 - pfSense Hangout July 2016
High Availability Part 2 - pfSense Hangout July 2016High Availability Part 2 - pfSense Hangout July 2016
High Availability Part 2 - pfSense Hangout July 2016Netgate
 
Connectivity Troubleshooting - pfSense Hangout June 2016
Connectivity Troubleshooting - pfSense Hangout June 2016Connectivity Troubleshooting - pfSense Hangout June 2016
Connectivity Troubleshooting - pfSense Hangout June 2016Netgate
 
NAT on pfSense 2.3 - pfSense Hangout May 2016
NAT on pfSense 2.3 - pfSense Hangout May 2016NAT on pfSense 2.3 - pfSense Hangout May 2016
NAT on pfSense 2.3 - pfSense Hangout May 2016Netgate
 
Multi-WAN on pfSense 2.3 - pfSense Hangout March 2016
Multi-WAN on pfSense 2.3 - pfSense Hangout March 2016Multi-WAN on pfSense 2.3 - pfSense Hangout March 2016
Multi-WAN on pfSense 2.3 - pfSense Hangout March 2016Netgate
 
Traffic Shaping Basics with PRIQ - pfSense Hangout February 2016
Traffic Shaping Basics with PRIQ - pfSense Hangout February 2016Traffic Shaping Basics with PRIQ - pfSense Hangout February 2016
Traffic Shaping Basics with PRIQ - pfSense Hangout February 2016Netgate
 
Creating a DMZ - pfSense Hangout January 2016
Creating a DMZ - pfSense Hangout January 2016Creating a DMZ - pfSense Hangout January 2016
Creating a DMZ - pfSense Hangout January 2016Netgate
 
pfSense 2.3 Preview - pfSense Hangout December 2015
pfSense 2.3 Preview - pfSense Hangout December 2015pfSense 2.3 Preview - pfSense Hangout December 2015
pfSense 2.3 Preview - pfSense Hangout December 2015Netgate
 
Site-to-Site VPNs - pfSense Hangout November 2015
Site-to-Site VPNs - pfSense Hangout November 2015Site-to-Site VPNs - pfSense Hangout November 2015
Site-to-Site VPNs - pfSense Hangout November 2015Netgate
 
Remote Access VPNs Part 2 - pfSense Hangout October 2015
Remote Access VPNs Part 2 - pfSense Hangout October 2015Remote Access VPNs Part 2 - pfSense Hangout October 2015
Remote Access VPNs Part 2 - pfSense Hangout October 2015Netgate
 

More from Netgate (17)

Configuring Netgate Appliance Integrated Switches on pfSense 2.4.4 - pfSense ...
Configuring Netgate Appliance Integrated Switches on pfSense 2.4.4 - pfSense ...Configuring Netgate Appliance Integrated Switches on pfSense 2.4.4 - pfSense ...
Configuring Netgate Appliance Integrated Switches on pfSense 2.4.4 - pfSense ...
 
Local DNS with pfSense 2.4 - pfSense Hangout April 2018
Local DNS with pfSense 2.4 - pfSense Hangout April 2018Local DNS with pfSense 2.4 - pfSense Hangout April 2018
Local DNS with pfSense 2.4 - pfSense Hangout April 2018
 
Monitoring pfSense 2.4 with SNMP - pfSense Hangout March 2018
Monitoring pfSense 2.4 with SNMP - pfSense Hangout March 2018Monitoring pfSense 2.4 with SNMP - pfSense Hangout March 2018
Monitoring pfSense 2.4 with SNMP - pfSense Hangout March 2018
 
User Management and Privileges on pfSense 2.4 - pfSense Hangout January 2018
User Management and Privileges on pfSense 2.4 - pfSense Hangout January 2018User Management and Privileges on pfSense 2.4 - pfSense Hangout January 2018
User Management and Privileges on pfSense 2.4 - pfSense Hangout January 2018
 
Firewall Best Practices for VoIP on pfSense - pfSense Hangout October 2017
Firewall Best Practices for VoIP on pfSense - pfSense Hangout October 2017Firewall Best Practices for VoIP on pfSense - pfSense Hangout October 2017
Firewall Best Practices for VoIP on pfSense - pfSense Hangout October 2017
 
Advanced OpenVPN Concepts on pfSense 2.4 & 2.3.3 - pfSense Hangout February 2017
Advanced OpenVPN Concepts on pfSense 2.4 & 2.3.3 - pfSense Hangout February 2017Advanced OpenVPN Concepts on pfSense 2.4 & 2.3.3 - pfSense Hangout February 2017
Advanced OpenVPN Concepts on pfSense 2.4 & 2.3.3 - pfSense Hangout February 2017
 
Console Menu - pfSense Hangout December 2016
Console Menu - pfSense Hangout December 2016Console Menu - pfSense Hangout December 2016
Console Menu - pfSense Hangout December 2016
 
DHCP Server - pfSense Hangout September 2016
DHCP Server - pfSense Hangout September 2016DHCP Server - pfSense Hangout September 2016
DHCP Server - pfSense Hangout September 2016
 
High Availability Part 2 - pfSense Hangout July 2016
High Availability Part 2 - pfSense Hangout July 2016High Availability Part 2 - pfSense Hangout July 2016
High Availability Part 2 - pfSense Hangout July 2016
 
Connectivity Troubleshooting - pfSense Hangout June 2016
Connectivity Troubleshooting - pfSense Hangout June 2016Connectivity Troubleshooting - pfSense Hangout June 2016
Connectivity Troubleshooting - pfSense Hangout June 2016
 
NAT on pfSense 2.3 - pfSense Hangout May 2016
NAT on pfSense 2.3 - pfSense Hangout May 2016NAT on pfSense 2.3 - pfSense Hangout May 2016
NAT on pfSense 2.3 - pfSense Hangout May 2016
 
Multi-WAN on pfSense 2.3 - pfSense Hangout March 2016
Multi-WAN on pfSense 2.3 - pfSense Hangout March 2016Multi-WAN on pfSense 2.3 - pfSense Hangout March 2016
Multi-WAN on pfSense 2.3 - pfSense Hangout March 2016
 
Traffic Shaping Basics with PRIQ - pfSense Hangout February 2016
Traffic Shaping Basics with PRIQ - pfSense Hangout February 2016Traffic Shaping Basics with PRIQ - pfSense Hangout February 2016
Traffic Shaping Basics with PRIQ - pfSense Hangout February 2016
 
Creating a DMZ - pfSense Hangout January 2016
Creating a DMZ - pfSense Hangout January 2016Creating a DMZ - pfSense Hangout January 2016
Creating a DMZ - pfSense Hangout January 2016
 
pfSense 2.3 Preview - pfSense Hangout December 2015
pfSense 2.3 Preview - pfSense Hangout December 2015pfSense 2.3 Preview - pfSense Hangout December 2015
pfSense 2.3 Preview - pfSense Hangout December 2015
 
Site-to-Site VPNs - pfSense Hangout November 2015
Site-to-Site VPNs - pfSense Hangout November 2015Site-to-Site VPNs - pfSense Hangout November 2015
Site-to-Site VPNs - pfSense Hangout November 2015
 
Remote Access VPNs Part 2 - pfSense Hangout October 2015
Remote Access VPNs Part 2 - pfSense Hangout October 2015Remote Access VPNs Part 2 - pfSense Hangout October 2015
Remote Access VPNs Part 2 - pfSense Hangout October 2015
 

Recently uploaded

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 

Recently uploaded (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 

Squid, SquidGuard, and Lightsquid on pfSense 2.3 & 2.4 - pfSense Hangout January 2017

  • 1. Squid, SquidGuard, and Lightsquid On pfSense 2.3 & 2.4 January 2017 Hangout Jim Pingle
  • 2. About this Hangout ● Project News ● Squid, SquidGuard, LightSquid Intro ● HTTPS Interception Overview ● Installing the packages & prep work ● Squid Configuration ● Transparent Proxy ● SSL/TLS Interception configuration & Testing ● Anti-Virus in Squid ● SquidGuard ● Lightsquid ● Browser Testing hints ● Monitoring
  • 3. Project News ● pfSense exceeded 500,000 active installs in December! ● pfSense Code Audit – Audit was performed by an independent consulting firm, InfoSec Global – Full results at https://www.netgate.com/blog/netgate-taps-infosec-global-for-pfsense-code-revie w.html ● Fortinet, Cisco, and pfSense are ranked as the leading firewalls of 2016 based on peer reviews – http://www.prweb.com/releases/2017/01/prweb13984638.htm ● NET-SNMP package available for pfSense 2.4 – More secure, IPv6 support, SNMPv3, encrypted transport, user or TLS auth, extendable with custom commands, better trap handling/generation ● Updated trademark policy: https://blog.pfsense.org/?p=2273 ● 2.4 getting closer!
  • 4. What are Squid/SquidGuard/LightSquid? ● Squid is a caching proxy for HTTP and other protocols – Can speed up access by locally caching commonly loaded sites/objects – Can save bandwidth by reducing multiple duplicate downloads – Allows further action on web traffic (access control, reporting) ● SquidGuard is used for access control based on the domain or URL requested by a client – Decisions can be made to allow or deny access based on client and/or destination – Blocked sites can be redirected to an error page in most cases – Custom lists of sites or preset blacklists from other sources ● Lightsquid is used for reporting web access history – Parses squid access log, notes who went where, how much bandwidth they used – Has reports for daily use, monthly use, etc.
  • 5. Will Squid Work for Me? ● Without squid, the firewall cannot take an action based on the contents of HTTP/HTTPS packets – In pf, all that may be seen is the destination IP address and port number, not hostname – Hostnames can resolve to many IP addresses, or random sets, and cannot be effectively tracked with aliases in many cases though pfBlocker can assist here with AS tracking in some cases. – As a proxy, squid sees the whole HTTP transaction including the requested site name ● Squid can easily transparently capture HTTP content, not HTTPS – HTTPS can be handled in a few ways that we will cover ● Squid is not easily compatible with Multi-WAN – Default gateway switching gets failover, but Load Balancing is not possible/practical ● SquidGuard tests based on client and destination URL, not page content ● Squid can help by caching static content, but many pages are dynamic and may not cache well or at all so the savings may not significant – Caching dynamic content could also prevent a page from working properly ● At this time, squid cannot transparently intercept IPv6 traffic on FreeBSD/pfSense, so IPv6 must be disabled or it could be used to bypass the proxy ● DNSBL from pfBlocker is a viable alternative to proxying in some cases
  • 6. HTTPS Interception ● Squid can intercept HTTPS (SSL, TLS) in some cases to see all or part of the client communication ● Breaking the chain of trust by acting as a Man-in-the-Middle is a very bad idea – It could be illegal, check local laws/regulations – Unless users are notified, it is unethical – Users will no longer see invalid certificate messages, squid must decide whether or not to trust servers ● Several modes with varying levels of intrusion – Bump – Allows squid to be a MITM and present a fake certificate, handling separate TLS connections from client and to server – Peek - Lets squid peek inside the SSL negotiation to see things like SNI, can't bump after but can splice – Stare - Like peek, but can bump after and not splice – Splice - become a TCP tunnel without decrypting traffic. Client and server exchange data as if there is no proxy ● Peek & Splice is a simple way to unobtrusively filter HTTPS at least by hostname without intruding on client privacy – It can only see the hostname but in the majority of cases that is enough to determine if a site should be blocked by squidGuard ● Bump requires installing a self-signed Certificate Authority onto all clients and client browsers so the clients will trust fake certificates generated by squid – NOT viable for public networks like a guest network, cafe, hotel, airport, etc! – Generally only viable for small networks or networks under control of AD or similar with GPO
  • 7. What can Squid See/Act on? ● Full contents of HTTP are available in any mode ● Direct means proxy settings in client OS/browser or WPAD type setup where the client knows proxy & connects ● Transparent means the client does not know a proxy is in place ● Peek & Splice checks SSL negotiation packets but does not interfere with end-to-end connection security. It cannot redirect to an error page, only prevent the connection from completing ● SSL MITM bump decrypts contents of connection, breaks chain of trust ● Being able to see “Page Contents” means that scanning (e.g. ClamAV) and caching is possible Squid Mode HTTPS Destination Host HTTPS Request URL HTTPS Page Contents Self-Signed CA on Clients Error Page Redirect Direct ✓ HTTP Only Transparent HTTP Only D+Peek&Splice ✓ HTTP Only T+Peek&Splice ✓ HTTP Only D+MITM/Bump ✓ ✓ ✓ ✓ ✓ T+MITM/Bump ✓ ✓ ✓ ✓ ✓
  • 8. Install Packages & Prep ● Before anything can be done, the packages must be installed and configured ● System > Package Manager, Available Packages tab ● Find/install Squid, SquidGuard, Lightsquid, whichever will be used ● Create a Self-Signed CA if using Peek & Splice or MITM – System > Cert Manager, CAs tab – Click Add, set Method to Create Internal – Fill in the Name and other details with sensible values – Click Save ● If you will use SSL/TLS MITM, create a server certificate for the GUI – It can be used for redirects from SquidGuard or AV and the clients will trust it – Use hostname as CN, hostname as SAN, add IP addresses as SAN entries
  • 9. Basic Squid Configuration ● First get a basic configuration going before attempting anything complicated ● Services > Squid Proxy Server ● Setup Local Cache tab first – Defaults are fine for most – Set Hard Disk Cache Size (in MB) ● Large cache eats more RAM! On 64-bit systems squid uses 14MBytes of RAM per 1GB of cache – Hard Disk Cache System ● Set to “null” when using RAM disks or when only filtering with squidGuard, not caching – Memory Cache Sizes ● Tune to system RAM ● Actual memory usage will be higher, this is only RAM cache size, not total RAM used by squid – Object Sizes ● Minimum Object Size: Smaller than this not saved to disk ● Maximum Object Size: Larger than this not saved to disk. Speed = Low, Bandwidth saving = High ● Maximum Object Size in RAM: Smaller than this will be put in memory cache.
  • 10. Basic Squid Configuration ● Squid General tab settings – Check Enable Squid Proxy – Check Keep Settings/Data – Select Proxy Interfaces (e.g. LAN), always include Localhost – Do not check Transparent HTTP Proxy yet, it could be disruptive – Get the basics working first – Do not check Enable SSL filtering yet, even if you want it – Get the basics working first. – Check Enable Access Logging, if you want to track where users are going ● Set rotate logs to 7 – Set the Visible Hostname and other related fields if you want them to appear in the proxy headers ● If you want to hide the proxy, set X-Forwarded-For Header Mode to Delete, check Disable VIA header, and check Suppress Squid Version ● Some places can still detect a proxy by testing request behavior
  • 11. Basic Squid Configuration ● ACLs tab – Not normally necessary to touch, except perhaps to add more Allowed Subnets for routed segments on internal interfaces ● Traffic Mgmt tab – Sizes are in Kilo*bytes*, not bits – Important to remember for the throttling settings. Set to 0 to disable limits. – Max down/up sizes – Careful, can break updates – Throttling – Overall and per-host – Throttle extensions ● Binary Files: bin, cab, sea, ar, arj, tar, tgz, gz, tbz, bz2, zip, 7z, exe, com ● CD images: iso, bin, mds, nrg, gho, bwt, b5t, pqi ● Multimedia: aif/aiff, asf, avi, divx, mov, mp3, mp4, wmv, mpg/mpeg, qt,ram/rm ● Other extensions – Custom list, just put in the letters in the extension – NO spaces between items! – Example: vmx,vdi,ova
  • 12. Basic Squid Configuration ● Authentication – Only viable with direct connections (user has proxy settings in OS/browser manually or via GPO, WPAD) – Local, RADIUS, LDAP – No viable SSO option currently – For Local, add users on Users tab ● Testing initial setup – Put proxy IP address & info into Firefox or a user's OS settings – FF: Hamburger > Gear > Advanced > Network > Connection Settings, Manual, enter firewall IP Address, Port – Try some web requests, check access.log – If access is not working, fix errors – If access is working, move on to more advanced configuration – Remove proxy info from browser if a transparent mode will be utilized
  • 13. Squid – Transparent Proxy ● Now that the proxy is tested and working... ● Transparent proxy - Squid general tab, enable – Choose the transparent proxy interfaces – If you are connected to VPNs or other privately-numbered networks, check Bypass Proxy for Private Address Destination – Fill in any other addresses to bypass for source/destination, don't use website addresses here ● For hostnames, put them in an alias, use alias name here ● Can’t track large sites, but can track ones with simple, static DNS results
  • 14. Squid – SSL/TLS Peek & Splice ● SSL/TLS Peek & Splice – Check Enable SSL Filtering – SSL/MITM Mode ● Splice All: Will always splice every request ● Splice Whitelist, Bump Otherwise: Does what it says on the tin. – When chosen, to splice all, Visit ACLs tab, enter .* in Whitelist or enter specific sites to splice. – Set SSL Intercept Interfaces – Choose a self-signed CA ● Squid requires it to be set, but it isn’t used in this mode – Select/enter nothing in the other fields of this section
  • 15. Squid – SSL/TLS Interception ● Setup SSL/TLS Man-in-the-Middle bump (interception) – Squid General tab – Check Enable SSL Filtering – SSL/MITM Mode: Splice Whitelist, Bump Otherwise – Set SSL Intercept Interfaces – SSL Proxy Compatibility Mode: ● Leave on modern unless users complain about security negotiation errors – Choose a self-signed CA – Daemon Children may need increased if the network is busy – Set Remote Cert Checks and Certificate Adapt to taste, but both can be left with nothing selected – Visit ACLs tab after, make sure Whitelist is blank so everything will be bumped
  • 16. Squid – SSL/TLS Interception ● Install CA Certificate to clients ● Export CA Cerfificate only (not key): System > Cert Manager, CA tab ● Copy to client system(s), examples: – Windows (IE, Chrome – NOT Edge!) ● Locate CA file on the client PC (e.g. MyCA.crt) & double click ● Click Install Certificate…, select Local Machine, Click Next ● Click Yes at the UAC prompt ● Select Place all Certificates in the following store ● Click Browse, then Trusted Root Certification Authorities ● Click Next, Finish, OK, OK ● May need a reboot – OS X (Safari, Chrome) ● Double click CA File in Finder, enter login info & click Modify Keychain ● Locate the imported certificate under Login, All Items, drag the certificate onto System ● Click the Certificate, File > Get Info ● Expand Trust, Set When using this certificate to Always Trust – Firefox (Any OS) ● Click Hamburger, Options, Advanced, Certificates Tab, View Certificates ● Click Import, Find & Pick the CA, Check all boxes ● Click OK, close and reopen Firefox
  • 17. Squid – Testing SSL/TLS Interception ● Open a browser and visit a secure site known to work before you started ● Peek & Splice – Check the site cert, it should show the actual cert & trust info – If a cert error is shown, check that SSL/MITM Mode is set to Splice All or that .* is in Whitelist on ACLs tab ● Bump/MITM – If a certificate error is shown, check the way the CA was imported, reboot/close & reopen browser/etc – If the request succeeded, check cert info, it should match your self-signed CA – If it succeeded, no cert error, but shows original cert, then either the request did not go through the proxy or squid is using peek & splice ● Check that SSL/MITM Mode is set to Splice Whitelist, Bump Otherwise ● Empty out Whitelist on ACLs tab
  • 18. Squid – Anti-Virus (ClamAV) ● Downsides: – Not all that effective overall, no gateway AV is – Only viable for HTTP or SSL+MITM since it must inspect page contents – Uses a LOT of RAM & CPU! ● Won't run until AV DB is updated ● Services > Squid Proxy Server > Antivirus tab, Check Enable ● Client forward: What info clamav will know about the client (Affects virus detected page) ● Enable Manual Config: Disabled – Do not use this unless you know clamav well! ● Redirect URL: Leave blank to use the internal page ● Google Safe Browsing: Helpful, but consumes even more RAM ● Exclude Audio/Video Streams: Check to reduce the burden on the scanner by not passing A/V traffic through ● ClamAV DB Update: 6/24 hrs is probably OK for regular DB update. If using Google Safe Browsing, use 1 hr ● Regional Mirror: Pick the one closest to this firewall ● Advanced: Do not touch ● Click Save on AV tab & then Save again on General tab ● Back to AV tab, Click Update AV – This will take a while to finish ● Add Squid AV Status widget to dashboard, wait for the "Last Update" to fill in ● Test it out by trying to download EICAR file from client http://www.eicar.org/85-0-Download.html ● There are some additional custom databases that can improve detection, check forum
  • 19. SquidGuard ● SquidGuard is used for allowing or denying based on the URL requested by the client (e.g. domain name, part of URL) and the client itself ● Does NOT filter based on text inside page ● Some parts of this package do not currently play well with the Dark theme, so use Light theme ● SquidGuard Settings are at Services > SquidGuard Proxy Filter ● After any change in squidGuard, return to this page and click Apply
  • 20. SquidGuard – General ● Check Enable to activate SquidGuard ● Logging options: Enable all, set rotation ● Clean Advertising: Looks for blacklists with _ads or _adv in name, URLs in these lists get replaced with a blank image ● Blacklists: – MESD – Free to use by all: http://squidguard.mesd.k12.or.us/ ● Small lists, has some categories that are empty – Shalla – Free for non-commercial use: http://www.shallalist.de/ ● This does not seem to be maintained as actively as it was in the past – Others: http://www.squidguard.org/blacklists.html – Enable blacklists if you want, enter a URL to the .tgz to download – Visit Blacklist tab after saving to download or update the list – Even if you only intend to use blacklists, you must create at least one custom Target Category!
  • 21. SquidGuard – Target Categories ● Target Categories tab: – Custom lists of sites to allow or deny, similar to blacklist categories – Domain list can be entered, separated by spaces ● Blocks subdomains (e.g. facebook.com also blocks apps.facebook.com), but does not block partial matches (e.g. notfacebook.com) – URL list and Regex can also define patterns to match beyond the domain name ● Remember: SSL Peek & Splice can only see domain name, not full URL! – Redirect modes: Will cover shortly under ACLs – If GUI is running HTTPS, redirected users will receive a cert error. Recommend using an external redirect. ● If you are doing SSL MITM, create a WebGUI certificate signed by your MITM CA so the users will already trust it!
  • 22. SquidGuard – ACLs ● Common ACL - ACL for anyone not matched by a group ACL ● Target Rules List – Choose access level for each category (custom or blacklist) – Access types: ● “---” - No action taken for this later category ● allow – Allow if never blocked – If the site is in a later category that is Denied, it will still be blocked! ● whitelist – Allow even if blocked ● deny – Do not allow access ● Default access – Controls whether access to any site not in a blacklist is allowed or denied by default – Default deny is more secure but much more of a headache to setup and maintain ● Do not allow IP Addresses in URL: Forces users to access sites by name rather than IP address, which could bypass name-based checks – This is known to break some services such as Netflix ● Proxy Denied Error: This text goes at the top of internal error pages
  • 23. SquidGuard Configuration ● Redirect Mode – Only valid for HTTP or HTTPS with SSL MITM, Peek & Splice will drop the connection harshly – Select the type and enter a proper value in the box if needed. – none - Deny content without displaying a formal error. – Internal Error Page: Enter an error message in the box, displayed with other blocked page details – Internal Blank Page: Returns an HTML page, but blank – Internal Blank Image: Returns an image file, but blank (Useful for Ad blocking) – External URL Error Page: Appears to the browser as the actual requested page ● Cannot include other files unless they are inline in the html (no external css, images, etc) ● Automatically has SquidGuard variables appended to pass the requested URL, client IP/name, group, target to the script – External URL Redirect: Same as "External URL Error Page" except it does not append the request variables – External URL Move: Redirects with 301 ● Client browser is redirected to an external error page but in a way the client browser knows that it happens (301) ● 301 is a permanent redirect, and browsers will often cache it as such ● Since it is an external page, it can use any external resources you like ● Does not get the request variables appended, but you can add them yourself (?a=%a&n=%n&i=%i&s=%s&t=%t&u=%u) ● Because it is an external page in a separate request, your ACLs in squidGuard must allow access to the page if it is remote – External URL Found: Redirects with 302 ● Same as above but uses a 302 response ● 302 is temporary so the browser will keep trying the original URL for later requests ● Use SafeSearch engine – For known search engines that support it, forces the use of the "safesearch" mechanism to prevent loading of adult material
  • 24. SquidGuard – Group ACLs ● Similar to Common ACL but applies to only a specific set of users ● Name – Custom name of the ACL (e.g. user's name, workgroup, set of users) ● Order – Make sure to list more specific ACLs (e.g. 10.2.0.5) ahead of more general ones (10.2.0.0/24) so that your desired actions will take place ● Client (source): Determines what devices will match this ACL – IP adresses, subnets, IP Ranges, hostnames, or usernames (if using user auth without transparent mode) – Entries separated by space ● Time – Schedule used for "off-time" decisions. Not covered in this presentation. ● Target Rules – Same mechanism as Common ACL – Must specify an action for ALL categories for which an action should be taken – Does NOT “fall through” to common ACL settings – Left column is used with or without schedules – If a time is chosen, left column is inside the time period, right column is outside ● Other options are the same as Common ACL
  • 25. LightSquid - Configuration ● Requires logging from squid ● Requires Proxy Interface in squid general settings to include Localhost ● Runs using a separate web server process on the firewall, using a different port with its own authentication ● Lightsquid can be found in the GUI at Status > Squid Proxy Reports ● Lightsquid Web Port, default is 7445 using SSL ● Enter a custom user/pass to protect content ● Report Template Settings – Whatever you think looks best, such as English, NovoSea, Blue ● IP Resolve Method – DNS is the best choice for most, or IP address only ● Skip URL(s) to leave out of stats (e.g. intranet pages that don't matter) ● Refresh Scheduler – 30-60m is probably fine, depending on hardware and server load ● Click Refresh Full before opening the first time or after changing report options ● Click Refresh to trigger an interim update later
  • 26. LightSquid - Reports ● Click Open Lightsquid to view report – Access report by year, month, day – Top sites list can be sorted by Bytes or Connections – Totals shows all bandwidth used by a client over time – Day report shows users that accessed sites that day ● Click their IP address to see the sites they accessed – “Big Files” shows if a user has downloaded files larger than a couple MB and shows the full URL
  • 27. Browser Tests ● Use Incognito Mode, Private Browsing Mode, etc. Avoid issues with cached redirects ● Load a proxy test page such as http://www.lagado.com/proxy-test ● Load a normal unblocked/whitelisted web page ● Load a blocked web page - internal error ● Load a blocked web page - external error ● Load HTTPS version of blocked page ● Configure browser for proxy (varies by OS/Browser) & Test again – Set to use the IP address of the firewall on port 3128 as proxy for all ● Can block 443 on LAN rules if Peek & Splice is not sufficient ● Remember to import the CA Certificate into not just the OS but also browsers like Firefox if they have a separate certificate store ● After loading some sites, manually refresh lightsquid and then load the report again to see if reporting works
  • 28. Monitoring ● Squid – Real Time tab – AJAX page to watch squid logs in near-real-time ● Shows access log, cache log, squidguard blocked requests, AV results, and more – Sqstat in lightsquid ● Click Open sqstat from Status > Squid Proxy Reports to view squid realtime stats (only shows large ongoing downloads) ● SquidGuard – Log tab – For viewing squidguard logs generated by the GUI and other actions – Blocked: Blocked sites, if logged (also shown on squid Real Time tab) – Filter GUI Log: Messages about the squidGuard GUI configuration – Filter Log: SquidGuard process events – Proxy Config: View of the squid configuration file – Filter Config: View of the squidGuard configuration file
  • 29. Conclusion ● Questions? ● Ideas for hangout topics? Post on forum, comment on the blog posts, Reddit, etc