Jump to content
Froxlor Forum
d00p

Problems with NSCD using Debian? Try this...

Recommended Posts

Dear debian-users,

we know, that many of you struggle with nscd and libnss-mysql(-bg). I've quickly developed a patch which allows you to use an alternative: libnss-extrausers

Basically, this nss-module allows us to create "custom" passwd, group and shadow files which makes the use of libnss-mysql(-bg) and therefore many database-connections obsolete.

If you have massive problems with users not being recognized or similar, just follow these commands:

#> apt-get install libnss-extrausers
#> sed -i -e 's/mysql/extrausers/g' /etc/nsswitch.conf
#> cd /var/www/froxlor
#> wget http://files.froxlor.org/patches/0001-libnss-extrausers.patch
#> patch -p1 < 0001-libnss-extrausers.patch
#> rm 0001-libnss-extrausers.patch
#> php /var/www/froxlor/scripts/froxlor_master_cronjob.php --force

Hope this helps a few of you guys - we'll add this feature with an enable/disable option and install instructions in the next release.

To switch back to libnss-mysql just reverse the changes to the nsswitch.conf file:

#> sed -i -e 's/extrausers/mysql/g' /etc/nsswitch.conf

Thanks for using froxlor and have fun :)

Regards

Michael (d00p)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Similar Content

    • By negrusti
      After switching shell for FTP user from /bin/false to /bin/bash, I am able to login via SSH/SFTP as this user only after I manually restart nscd. Shall I file a bug?
    • By irisdina
      Hier mal ein kleines TUT wie man Froxlor mit NGINX (inkl. HTTP2), MARIADB und PHP7/1.0 betreibt.
      Ausgehend von Debian (9) Stretch
      Debian Stretch ist der neuste Stable rel. aber leider sind einige Sachen schon wieder veraltet bzw. alte Repos vorhanden, in den Debian Repos. Bsp. Nginx und MARIADB daher braucht man einige Sources wo man neuere Repos. Pakete bekommt.
      1. apt install curl wget apt-transport-https dirmngr subversion git
      2. Keys laden
      wget http://www.deb-multimedia.org/pool/main/d/deb-multimedia-keyring/deb-multimedia-keyring_2016.8.1_all.deb && dpkg -i deb-multimedia-keyring_2016.8.1_all.deb && wget https://nginx.org/keys/nginx_signing.key && apt-key add nginx_signing.key && apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
      3. Debian Stretch Source.list (/etc/apt/sources.list)
       
      4. apt-get update && apt-get dist-upgrade && apt-get autoclean
      Sollte Punkt 4 keine Fehler angezegt haben, fangen wir mit der Installation von MariaDB an.
      5. apt install mariadb-server mariadb-client

      Wärend der Installation werdet ihr nach dem Setzen den MySQL-Root PW's gefragt.


      nun sollte MariaDB installiert sein:
      mit mysql --version könnt ihr die version prüfen.

      und nun können wir NGINX installieren. In Debian Stretch wird version 11.9 von NGINX ausgeliefert, wir wollen aber mindestens vers. 1.12+ haben, weil da einige Fixes dabei sind.
      6. NGINX
      apt-get install nginx

      mit nginx -v können wir die version überprüfen.

      6.1 
      mkdir /etc/nginx/sites-available
      mkdir /etc/nginx/sites-enabled
      6.2
      Wenn man NGINX direkt von nginx.org per Repo bezieht, wird nur eine sehr minimale Struktur installiert, daher müssen wir da noch etwas Hand anlegen.
      Als erstes nehmen wir uns die nginx.conf (/etc/nginx/nginx.conf) vor mit nano /etc/nginx/nginx.conf wenn man den Editor nano nicht benutzen möchte kann man auch Vi oder dass Programm WinSCP benutzen

      wir löschen den ganzen inhalt und fügen dies ein
      und Speichern den inhalt und Prüfen kurz die nginx.conf mit nginx -t

      NGINX ist nun bereit und wir gehen über zu PHP.
       
      7. PHP 7.0 Installieren
      Ohne PHP geht gar nichts mit dem Webserver, daher müssen wir jetzt einige Pakete installieren.

      Prüfen wir hier auch die kurz die vers. von PHP mit php -v

      jetzt starten wir kurz mal NGINX und PHP7.0-FPM neu mit
      service nginx restart
      service php7.0-fpm restart
      Sollten die zwei services ohne Probleme neu gestartet sein, prüfen wir kurz per Browser ob unser Webserver richtig läuft.
      Dazu nehmen wir einen Browser und rufen per IP oder Domain unseren Server auf und bekommen eine schöne Meldung, wenn alles läuft wie es soll.

      8. Jetzt können wir Froxlor installieren.
      8.1 Als erstes sollten wir einen separaten vhost für Froxlor anlegen und nicht direkt per IP aufrufen.
      Dazu benutzen wir jetzt nano (oder einen anderen Editor deiner Wahl: siehe Punkt 6.2)
      nano /etc/nginx/sites-enabled/frox
      und fügen diesen inhalt ein
      Wie ihr seht, benutze ich php7.0-fpm.sock anstatt php-fcgi (127.0.0.1:8888) dazu aber gleich mehr
      und Speichere die Datei und überprüfen mit nginx -t ob alles OK ist, falls Ja starten wir den Server mit service nginx restart neu.
      8.3 Nun wechseln wir ein passenden Verzeichnis wo wir Froxlor hin haben wollen. als Bsp. habe ich jetzt /usr/share/nginx/ genommen.
      cd /usr/share/nginx/ und laden Froxlor per git (von GitHub) herunter. 
      dazu geben wir ein git clone https://github.com/Froxlor/Froxlor.git

      (Empfehlung den Froxlor Ordner immer umbennen bsp. per mv /usr/share/nginx/Froxlor /usr/share/nginx/dein wunsch name)
       
      8.4  Jetzt können wir Froxlor mit der http://www.SubDomain/dein frox verz./ (die wir dafür eingerichtet haben aufrufen)

       
      Sollte keine Fehler anzeigen gehen wir zum nächsten Schritt.
      Und geb deine Daten ein. (Ändert auch den Datenbank Name und den Benutzer für die Froxlor SQL)

      Und klicken auf Installation fortführen. (Meistens kommt jetzt die Meldung dass die userdata.inc.php nicht im /lib/ verzeichnis gespeichert werden konnte sondern im /tmp/ verzeichnis, daher müssen wir diese kurz verschieben.
      mv /tmp/userdata.inc.php /usr/share/nginx/euer froxlor verz./lib/
      solltet ihr die Datei verschoben haben, login wir uns nun in Froxlor ein und fangen an es einzurichten (ich zeige jetzt nur wenige dinge!)
      Wichtig:
      Jetzt sollten wir auch die Vhost Datei wieder löschen mit rm /etc/nginx/site-enable/frox aber nginx noch nicht neu Starten, dies macht Froxlor gleich von selbst. 
      (Hat den Hintergrund, das Froxlor gleich seine eigene Vhost conf erstellt und dies dann mit unseren Probleme macht und nginx nicht startet)
       
      8.5 Da wir php7.0-fpm benutzen müssen wir in den Einstellungen etwas ändern:
      Einstellungen => NGINX Einstellungen und gehen runter zu Nginx-PHP-Backend hier steht drin: 127.0.0.1:8888 dies ändern wir jetzt zu: unix:/run/php/php7.0-fpm.sock und klickt danach auf Speichern.

      Dies hat den Hintergrund da wir keine php-fcgi Datei brauchen/wollen.
       
      8.6 Jetzt erstellen wir kurz die cronjob Datei für Froxlor, dazu gehen wir
      Konfiguration » Debian Jessie (8.x) » Sonstige (System) » Cronjob for froxlor 
      und befolgt dort die Anweisungen. (in den jeweiligen Zeilen steht (/usr/bin/nano xxxxx es reicht wenn ihr nur nano xxxx) ein gebt bzw. dann geht dies auch nur mit dem Editor.
       
      Anmerkung:
      Falls ihr in Konfiguration » Debian Jessie (8.x) » Webserver (HTTP) » nginx reingeht braucht ihr 98% der Texte dort nicht zu beachten, weil diese nicht benötigt werden.
      Ihr braucht nur diesen Block (der letzte)
      und ggf. den für die acme.conf (Falls ihr SSL benutzt) zu beachten, den Rest braucht ihr nicht!
       
      Hoffe diese kleine Anleitung hilft euch weiter, bei fragen einfach melden
    • By nurtext
      Moin,
      anscheinend schlägt Let's Encrypt bei Subdomains fehl, weil es gerne auch eine weitere "www"-Subdomain an die bestehende hängen würde. Siehe Log:
      root@meine-tolle-domain:/root# /usr/bin/php5 -q /var/www/froxlor/scripts/froxlor_master_cronjob.php --letsencrypt --debug [information] Updating Let's Encrypt certificates [information] Updating hilfe.meine-tolle-domain.de [information] Adding SAN entry: hilfe.meine-tolle-domain.de [information] Adding SAN entry: www.hilfe.meine-tolle-domain.de [information] letsencrypt Using 'https://acme-v01.api.letsencrypt.org' to generate certificate [information] letsencrypt Creating new account key [information] letsencrypt Starting new account registration [information] letsencrypt Sending registration to letsencrypt server [information] letsencrypt Sending signed request to /acme/new-reg [information] letsencrypt New account registered. [information] letsencrypt Accepting lets encrypt Terms of Service [information] letsencrypt Accepting agreement at URL: https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf [information] letsencrypt Sending signed request to /acme/reg/18369331 [information] letsencrypt Lets encrypt Terms of Service accepted [information] letsencrypt Starting certificate generation process for domains [information] letsencrypt Requesting challenge for hilfe.meine-tolle-domain.de [information] letsencrypt Sending signed request to /acme/new-authz [information] letsencrypt Got challenge token for hilfe.meine-tolle-domain.de [information] letsencrypt Token for hilfe.meine-tolle-domain.de saved at /var/www/froxlor/.well-known/acme-challenge/5lbwRluW103CyNPdbmq7p_kd7p3blY8WGNSV0N0RNBY and should be available at http://hilfe.meine-tolle-domain.de/.well-known/acme-challenge/5lbwRluW103CyNPdbmq7p_kd7p3blY8WGNSV0N0RNBY [information] letsencrypt Sending request to challenge [information] letsencrypt Sending signed request to https://acme-v01.api.letsencrypt.org/acme/challenge/ZXmZ4SU2Oy0__ipk-ihaPtDq39OyNfBKAEHzfMvmO5U/1478709781 [information] letsencrypt Verification pending, sleeping 1s [information] letsencrypt Verification ended with status: valid [information] letsencrypt Requesting challenge for www.hilfe.meine-tolle-domain.de [information] letsencrypt Sending signed request to /acme/new-authz [information] letsencrypt Got challenge token for www.hilfe.meine-tolle-domain.de [information] letsencrypt Token for www.hilfe.meine-tolle-domain.de saved at /var/www/froxlor/.well-known/acme-challenge/eJnDjhknVPim732szZ9rZt22T9DoKP2xkQI6-A1c4KE and should be available at http://www.hilfe.meine-tolle-domain.de/.well-known/acme-challenge/eJnDjhknVPim732szZ9rZt22T9DoKP2xkQI6-A1c4KE [error] letsencrypt Please check http://www.hilfe.meine-tolle-domain.de/.well-known/acme-challenge/eJnDjhknVPim732szZ9rZt22T9DoKP2xkQI6-A1c4KE - token not available; PHP error: {"type":2,"message":"file_get_contents(http:\/\/www.hilfe.meine-tolle-domain.de\/.well-known\/acme-challenge\/eJnDjhknVPim732szZ9rZt22T9DoKP2xkQI6-A1c4KE): failed to open stream: php_network_getaddresses: getaddrinfo failed: Name or service not known","file":"\/var\/www\/froxlor\/lib\/classes\/ssl\/class.lescript.php","line":232} [information] letsencrypt Sending request to challenge [information] letsencrypt Sending signed request to https://acme-v01.api.letsencrypt.org/acme/challenge/4ZX-ZuA9abbaOpoUhAnqyhnLDUzWp7xm5YPUZns7orA/1478709934 [information] letsencrypt Verification pending, sleeping 1s [error] Could not get Let's Encrypt certificate for hilfe.meine-tolle-domain.de: Verification ended with error: {"identifier":{"type":"dns","value":"www.hilfe.meine-tolle-domain.de"},"status":"invalid","expires":"2017-07-11T15:20:54Z","challenges":[{"type":"http-01","status":"invalid","error":{"type":"urn:acme:error:connection","detail":"DNS problem: NXDOMAIN looking up A for www.hilfe.meine-tolle-domain.de","status":400},"uri":"https:\/\/acme-v01.api.letsencrypt.org\/acme\/challenge\/4ZX-ZuA9abbaOpoUhAnqyhnLDUzWp7xm5YPUZns7orA\/1478709934","token":"eJnDjhknVPim732szZ9rZt22T9DoKP2xkQI6-A1c4KE","keyAuthorization":"eJnDjhknVPim732szZ9rZt22T9DoKP2xkQI6-A1c4KE.lzkNGm6yCkkELPqgqQ8h9v-MfPi-5gRkb9yf76fy86s","validationRecord":[{"url":"http:\/\/www.hilfe.meine-tolle-domain.de\/.well-known\/acme-challenge\/eJnDjhknVPim732szZ9rZt22T9DoKP2xkQI6-A1c4KE","hostname":"www.hilfe.meine-tolle-domain.de","port":"80","addressesResolved":[],"addressUsed":"","addressesTried":[]}]},{"type":"tls-sni-01","status":"pending","uri":"https:\/\/acme-v01.api.letsencrypt.org\/acme\/challenge\/4ZX-ZuA9abbaOpoUhAnqyhnLDUzWp7xm5YPUZns7orA\/1478709935","token":"S1kgT_jIG8reMxRvGEf9niDf4WIiPyr5XslKbIFQ6eY"},{"type":"dns-01","status":"pending","uri":"https:\/\/acme-v01.api.letsencrypt.org\/acme\/challenge\/4ZX-ZuA9abbaOpoUhAnqyhnLDUzWp7xm5YPUZns7orA\/1478709936","token":"mp8J-ChoyV2gMPQyuJQoZaRlH2ePfcBYcb0v-cZ1zmU"}],"combinations":[[1],[0],[2]]} [information] Let's Encrypt certificates have been updated [notice] Checking system's last guid root@meine-tolle-domain:/root/ Irgendwie sieht das für mich nicht gewollt aus, oder? 🤔
    • By adamjedgar
      Hi guys,
       
      I have a google cloud compute debian instance
      I have been experimenting with a couple of alternatives to cpanel. Just installed virtualmin and now am looking at froxlor.
       
      I have followed the install outline as documented.
      1. I setup a google cloud launcher LAMP
      2. navigated in browser to <myserveripadress> to ensure apache is working (which it is)
      3. downloaded froxlor to /var/www/ directory
      4. chown froxlor to www-data:www-data (i also checked to ensure my webserver is running as www-data)
       
      Now when i attempt to navigate to http://<mywerveripadress>/froxlor i get the following error in browser 
      "NOTFOUND" the requested URLwas not found on this server.
       
      now when i ssh into server, froxlor is definatelly in /var/www/ directory.
      permissions are  0755 www-data:www-data
       
      i am not sure what i have done wrong?
       
      has anyone with experience in installing this on google cloud got any advice?
    • By dg3fbl
      Hallo,
       
      ich bin jetzt ein frischer" Anwender" und habe gestern auch schon mal eine Weile durch das Forum gestöbert. Aber eine Grundfrage ist mir noch nicht so richtig klar geworden.
       
      Ich möchte einen neuen VServer aufsetzen und überlege ob ich Debian 8.5 oder Ubuntu 16.04 nehmen soll.
       
      Gibt es für froxlor eine Präferenz?
       
      Ich selber kenne mich seit Jahren mit Ubuntu aus, aber mit Debian würde ich bestimmt genau so gut klar kommen. Bisher habe ich als Admin Panel Plex und Vesta-CP genutzt, aber bei letzterem komme ich mit dem Support nicht klar.
       
      Grüße aus Südhessen
      Jochen
       


×