Navigation

    Netgate Discussion Forum
    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search

    Ntlm_auth No such file or directory-Squid mit Squidguard und SSO an Windows-AD

    Deutsch
    2
    3
    1489
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      alex.g 0 last edited by

      Hallo,
      mein Ziel ist die Installation von Squid mit Squidguard auf einer pfsense 2.2. Ich bin hauptsächlich nach diesem Thread vorgegangen:https://forum.pfsense.org/index.php?topic=58700.0.
      Aber eben gleich auf einer pfsense 2.2 da die verwendeten Pakete von FreeBSD nicht mehr gepflegt werden. Ausserdem scheint mir auch Dansguardian kein aktives Projekt mehr zu sein.

      Ich find ich bin schon weit gekommen, stecke jetzt aber jetzt dabei fest das Zeilen in der squid.conf wie:
      auth_param ntlm program /usr/local/bin/ntlm_auth –helper-protocol=squid-2.5-ntlmssp
      Zu dem Fehler "No such file or directory" führen. Obwohl ein Aufruf von:
      /usr/local/bin/ntlm_auth
      Auf der shell funktioniert. Ich hab das ganze auch im squid-Forum gepostet: http://squid-web-proxy-cache.1019090.n4.nabble.com/ntlm-No-such-file-or-directory-td4669085.html.
      Gute Hinweise bekommen, aber alle Lösungswege dort scheinen bei mir nicht zum Ziel zu führen. Vielleicht doch pfSense-spezifisch?


      Auch wenns noch nicht funktioniert, hier schonmal mein Howto bis zu diesem Punkt:
      Voraussetzung

      • pfsense 2.2 Grundinstallation inkl. Updates. Squid und Squidguard installiert und funktionsfähig.

      • Die Uhrzeit zwischen pfsense und Windowsserver sollte gleich sein, am besten synchronisiert

      • Die pfsense muss den Windowsserver als DNS-Server verwenden.

      • Die Namensauflösung für “windowsserver” muss passen

      Installation Samba und Heimdal:
      #pkg install samba4 heimdal
      Wenn erfolgreich dann die /etc/krb5.conf erstellen. Die Kerberos Realm werden groß geschrieben! Punkt hinter den realm beachten!

      [logging]
      default = FILE:/var/log/krb5libs.log
      kdc = FILE:/var/log/krb5kdc.log
      admin_server = FILE:/var/log/ksadmind.log
      [libdefaults]
      default_realm = MYDOMAIN.LOCAL.
      dns_lookup_realm = true
      dns_lookup_kdc = true
      ticket_lifetime = 24h
      forwardable = yes
      default_tgs_enctypes = DES-CBC-CRC DES-CBC-MD5 RC4-HMAC
      default_tkt_enctypes = DES-CBC-CRC DES-CBC-MD5 RC4-HMAC
      preferred_enctypes = DES-CBC-CRC DES-CBC-MD5 RC4-HMAC
      [realms]
      MYDOMAIN.LOCAL = {
      kdc = windowsserver.mydomain.local.:88
      #Hier weitere domaincontroller möglich
      #kdc = windowsserver2.mydomain.local.:88
      
      admin_server = windowsserver.mydomain.local.:749
      default_domain = mydomain.
      }
      [domain_realm]
      .mydomain. = MYDOMAIN.LOCAL.
      mydomain. = MYDOMAIN.LOCAL.
      [kdc]
      profile = /var/heimdal/kdc.conf
      [appdefaults]
      pam = {
      debug = false
      ticket_lifetime = 36000
      renew_lifetime = 36000
      forwardable = true
      krb4_convert = false
      }
      

      Ebenso die Datei  /var/heimdal/kdc.conf erstellen:

      [kdcdefaults]
      acl_file = /var/heimdal/kadm5.acl
      dict_file = /usr/share/dict/words
      admin_keytab = /var/heimdal/kadm5.keytab
      v4_mode = noreauth
      [libdefaults]
      default_realm = MYDOMAIN.
      [realms]
      MYDOMAIN. = {
      master_key_type = des-cbc-crc
      supported_enctypes = des3-hmac-sha1:normal arcfourhmac:
      normal des-hmac-sha1:normal des-cbc-md5:normal des-cbc-crc:normal
      des-cbc-crc:v4 des-cbc-crc:afs3
      }
      

      Und die /var/heimdal/kadm5.acl anlegen:

      */*Administrator@MYDOMAIN.LOCAL *
      
      

      Die Samba-Konfigurationsdatei /usr/local/etc/smb4.conf erstellen. Bei Interfaces das LAN-Interface (sieht man z.B. per ifconfig) und den Netbiosnamen der pfsense:

      
      [global]
      interfaces = e1000g0
      bind interfaces only = yes
      netbios name = PFSENSE
      workgroup = MYDOMAIN
      realm = MYDOMAIN.LOCAL
      server string = Domain Proxy Server
      encrypt passwords = yes
      security = ADS
      password server = *
      log level = 3
      log file = /var/log/samba/%m.log
      max log size = 50
      socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
      printcap name = /etc/printcap
      preferred master = No
      dns proxy = No
      ldap ssl = no
      ; idmap uid = 10000-20000
      ; idmap gid = 10000-20000
      winbind use default domain = yes
      winbind enum users = yes
      winbind enum groups = yes
      winbind nested groups = yes
      ; winbind separator = \
      client use spnego = yes
      client ntlmv2 auth = yes
      cups options = raw
      
      

      Datei /etc/rc.conf:

      
      samba_server_enable="YES"
      winbindd_enable="YES"
      
      

      Scheinbar muss man hier noch ein Verzeichnis anlegen:

      mkdir /var/run/samba4
      /usr/local/etc/rc.d/samba_server/restart
      

      Und dann mit folgendem Befehl Domainenmitglied werden:

      
      /usr/local/bin/kinit myadmin@MYDOMAIN.LOCAL
       /usr/local/bin/net ads join -U administrator@DOMAIN.LOCAL
      Enter administrator@DOMAIN.LOCAL`s password:
      Using short domain name -- MYDOMAIN
      Joined 'pfsense' to dns domain 'MYDOMAIN.LOCAL'
      
      

      Samba neu starten, Gruppe ändern und man sollte schon die user und Gruppen des ADs sehen:

      /usr/local/etc/rc.d/samba_server restart
      chgrp proxy /var/db/samba4/winbindd_privileged
      /usr/local/bin/wbinfo -t
      /usr/local/bin/wbinfo -u
      /usr/local/bin/wbinfo -g
      

      Und jetzt käme das Einfügen der Konfiguration in Squid was eben dann zum Fehler führt:

      
      acl_uses_indirect_client on;follow_x_forwarded_for allow localhost;
      auth_param ntlm program /usr/local/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp;
      auth_param ntlm children 10;
      auth_param ntlm keep_alive on;
      acl password proxy_auth REQUIRED;
      
      
      1 Reply Last reply Reply Quote 0
      • P
        phisch last edited by

        So weit, so gut!  :)
        Bei mir funktionierte alles, bis ich pfSense neugestartet habe. Danach kam ebenfalls "ntlm_auth No such file or directory".
        Warum ging es anfangs und nach einem Neustart nicht mehr?

        lg Philipp

        1 Reply Last reply Reply Quote 0
        • A
          alex.g 0 last edited by

          Ja Philipp, kann sein das ich das auch schon so erlebt habe, siehe hier:https://forum.pfsense.org/index.php?topic=58700.msg482763#msg482763
          Da steht auch drin wie man diesen Fehler abstellt und weitermacht. Gelöst ist es aber nicht, hierzu ist der Beitrag von marcelloc hier recht aussagekräftig:
          https://forum.pfsense.org/index.php?topic=87782.msg483244#msg483244

          Also mein Fazit ist das es mit Proxy und sso bei pfsense momentan ganz schlecht aussieht. Würd mich aber sehr freuen wenn jemand meinem Fazit widerspricht!

          Gruß Alex

          1 Reply Last reply Reply Quote 0
          • First post
            Last post