Debian için Squid 3.4.x ssl destekli proxy ve interceptor kurulumu
2 min read

Debian için Squid 3.4.x ssl destekli proxy ve interceptor kurulumu

Kaynaktan Oluşturma


Squid kaynaklarından SSL destekli kaynak dosyasını çekip, build ayarlarını da ekledikten sonra squid'i kaynağından oluşturacağız.

apt-get source squid3 wget http://www.squid-cache.org/Versions/v3/3.4/squid-3.4.9.tar.gz cp squid-3.4.9.tar.gz squid3_3.4.9.orig.tar.gz tar -zxf squid-3.4.9.tar.gz

Debian/rules altında rules dosyasına aşağıdaki ssl desteği için gerekli değerleri ekliyoruz.

--enable-ssl and --enable-ssl-crtd and --disable-arch-native

Daha sonra aşağıda ki komut ile paketleri oluşturuyoruz.

dpkg-buildpackage

Kurulum ve Ayarlama

DPKG paket yöneticisi ile kurulumu başlatıyoruz

dpkg -i squid3-*.deb

Paket kurulumları tamamlandıktan sonra Squid SSL desteği için gerekli sertifika oluşturma işini hallediyoruz.

mkdir /etc/squid3/ssl chmod +x /etc/squid3/ssl cd /etc/squid3/ssl openssl genrsa -out squid.key 2048 openssl req -new -key squid.key -out squid.csr openssl x509 -req -days 3650 -in squid.csr -signkey squid.key -out squid.crt cat squid.key squid.crt > squid.pem scp squid.crt /usr/local/share/ca-certificates/ /usr/sbin/update-ca-certificates

SSL tarafı tamamlandıktan sonra Squid'i yapılandırmaya geçiyoruz.

shutdown_lifetime 3 #standart proxy ulaşım portu http_port 3128 #yönlendirdiğimiz 80. porttan trafikten gelen paketleri karşılayacak port http_port 3129 intercept #yönlendirdiğimiz 443. porttan trafikten gelen paketleri karşılayacak port https_port 3130 intercept ssl-bump  generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/etc/squid3/ssl/squid.pem always_direct allow all ssl_bump none localhost ssl_bump server-first all sslproxy_cert_error allow all sslproxy_flags DONT_VERIFY_PEER

Squid ssl_db'yi hazırlıyoruz

/usr/lib/squid3/ssl_crtd -c -s /var/lib/ssl_db/ chown -R proxy /var/lib/ssl_db

Bu aşağamadan sonra ip:3128 ile normal proxy , ip:3129 ile http trafiği, ip:3130 ile https trafiğini proxy edeceğiz.

service squid3 restart

Squid3'ün gateway olarak tanımlı olması yönlendirecek ağ trafiğinin, yönlendirme tekrarına girmesinden kurtaracaktır.Kullanabileceğiniz iptables ve ufw komutları.

/sbin/iptables -t nat -A PREROUTING -p TCP -s 192.168.1.0/24 --dport 80 -j REDIRECT --to-port 3129 /sbin/iptables -t nat -A PREROUTING -p TCP -s 192.168.1.0/24 --dport 443 -j REDIRECT --to-port 3130

ufw

*nat :POSTROUTING ACCEPT [0:0] -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE -A PREROUTING -p TCP -s 192.168.1.0/24 --dport 80 -j REDIRECT --to-port 3129 -A PREROUTING -p TCP -s 192.168.1.0/24 --dport 443 -j REDIRECT --to-port 3130 COMMIT