Ich verwende einen PC mit CentOS 6.7 und 2 NICs (eth0 & eth1) als Squid-Proxy-Server. eth0 (rote Schnittstelle / 192.168.0.2/24) ist physisch mit dem Router (192.168.0.1/24) verbunden, während eth1 (grüne Schnittstelle / 192.168.1.1/24) mit dem LAN verbunden ist.
Bei der Konfiguration der CentOS-Box als Proxyserver habe ich folgende Konfigurationen vorgenommen:
Yum aktualisiert und Squid installiert
bearbeitete /etc/squid/squid.conf -Datei wie unten gezeigt:
#
# Empfohlene Mindestkonfiguration:
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32 :: 1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 :: 1
# Beispielregel, die den Zugriff von Ihren lokalen Netzwerken zulässt.
# Passen Sie an, um Ihre (internen) IP-Netzwerke aufzulisten, von denen aus Browsing
zulässig ist.
#Acl localnet src 10.0.0.0/8 # RFC1918 mögliches internes Netzwerk
#acl localnet src 172.16.0.0/12 # RFC1918 mögliches internes Netzwerk
acl localnet src 192.168.1.0/24 # RFC1918 mögliches internes Netzwerk
#acl localnet src fc00 :: / 7 # RFC 4193 lokales privates Netzwerk
#acl localnet src fe80 :: / 10 # RFC 4291 linklokale (direkt angeschlossene) Maschinen
.
.
(andere Zeilen bleiben jetzt gleich)
Der Squid-Proxy wurde gestartet:
# Service Squid Start # Chkconfig Squid auf
Die Datei /etc/sysctl.conf wurde wie folgt bearbeitet
net.ipv4.ip_forward = 1
Die Datei / etc / sysconfig / iptables-config wurde bearbeitet
In folgenden Zeilen wurde "no" in "yes" geändert: Und gespeichert
IPTABLES_SAVE_ON_STOP = "Ja" IPTABLES_SAVE_ON_RESTART = "Ja"
Die Regeln in iptables wurden wie folgt geändert:
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# iptables -t filter -D EINGABE -j REJECT --reject-with icmp-host-disabled
# iptables -t filter -D FORWARD -j REJECT --reject- mit icmp-host-verboten
# iptables -t filter -A INPUT -p TCP -dport 3128 -j ACCEPT
# iptables -A INPUT -j REJECT --reject-with icmp-host-verboten
# iptables -A FORWARD -i eth1 -p tcp --dport 443 -d www.facebook.com -j DROP
# iptables -A FORWARD -i eth1 -p tcp --dport 443 -d www.youtube.com -j DROP
# Dienst iptables speichern
# chkconfig iptables beim
# Dienst iptables restart
Installierte den dhcp-Server (yum install dhcp)
Deaktiviert die Selinux:
# setenforce 0
# vim / etc / sysconfig / selinux und chandge;
SELINUX = Durchsetzen auf
SELINUX = deaktiviert
Die Datei / etc / sysconfig / dhcpd wurde bearbeitet und hinzugefügt.
DHCPDARGS = eth1
Die Datei /etc/dhcp/dhcpd.conf wurde wie folgt bearbeitet:
# DHCP-Server-Konfigurationsdatei.
# see /usr/share/doc/dhcp*/dhcpd.conf.sample
# siehe 'man 5 dhcpd.conf'
#
autoritativ;
Subnetz 192.168.1.0 Netzmaske 255.255.255.0 {
Bereich 192.168.1.50 192.168.1.220;
Option Domain-Name-Server 8.8.8.8, 8.8.4.4;
# Option Domain-Name "Centos.local"
Option Router 192.168.1.1;
Option Broadcast-Adresse 192.168.1.255;
Default-Lease-Zeit 600;
Max-Lease-Zeit 7200;
}
Der DHCP-Server wurde gestartet
# Dienst dhcpd start
# chkconfig dhcpd ein
Nach dem Hinzufügen von Filter-Sites / Regeln / Dateierweiterungen zu
a.) /Etc/squid/acls.txt
b.) /Etc/squid/adult.txt und
c.) /Etc/squid/badsites.txt Dateien Ich habe die / geändert. etc / squid / squid.conf Datei:
.
(Die oben genannten Regeln, wie in Schritt 2 beschrieben)
.
#
# Ihre eigene Regel (S) übertragen Sie hier den Zugriff von Ihrem KUNDEN DAMIT
#
visible_hostname CETOS-server.local
acl sozialen dstdomain -i "/etc/squid/acls.txt"
acl badsites dstdomain -i „/ etc / squid / badsites .txt "
acl adult url_regex -i" /etc/squid/adult.txt "
acl Nichtarbeitszeit SMTWHFS 18: 00-23: 59
ACL Nichtarbeitszeit SMTWHFS 00: 00-06: 00
http_access verweigern nicht funktionierende
http_access verweigern soziale
http_reply_access verweigern Badsites
http_reply_access verweigern Erwachsenen
# Wir empfehlen Ihnen, mindestens die folgende Zeile zu verwenden.
hierarchy_stoplist cgi-bin?
# Kommentieren Sie das Kommentarzeichen und passen Sie Folgendes an, um ein Laufwerk-Cache-Verzeichnis hinzuzufügen.
cache_dir ufs / var / spool / squid 10240 16 256
.
(Andere Regeln wurden nicht geändert)
Neu gestarteter Tintenfisch, dhcpd und iptables:
# chkconfig squid auf
# service squid restart
# chkconfig iptables auf
# Dienst iptables neu starten
# chkconfig dhcpd beim
# Dienst dhcpd restart
Sobald dies erledigt ist, funktioniert der Proxy sehr gut. Kein PC im LAN kann auf das Internet zugreifen, ohne den Proxyserver (192.168.1.1 Port: 3128) zu verwenden.
Vielen Dank.