Heute werden wir einen SQUID-Proxyserver mit der SAMS Version 1.5 Weboberfläche installieren und konfigurieren, um einen Proxyserver auf Debian Wheezy zu verwalten. Dieser Leitfaden ist einer der Artikel. Anweisungen für die Installation und Konfiguration des Internetservers.
SAMS Es ist ein System zur Verwaltung des Benutzerzugriffs über einen Proxy-Server zu Internetressourcen. Es ist ideal für den Einsatz in privaten Unternehmen und Regierungsbehörden. Die gesamte Arbeit an Proxing, Redirecting Requests, Caching und Autorisierung wird vom Proxy-Server Squid übernommen und SAMS beschäftigt sich mit Traffic Accounting und User Management.
Squid Ein Softwarepaket, das die Funktion eines Caching-Proxy-Servers für HTTP-, FTP-, Gopher- und (falls zutreffend) HTTPS-Protokolle implementiert. Entwickelt von der Community als Open-Source-Programm (vertrieben unter der GNU GPL).
Vorläufiger Server, den wir gemäß den Anweisungen konfigurieren: Installieren und Konfigurieren des Hosting-Panels ISPConfig 3 in Debian
Nachdem wir den Server gemäß den obigen Anweisungen konfiguriert haben, installieren wir einen Tintenfisch-Proxyserver sowie die SAMS-Weboberfläche, um den SQUID-Proxyserver zu verwalten, und wir installieren auch einen Redirector, um den Zugriff auf Websites zu blockieren.
Fügen Sie ein Repository von Debian Squeeze hinzu, um Abhängigkeiten während der Installation des SAMS-Webinterfaces festzulegen, indem Sie dem Befehl folgen:
echo 'deb http://mirror.yandex.ru/debian squeeze main contrib non-free' >> /etc/apt/sources.list
Aktualisieren Sie das Repository, indem Sie den Befehl ausführen:
aptitude update
Configuration File Editors:
vi Es erfordert, dass der Benutzer die Anweisungen liest. Um einen Expresskurs zu belegen, führen Sie den Befehl vimtutor aus und übergeben Sie die Hauptbefehle für die einfache Verwendung des Programms.
mcedit - einfacher zu arbeiten für einen Anfänger Linuxoid, können Sie ändern vi am mcedit und die Konfigurationsdateien bearbeiten. Nach dem Öffnen der Datei im Editor mcedit Drücken Sie F7 erscheint Suchfeld, geben Sie es, was Sie finden müssen, indem Sie auf Enter klicken. Wenn wir das Falsche finden, wiederholen Sie die Suche erneut und so weiter, bis wir die richtige Linie gefunden haben. Nachdem Sie die notwendigen Änderungen vorgenommen haben und die Datei speichern möchten, drücken Sie den Knopf. F2 Und wir akzeptieren die Veränderung. Nach dem Speichern, um die gespeicherte Datei zu schließen, drücken Sie die Taste F10
Installieren Sie den SQUID-Proxyserver, indem Sie den Befehl ausführen:
aptitude install squid
Wir erstellen einen Backup-Konfigurationskalmar, den wir ändern werden, indem wir den Befehl ausführen:
cp /etc/squid/squid.conf /etc/squid/squid.conf_backup
Öffnen Sie einen bequemen Editor für Sie (vi, mcedit, nano) Konfigurationsdatei /etc/squid/squid.conf
vi /etc/squid/squid.conf
Als nächstes werde ich schreiben, wonach wir suchen und wie es nach der Änderung aussehen sollte (der erste sieht so aus, als ob er sollte, die anderen sind so):
war:
# TAG: visible_hostname # If you want to present a special hostname in error messages, etc, # define this. Otherwise, the return value of gethostname() # will be used. If you have multiple caches in a cluster and # get errors about IP-forwarding you must set them to have individual # names with this setting. # #Default: # none
wurde:
# TAG: visible_hostname # If you want to present a special hostname in error messages, etc, # define this. Otherwise, the return value of gethostname() # will be used. If you have multiple caches in a cluster and # get errors about IP-forwarding you must set them to have individual # names with this setting. # #Default: visible_hostname inetservname
war:
http_port 3128
wurde:
http_port 3128 transparent
Achtung! Wenn Ihre Benutzer mit einem Passwort angemeldet sind, funktioniert die transparente Autorisierung nicht, Sie müssen IP:PORT Ihres Proxy-Servers im Browser des Benutzers vorschreiben.
war:
# icp_port 3130
wurde:
icp_port 0
war:
# cache_mem 8 MB
wurde:
cache_mem 256 MB
war:
# maximum_object_size_in_memory 8 KB
wurde:
maximum_object_size_in_memory 512 KB
war:
# maximum_object_size 20480 KB
wurde:
maximum_object_size 120480 KB
war:
# cache_dir ufs /var/spool/squid 100 16 256
wurde:
cache_dir ufs /var/spool/squid 5000 32 256
war:
# cache_swap_low 90 # cache_swap_high 95
wurde:
cache_swap_low 90 cache_swap_high 95
war:
# logfile_rotate 0
wurde:
logfile_rotate 5
war:
acl SSL_ports port 443 # https acl SSL_ports port 563 # snews acl SSL_ports port 873 # rsync acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl Safe_ports port 631 # cups acl Safe_ports port 873 # rsync acl Safe_ports port 901 # SWAT
wurde:
acl SSL_ports port 443 # https #acl SSL_ports port 563 # snews #acl SSL_ports port 873 # rsync acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https #acl Safe_ports port 70 # gopher #acl Safe_ports port 210 # wais #acl Safe_ports port 1025-65535 # unregistered ports #acl Safe_ports port 280 # http-mgmt #acl Safe_ports port 488 # gss-http #acl Safe_ports port 591 # filemaker #acl Safe_ports port 777 # multiling http #acl Safe_ports port 631 # cups #acl Safe_ports port 873 # rsync #acl Safe_ports port 901 # SWAT
war:
# TAG: url_rewrite_program # Specify the location of the executable for the URL rewriter. # Since they can perform almost any function there isn't one included. ... #Default: # none
wurde:
# TAG: url_rewrite_program # Specify the location of the executable for the URL rewriter. # Since they can perform almost any function there isn't one included. ... #Default: url_rewrite_program /usr/bin/samsredir
war:
#Default: # url_rewrite_children 5
wurde:
url_rewrite_children 5
war:
#auth_param basic program <uncomment and complete this line> #auth_param basic children 5 #auth_param basic realm Squid proxy-caching web server #auth_param basic credentialsttl 2 hours
wurde:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/ncsa.sams auth_param basic children 5 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hours
!!! Wenn Sie einen internen DNS-Server innerhalb des Netzwerks verwenden, können Sie dem Squid-Proxy mitteilen, dass er ihn verwenden soll, indem Sie Folgendes schreiben:
Um Ihren lokalen DNS-Server nutzen zu können, ändern wir:
war:
# TAG: dns_nameservers ... #Default: # none
wurde:
# TAG: dns_nameservers ... #Default: dns_nameservers 192.168.1.1
Speichern Sie die Änderungen und installieren Sie SAMS.
SAMS installieren.
Wir gehen in das Verzeichnis, wo wir Installationspakete herunterladen, den Ordner Samsung setzen, dorthin gehen und Installationspakete pumpen:
mkdir /usr/src/iserver/sams && cd /usr/src/iserver/sams
Wir laden Samsung-Pakete für unsere Architektur herunter:
Für amd64:
wget http://nixdev.net/release/sams/debian/squeeze/sams_1.0.5_amd64.deb wget http://nixdev.net/release/sams/debian/squeeze/sams-web_1.0.5_all.deb wget http://nixdev.net/release/sams/debian/squeeze/sams-doc_1.0.5_all.deb
Für den i386:
wget http://nixdev.net/release/sams/debian/squeeze/sams_1.0.5_i386.deb wget http://nixdev.net/release/sams/debian/squeeze/sams-web_1.0.5_all.deb wget http://nixdev.net/release/sams/debian/squeeze/sams-doc_1.0.5_all.deb
Backup-Link im Falle der Nichtverfügbarkeit von Dateien auf der offiziellen Website:
Für amd64:
wget http://softnastroy.com/downloads/sams/squeeze/sams_1.0.5_amd64.deb wget http://softnastroy.com/downloads/sams/squeeze/sams-doc_1.0.5_all.deb wget http://softnastroy.com/downloads/sams/squeeze/sams-web_1.0.5_all.deb
Für den i386:
wget http://softnastroy.com/downloads/sams/squeeze/sams_1.0.5_i386.deb wget http://softnastroy.com/downloads/sams/squeeze/sams-doc_1.0.5_all.deb wget http://softnastroy.com/downloads/sams/squeeze/sams-web_1.0.5_all.deb
Installieren Sie die heruntergeladenen Pakete:
Für amd64:
dpkg -i sams_1.0.5_amd64.deb
Für den i386:
dpkg -i sams_1.0.5_i386.deb
Wir werden die notwendigen Abhängigkeiten festlegen, um das installierte Webinterface von Sams zu konfigurieren, indem wir dem Befehl folgen:
aptitude install libmysqlclient16 php-fpdf
Ein pseudografisches Einstellungsfenster für das SAMS-Paket wird angezeigt:
SAMS require additional manual configuration
Currently SAMS package not ready to work out of box. Starting of samsdaemon disabled in init.d script.
Please read /usr/share/doc/sams/README.Debain for description of additional configure step.
<Ok>Drücken Sie OK:
Installation von SAMS 1.5
Während der Installation des Basisservers haben wir das ISPConfig 3 Hosting Control Panel installiert. Öffnen Sie das ISPConfig 3-Panel und im Tab Gebiete Fügen Sie eine Website hinzu sams.server.locIm php Sprachauswahlfeld wählen php-5.2.17 und den Button speichern. Sparen..
Löschen Sie die Standarddateien, die automatisch vom ISPConfig 3-Panel erstellt wurden: favicon.ico, robots.txt, index.html, .htaccess Und dann habe ich den Befehl erteilt.
rm /var/www/sams.server.loc/web/favicon.ico rm /var/www/sams.server.loc/web/robots.txt rm /var/www/sams.server.loc/web/index.html rm /var/www/sams.server.loc/web/.htaccess
Überprüfen Sie die Rechte der erstellten Site sams.server.loc, indem Sie dem Befehl folgen:
Gehen wir zur Datei. /usr/src/iserver/sams
cd /usr/src/iserver/sams
Erstellen Sie einen Ordner, in den wir die Webdateien des SAMS-Webinterfaces entpacken:
mkdir /usr/src/iserver/sams/webfiles dpkg --extract sams-web_1.0.5_all.deb webfiles/ dpkg --extract sams-doc_1.0.5_all.deb webfiles/
Wir übertragen Web-Schnittstellendateien und -dokumente auf die erstellte ISPConfig 3-Panel-Site, indem wir Befehle ausführen:
mv webfiles/usr/share/sams/* /var/www/sams.server.loc/web/ rm -rf /var/www/sams.server.loc/web/doc mkdir -p /var/www/sams.server.loc/web/doc mv webfiles/usr/share/doc/sams/html/* /var/www/sams.server.loc/web/doc/
Wir überprüfen den Benutzernamen und den Dateigruppennamen der Website, in unserem Fall den web3-Benutzer und die client1-Gruppe, indem wir dem Befehl folgen:
ls -l /var/www/sams.server.loc/
Systemreaktion:
drwxr-xr-x 2 web3 client1 4096 Янв 2 23:38 cgi-bin drwxr-xr-x 2 root root 4096 Янв 2 23:38 log drwx--x--- 2 web3 client1 4096 Янв 2 23:38 private drwxr-xr-x 2 root root 4096 Янв 2 23:38 ssl drwxrwxrwx 2 web3 client1 4096 Янв 2 23:38 tmp drwx--x--- 14 web3 client1 4096 Янв 4 19:52 web drwx--x--- 2 web3 client1 4096 Янв 2 23:38 webdav
Ändern Sie die Rechte an kopierten SAMS-Webinterface-Dateien, indem Sie dem Befehl folgen:
chown -R web3:client1 /var/www/sams.server.loc/web/
Wir ändern auch die Rechte an der Konfigurationsdatei. /etc/sams.conf Und dann habe ich den Befehl erteilt.
chown -R web3:client1 /etc/sams.conf
Nach Änderung der Rechte an der Konfigurationsdatei /etc/sams.conf Sie müssen das ISPConfig 3-Panel so konfigurieren, dass die SAMS-Weboberfläche die Einstellungen lesen kann. Um dies zu tun, müssen Sie die Website im Panel öffnen, gehen Sie auf den Tab Optionen. Feld PHP open_basedirAm Ende der Zeile ist Folgendes hinzuzufügen:
:/etc/sams.conf
Nachdem die Änderungen vorgenommen wurden, speichern Sie die Änderungen durch Drücken der Taste Sparen..
Wir erstellen eine Backup-Konfiguration php 5.2.17, die wir ändern werden:
cp /opt/php-5.2.17/lib/php.ini /opt/php-5.2.17/lib/php.ini_backup
Konfiguration von PHP
SAMS kann mit PHP arbeiten safe_mode=On. Dies erfordert jedoch zusätzliche Konfigurationseinstellungen. Bearbeiten Sie dazu die php5-Konfigurationsdatei. /opt/php-5.2.17/lib/php.ini
vi /opt/php-5.2.17/lib/php.ini
Schalten Sie den abgesicherten Modus ein (dies ist optional, z. B. schalten Sie mich nicht ein). Aus diesem Grund haben wir die Safe_Mode-Einstellung festgelegt.
safe_mode = On
Aber ich benutze sams c safe_mode in Off, was bedeutet, dass es sein sollte:
safe_mode = Off
SAMS verwendet für einige Funktionen der Schnittstelle Systembefehle, zum Beispiel wbinfo. Im Modus. safe_mode PHP blockiert den Zugriff auf Systembefehle. Mit Php können Sie Systembefehle ausführen, die sich in einem Verzeichnis befinden, das durch einen Parameter spezifiziert wird. safe_mode_exec_dir. Dieser Parameter wird geändert:
war:
safe_mode_exec_dir =
wurde:
safe_mode_exec_dir = "/usr/share/sams/bin"
Als nächstes erlauben wir die Ausführung von Systemskripten aus PHP-Code. Wir suchen nach einer Konfigurationsdatei und entfernen das Verbot des Aufrufs von phpinfo system shell_exec exec-Funktionen daraus:
war:
disable_functions =
wurde:
disable_functions = "chdir,dl,ini_get_all,popen,proc_open,passthru,pcntl_exec"
In PHP erhöhen wir die maximale Abfragegröße und Dateigröße.
war:
post_max_size = 8M
wurde:
post_max_size = 50M
war:
upload_max_filesize = 2M
wurde:
upload_max_filesize = 50M
Alle. PHP ist bereit zu gehen.
Sie müssen den Webserver neu starten, um die Einstellungen von php.ini erneut zu lesen:
/etc/init.d/apache2 restart
Erstellen Sie einen Datenbankbenutzer und eine mysql-Datenbank für SAMS:
Gehen Sie unter das Hosting-Panel ISPConfig 3 Tab. Gebiete Abschnitt Datenbank - Database Users - Add new User und addieren
- Client: user
- Database user: _samsuser
- Database password: ZhjKwo9Ci1P
- Repeat Password: ZhjKwo9Ci1P
Füllen Sie die Felder aus, um eine Datenbank zu erstellen, und füllen Sie die Felder aus:
- Server: webserver.server.loc
- Site: sams.server.loc
- Typ: MySQL
- Name der BD: _samsbd
- Login BG: c1_samsuser
- OBD-Code: UTF-8
- Aktiv? Tick off
Um eine Datenbank hinzuzufügen, drücken Sie den Button. Sparen.:
Füllen Sie die Felder aus, um eine Datenbank zu erstellen, und füllen Sie die Felder aus:
- Server: webserver.server.loc
- Site: mail.server.loc
- Typ: MySQL
- Name der BD: _squidbd
- Login BG: c1_samsuser
- OBD-Code: UTF-8
- Aktiv? Tick off
Um eine Datenbank hinzuzufügen, drücken Sie den Button. Sparen.:
Es ist notwendig, die Datenbanken zu ändern, die in die oben erstellten Datenbanken gegossen werden:
sed -i 's/DROP DATABASE IF EXISTS `squidctrl`;/#DROP DATABASE IF EXISTS `squidctrl`;/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/CREATE DATABASE `squidctrl`;/#CREATE DATABASE `squidctrl`;/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/USE squidctrl;/#USE squidctrl;/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/ TYPE=MyISAM/ENGINE = MYISAM/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/squidctrl/c1_samsbd/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/DROP DATABASE IF EXISTS squidlog;/#DROP DATABASE IF EXISTS squidlog;/g' /usr/share/sams/mysql/squid_db.sql sed -i 's/CREATE DATABASE squidlog;/#CREATE DATABASE squidlog;/g' /usr/share/sams/mysql/squid_db.sql sed -i 's/USE squidlog;/#USE squidlog;/g' /usr/share/sams/mysql/squid_db.sql sed -i 's/ TYPE=MyISAM/ENGINE = MYISAM/g' /usr/share/sams/mysql/squid_db.sql
Füllen Sie modifizierte Datenbankdateien aus, indem Sie Befehle ausführen ()Kopie Ändern Sie das Passwort in Ihr eigenes:
mysql -u c1_samsuser -pZhjKwo9Ci1P c1_samsbd < /usr/share/sams/mysql/sams_db.sql mysql -u c1_samsuser -pZhjKwo9Ci1P c1_squidbd < /usr/share/sams/mysql/squid_db.sql
Sams in die Datei einfügen, indem Sie die Datei korrigieren /etc/init.d/sams:
vi /etc/init.d/sams
war:
SAMS_ENABLE=false
wurde:
SAMS_ENABLE=true
Anpassung der Konfigurationsdatei an die Adresse /etc/sams.conf Richtig:
vi /etc/sams.conf
war:
... SQUID_DB=squidlog SAMS_DB=squidctrl MYSQLHOSTNAME=localhost MYSQLUSER=sams MYSQLPASSWORD=samspasswd MYSQLVERSION=4.0 ...
wurde:
... SQUID_DB=c1_squidbd SAMS_DB=c1_samsbd MYSQLHOSTNAME=localhost MYSQLUSER=c1_samsuser MYSQLPASSWORD=ZhjKwo9Ci1P MYSQLVERSION=5.5 ...
Überprüfen Sie als nächstes, ob der Tintenfisch läuft und wenn der Befehl die Nummer ausgibt, bedeutet dies, dass er ausgeführt wird:
pidof squid
Systemreaktion:
8534
Beenden Sie dann den Proxy-Server, indem Sie den Befehl ausführen:
/etc/init.d/squid stop
Systemreaktion:
* Stopping Squid HTTP proxy squid [ OK ]
Jetzt werden wir den Proxy-Server-Cache mit dem Befehl neu erstellen:
squid -z
Systemreaktion:
2009/02/16 15:55:20| Creating Swap Directories
In diesem Stadium ist das Squid-Setup abgeschlossen, jetzt führen wir einen Proxy-Server mit dem Befehl:
/etc/init.d/squid start
Um zum SAMS-Bedienfeld zu gelangen, müssen Sie die Adresse sams.server.loc/ im Browser eingeben, wenn Sie DNS auf diesem Server nicht konfiguriert haben (fügen Sie einen Eintrag zum IP-Server und den Namen sams zum DNS A hinzu), dann müssen Sie sich registrieren hosts Dateisatz (Datei befindet sich in Windows) c:\Windows\System32\drivers\etc\hosts):
192.168.1.1 sams.server.loc
wobei 192.168.1.1 die IP-Adresse des Servers ist
Öffnen Sie die Website im Webbrowser unter:
http://sams.server.loc/
Eingang des Administrators:
Login: admin
Kennwort: qwerty
Eingang unter dem Auditor:
Login: auditor
Kennwort: audit
Ich rate Ihnen dringend, das Passwort sofort zu ändern und es in ein Notizbuch zu schreiben.
Screenshots zum Einrichten von SAMS über das Webinterface:
Geben Sie das Login und Passwort in die entsprechenden Felder ein und klicken OK:
Wir sehen die erste Seite des SAMS Web-Interface:
Klicken Sie auf den Link WEB interface settings und öffnen Sie die Web-Interface-Einstellung, indem Sie auf den Button klicken:
Ändern Sie in dem Fenster, das sich öffnet, die Schnittstellensprache in der Dropdown-Liste und speichern Sie die Änderungen:
Öffnen Sie den Link. SAMS-Verwaltung und klicken Sie auf den Button, um die SAMS-Verwaltungseinstellungen zu öffnen:
Ändern Sie im geöffneten Fenster die Einstellungen gemäß folgendem Beispiel:
- Verkehrszähler: Vollständig (erhalten von Proxy-Server + Cash)
- NCSA: Tick off
- Überprüfen Sie auf einen Befehl, um den Tintenfisch jedes Mal neu zu konfigurieren: 5 Sekunden
- Verarbeitung von SQUID-Logs: Tick off
- Führen Sie den Log-Handler in N Minuten aus
- Verfahren durch: 5 Minuten.
- Fügen Sie eine Benutzergeschwindigkeitsbegrenzung (Delaypool) hinzu: Tick off
- Speichern Sie Verkehrsdaten in der Datenbank für das Neueste: 6 Monate
Um Änderungen an den SAMS-Einstellungen zu speichern, drücken Sie die Taste Speichern Sie die Änderungen
Stellen Sie sicher, dass Sie die Template-Einstellungen ändern Default:
Ändern Sie im geöffneten Fenster die Einstellungen gemäß folgendem Beispiel:
- Default User Traffic (Mb): 0
- Methode der Benutzerautorisierung: NCSA
Um Änderungen an den SAMS-Einstellungen zu speichern, drücken Sie die Taste Speichern Sie die Änderungen
Hinzufügen des Benutzers durch Klicken auf den Link Nutzer und klicken Sie auf das Benutzer-Symbol hinzufügen am unteren Rand der Seite, in dem Fenster, das sich öffnet, füllen Sie die neuen Benutzerdaten aus (z. B. unten):
- Benutzer: admin
- IP-Adresse/Maske: 192.168.1.50/255.255.255.0
- Name: Administrator
- Gruppe: Administrators
- Der Nutzer ist aktiv: Tick off
- Meldebogen: Default
Um einen Benutzer hinzuzufügen, drücken Sie die Taste Hinzufügen eines Benutzers:
Speichern Sie die Änderungen an der SAMS-Weboberfläche, indem Sie auf den Link klicken SQUIDDrücken Sie das Icon SQUID reconfiguration Drücken Sie die Taste. Rekonfigurieren
! Probleme
Wenn SAMS den Traffic nicht zählt.
Lasst uns den Befehl ausführen.
sams -d
Wenn es ein Problem gibt, wird ein Fehler auftreten, hatte ich ein Problem mit der Datenbank squid_db, löschte den Inhalt der Datenbank, reimportiert nach dem Beispiel oben und kein Problem. Jetzt zählt SAMS den Verkehr.
Die Anleitung zur Installation eines Proxy-Servers Squid mit der SAMS-Weboberfläche in Debian Wheezy ist vollständig.
Ich war bei dir. Sergej Lazarenko.
Machen wir eine kurze Pause und schauen uns das Video an, wie man eine Dose mit bloßen Händen ohne improvisierte Mittel öffnet:

























Kommentar