[Howto] Squid auf dem NAS

  • Stehen in deiner squid.conf keine Log-Pfade wie

    Code
    cache_dir ufs /opt/var/squid/cache 100 16 256access_log /opt/var/squid/logs/access.log squidcache_log /opt/var/squid/logs/cache.logcache_store_log /opt/var/squid/logs/store.log


    ?


    Wenn bei mir der squid läuft, sieht ps so aus

    Code
    [/opt/etc/init.d] # ps | grep squid
    14814 admin       576 S   /opt/sbin/squid -f /opt/etc/squid/squid.conf
    14816 nobody     5284 S   (squid) -f /opt/etc/squid/squid.conf
    14865 admin       528 R   grep squid
  • Hm... Wenn ich Ehrlich bin: Ich hab keine Ahnung.


    Also mit FoxyProxy habe ich per Port 80 auf den Proxy-Server connectet. Und siehe da: Es klappt!!! Jetzt habe ich aber ein anderes Problem: Egal welche Seite ich aufrufe, der leitet es auf sich selber. Sprich wenn ich Qnapclub aufrufe, komme ich auf meine NAS seite. Wenn ich Qnap.com aufrufe komme ich auf die Nas-Seite. Ist das normal? :/

  • hast du auf deinem NAS in den Netzwerkeinstellungen unter DNS-Server und Gateway die IP-Adresse deines Routers eingetragen ?


    Bzw.

    Zitat von "DonBambus"

    Also mit FoxyProxy habe ich per Port 80 auf den Proxy-Server connectet.


    Zitat von "DonBambus"

    http_port 3128


    in der squid.conf hast du den Port 3128 eingetragen und den solltest du auch in Fox-Proxy verwenden
    oder den Port auf 80 belassen und Apache beenden, beides geht nicht.

  • a) Ja, habe ich...
    b) Das sieht ja gleich anders aus. Mit 3128 funktioniert's nicht. "Der Proxy Server verweigert die Verbindung" erhalte ich nur.


    PS: Ich habe eine FritzBox 7270, Falls das irgendwie zusammenhängen Könnte. :/

  • An der FritzBox liegt es nicht, ich nutze auch eine 7170.


    EDIT 2010-05-24:


    Könntest du bitte die Ordner-Berechtigungen der verzeichnisse:
    /opt/var/squid/cache
    /opt/var/squid/logs
    mit

    Code
    chown -R nobody:everyone /opt/var/squid/cachechown -R nobody:everyone /opt/var/squid/logs


    setzen und
    mit

    Code
    /opt/sbin/squid -z


    die Cache-Struktur erstellen.
    Starte danach nochmal den Proxy.


    Stefan

  • Hallo zusammen,
    ich habe auch Squid auf meinem TS-439 installiert, er läuft perfekt.


    Ich schaffe es jedoch nicht Squid automatisch bei Systemstart zu starten.
    foldendes habe ich ausprobiert:
    ein autorun.sh auf /share/MD0_DATA/config angelegt mit folgendem Inhalt:

    Bash
    #!/bin/sh/opt/sbin/squid -f /opt/etc/squid/squid.conf


    Code
    mount -t ext2 /dev/sdx6 /tmp/config
    ln -s /share/MD0_DATA/config/autorun.sh /tmp/config/autorun.sh
    umount /tmp/config


    Starte ich /share/MD0_DATA/config/autorun.sh in der Console wird Squid gestartet.
    aber nach dem Boot wird er nicht gestartet.


    Habe dann auch schon die Zeile im autorun.sh ersetzt mit z.B. ls /usr >/share/MD0_DATA/config/usr_dir.txt
    Dieses wird ausgeführt beim Systemstart.
    Auch das Ersetzen der Zeile mit "/opt/etc/init.d/S80squid start" brachte nichts.


    Kann mir jemand weiterhelfen?


    Danke und Gruss
    Marvi

  • Hi,


    die autorun.sh sollte schon im Flash liegen. Das hat schon so seine gründe.
    Mache mal den Symlink wesch und kombiniere mal die Beiden hier:
    http://forum.qnapclub.de/viewtopic.php?f=208&t=6733
    http://forum.qnapclub.de/viewtopic.php?f=208&t=6734


    Danach edierst Du mal die Optware init.d scripts und prüfst mal die Pfade (Ob das so passt).
    Dach werden alle init.d scripts innerhalb der optware gestartet.


    Man könnte auch noch die Libs dazu nehmen. Dann würde es so aussehen:


    so sollte es dann eigentlich keinen Grund mehr geben die autorun.sh editieren zu müssen, wenn man sachen aus der Optware nutzt oder andere Dienste via init.d startet. Auch wenn man die optware selbst mal updated (das QPKG) und sich dann die Pfade nicht ändern. Also relativ Revisionssicher.


    Grüsse, David

  • Hallo David


    vielen Dank dass du dich meinem Problem annimmst ;)


    bitte korrigiere mich wenn ich falsch liege (bin nicht der Linux Guru), aber soweit ich dein Script verstanden habe, geht es durch alle /opt/etc/init.d/S*-Startscripts und startet diese, oder?

    Code
    for optdaemon in `ls /opt/etc/init.d/S* | grep -v '~' | sort`
    do
    ${optdaemon} start
    done


    Das würde ja heissen, wenn ich "/opt/etc/init.d/S80squid start" direkt im autorun.sh im Flash eintragen würde, müsste das dann funktionieren.


    Das geht nämlich auch nicht :( Das hab ich als erstes gehabt... Manueller Aufruf geht, aber nicht automatisch nach dem Boot.


    Danke und Gruss

  • Hallo Marvi,


    Zitat von "Marvi"

    Das würde ja heissen, wenn ich "/opt/etc/init.d/S80squid start" direkt im autorun.sh im Flash eintragen würde, müsste das dann funktionieren.


    das Problem dabei ist, was mir gerade einfällt, das der Symlink /opt zum Zeitpunkt der Ausführung der autorun.sh noch nicht existiert.
    Daher müßte in die autorun.sh zusätzlich vorher noch "/etc/init.d/Optware.sh start" aufgerufen werden.


    Nun macht es wieder Sinn, wie David schon schrieb, den Aufruf der squid.sh mit in die optware.sh einzufügen.


    Stefan

  • Genau.


    Wobei Du das script "/etc/init.d/Optware.sh" nicht umbedingt starten muss. Das macht der Part hier dann in der autorun.sh:

    Code
    #Symlink Optware to /opt
    rm -rf /opt
    ln -sf /share/MD0_DATA/.qpkg/Optware /opt


    Im prinzip müsstest Du nur das Script so wie es oben ist in die Autorun.sh übernehmen.
    Mache es mal 1:1. Bin mir ganz sicher, dass es dann funktioniert. :thumb:


    Grüsse, David

  • so.. hab es nun probiert.
    Geht leider auch nicht.
    Habe dann folgendes gefunden:
    http://wiki.qnap.com/wiki/Squid

    Zitat


    Notice: Autostart squid each reboot by putting this into Autorun.sh (the 'sleep 60;' is necessary for not initializing squid too early):

    Code
    (sleep 60; /opt/etc/init.d/S80squid start) &


    Habe diese Zeile nun in die autorun.sh eingetragen und den erstellten Link so gelassen
    so klappts wie gewünscht.


    Danke für deine Hilfe
    Gruss
    Marvi

  • Hi,


    Sorry I don't speak German but I hope one of you will be able to help me. I dug on the English-speaking forum without luck and can see that many German speaking people seem to have given a try at installing Squid on QNap.


    I followed all the steps from the wiki on http://wiki.qnap.com/wiki/Squid (and applied a minor correction to the wiki by the way) - thanks to its initial author.


    Squid starts and I can proxy through it, cool, looked good at first but soon I found out that some pages were slow and some elements of pages were not loading.
    Looking at the logs (tail -f ./logs/cache.log) I found out that Squid was crashing on every other request and restarting over and over again logging the following message:-


    FATAL: Received Segment Violation...dying. :cursing:


    I looked a little bit on the internet and found dozen of posts on different forums with no luck with a resolution - I am an UNIX novice ...


    Here are my HW/software configs, maybe one of you can help me out...


    QNap TS-109II
    Current firmware version: 2.1.2 Build 1114T


    2 Mal editiert, zuletzt von Terz () aus folgendem Grund: CODE Block hinzugefügt

  • Hallo,
    ich habe durch diese alte Beiträge geschaut, aber habe ich noch eine Frage bezüglich Squid als Proxy auf dem NAS (209 pro).
    Ich will über einen externe Proxy-Anbieter von einen Internet-Fernseher auf verschiedene ausländische Webseite zugreifen.
    Der externe Proxy-Anbieter braucht allerdings einen Benutzername und Passwort, und obwohl ich einen Proxy in den Fernseher eintragen kann, es kann nur einen unterstützen die keine Login braucht.
    Ich dachte ich könnte noch einen Proxy dazwischen auf meinem NAS einrichten, die von intern keine Login braucht, aber nach außen einen automatisch geben könnte.
    Ich find allerdings nicht wo ich nie nötige Einstellung im Squid Config-File schreiben sollte.
    Ich nehem an irgendwo müsste ich den URL der externe Anbieter, und login=username:password eintragen.


    Weißt Jemand ob es so funktioniert, und wo ich sowas eintragen müsste?

  • Hi,


    das es geht, steht außer Frage, aber derzeit weiß ich nicht genau wo es geht..


    Soweit ich mich erinnern kann sollte das unter cache_peer zu finden sein...
    Sicher bin ich mir nicht, aber vielleicht wirst Du unter http://www.squid-cache.org fündig


    Grüße
    Jody

  • Hallo,


    Danke für den schnelle Antwort.
    Ich habe folgende format probiert:
    cache_peer external-proxy-url parent 3128 3130 proxy-only login=benutzer:passwort


    Anscheinend könnte ich es auch danach starten:

    Code
    [~] # ps | grep squid
     1934 admin      1084 S   /opt/sbin/squid -f /opt/etc/squid/squid.conf
     1936 nobody     4312 S   (squid) -f /opt/etc/squid/squid.conf
     1939 admin       420 S   grep squid


    Allerdings wenn ich es mit FoxyProxy von einen Laptop probieren wollte, könnte es den Proxy Server nicht finden.
    Ich habe den Proxy Host wie bei visible_hostname definiert, in FoxyProxy eingetragen.
    Wie soll ich erkennen wie den Proxy Server lokal erreichber sein sollte, und damit was ich in FoxyProxy eintragen müsste?

    Einmal editiert, zuletzt von bladekiller () aus folgendem Grund: Code Block hinzugefügt.

  • Zitat von "Terz"

    Auf 'nen Squid auf 'nen NAS. Habe ich nur noch gewartet.. *SPAß* Finde das aber total lustig. :D


    Ich finde das überhaupt nicht lustig.
    Für einen Heimanwender, wer sich keinen 19" Server hinstellen will ist es von Vorteil, wenn alles auf der NAS läuft.

  • Ich hätte mal eine allgemeine Frage, funktioniert der Proxy nur intern, oder kann man den auch von aussen erreichen? also, wenn ich irgendwo auf der welt bin und über meinen proxy serven möchte?


    besten dank.


    mfg maximal1981

  • Hallöle,


    grundsätzlich kannst Du es so konfigurieren, dass Du vom Internet aus über Deinen Proxy surfen kannst!
    Stichworte:
    - Portforwarding
    - Sicherheit
    - VPN
    .... lass es lieber!


    Wenn Du es ohne Zugangsschutz vom Internet aus kannst, können es alle anderen auch! So ein Proxy bleibt auch nicht lange unendeckt und wird sehr gerne genutzt.
    Wenn Du es wirklich nutzen musst/möchtest, kann ich nur empfehlen, dem Squid eine Nutzerauthentifizierung zu spendieren und zusätzlich das ganze nur über einen VPN-Tunnel zu nutzen!


    Grüße
    Jody