Beiträge von TPIT-Service

    Arrrrg, man sollte auch vorher mal den Kopf einschalten! Es ist Sonntag heute. :(

    CLI ist für die Ausführung von PHP in der Kommandozeile, logischer Weise muss man dann dort auch die php.ini anpassen.

    Macht das aber einer nicht, so könnte man das mit dem oberen Fix umgehen. :)
    How ever!

    Hmmm, dachte ich auch erst und hatte den Eintrag in der php.ini für fpm eingetragen!

    php-fpm läuft auch, jedenfalls werden die Pools für den Webuser bereit gehalten, daher gehe ich davon aus, dass das funktioniert.
    In der php.ini für cli hatte ich es nicht drin stehen, dort habe ich es jetzt nachgetragen und die Fehlermeldung ist weg.

    Macht mich jetzt etwas stutzig, normal sollte der Eintrag in fpm reichen. Mal sehen ob ich darüber Infos finde.

    Ich glaube da hast Du etwas falsch verstanden!

    Der Fix bezieht sich nicht auf Dein Problem, sondern war/ist ein allgemeines Problem.
    Wenn ich ehrlich bin, habe ich Euer Problem noch nicht genauer gelesen. Ich war gerade dabei eine neue Installation abzusichern, wo mein angesprochener Fehler auftrat. Kurz nach einer Lösung gesucht und dachte mir ich schreib das einfach mal hier rein. ;)

    Moin, moin!

    Dein Script berücksichtigt die Timezone-Einstellungen des Servers nicht!

    In bestimmten Fällen kommt folgende Fehlermeldung zu Tage:

    Code
    PHP Warning:  date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /etc/fail2ban/nc_firewallapi_beta.php on line 77
    Firewall rule added.


    Der Hinweis Firewall rule added kann hier auch nicht stimmen, das Script kommt nicht zur Ausführung und ein Eintrag ins VCP wird nicht ausgeführt.

    Abhilfe schafft eine simple Zeile zu Beginn Deines Scriptes:

    Code
    date_default_timezone_set('Europe/Berlin');


    Europe/Berlin muss dann an die Timezone-Konfiguration des Servers angepasst werden, hier im Beispiel Europe/Berlin.

    Des Weiteren hast Du in Deiner Installationsbeschreibung nicht erwähnt, dass man seine VCP-API-Zugangsdaten auch im nc_firewallapi_beta.php eintragen kann, sollte das Script mal die Konfigurationsdatei nicht finden (Zeile 24-45). ;)

    Öhm ja, von jail.conf ist die Rede.
    Das solltest Du vielleicht, für Einige, in Deiner Installationsanweisung nicht nur kurz erwähnen, sondern auch erklären. ;)

    Und noch etwas!
    Schließt Du Deine Scripte generell nicht mit einem simplen ?> ?

    Das Design sieht ja ganz nett aus, aber analysier mal die Seite, da wird Dir schwindelig!

    Page Speed: 8 Punkte
    YSlow: 69 Punkte
    HTML-Validierung: 149 Fehler, 1071 Warnungen
    CSS 2.1-Validierung: 33 Fehler, 507 Warnungen
    CSS 3-Validierung: 26 Fehler, 507 Warnungen
    6 nicht gefundene Bilder
    Keine Bilder optimiert.
    Der Server ist absolut miserabel konfiguriert.
    usw.

    Da steckt noch viel Verbesserungsarbeit drin.

    Ernüchternd, ich weiß, aber Du wolltest ja Feedback. ;)

    Debian ist das Betriebssystem und nicht der Server. ;)

    Schau doch mal mit dpkg -l |more welche Pakete installiert sind und als Filter in Frage kommen.
    Es gibt da die unterschiedlichsten und/oder kombinierte Lösungen.
    Vielleicht bringt Dich ein Blick in die Adminoberfläche auch schon weiter.

    Vielleicht ist es aber auch nur so, das DNS nicht richtig konfiguriert ist.
    Ein Blick in die Logs könnte da Näheres verraten.

    Zudem ist es schwierig, bei ungeputzter Glaskugel, heraus zu finden, welches Image Du installiert hast? :)

    Sei mir nicht böse, aber ein wenig mehr Infos könnten hier hilfreich sein. ;)

    Dafür musst Du schon SFTP auf dem Server einrichten!

    Ansonsten ist es das Selbe, wie bei einem normalen FTP-Server auch, nur eben mit verschlüsselter Übertragung und das Du einen Schlüssel auf Deinem lokalen Rechner liegen haben musst, über den sich WinSCP, oder ein anderer SFTP-Client, authentifizieren kann.

    Wie das geht, dafür gibt es einen Haufen HowTos im Netz. ;)

    Das kann man einfach so umstellen, da Du beide Konfigurationen parallel laufen lassen kannst!
    An der Grundkonfiguration ändert sich ja erst mal nichts.
    Die entsprechenden Rechte sollten ja auch schon auf den Webverzeichnissen gegeben sein, nur der Webserver muss dazu gebracht werden, unter dem Benutzer des Verzeichnisses zu laufen.
    Das passiert ja schön separat über die Pools.

    Ich würde mir für die ersten Gehversuche einen Dump-vHost anlegen und da erst mal alles testen. Besser noch Zuhause am eigenen PC, damit man weiß was man da tut.
    Und immer schön Backups machen, damit man nicht plötzlich mit leeren Händen da steht.

    Hinterher die Umstellung auf die einzelnen vHosts könnte man sich sogar mit einer batch erleichtern, vor allem wenn man viele vHosts vergeben hat.
    Da kann ich aber nicht helfen, da ich keinen Häuptling verwende, meine Server laufen mittlerweile alle über NGINX und da ist die Konfiguration doch erheblich übersichtlicher und einfacher zu handhaben. :)
    Generell dürfte es aber in der Herangehensweise kaum Unterschiede geben. ;)

    Ich gebe Dir mal einen ganz heißen Tip!

    Beschäftige Dich mal eingehend mit php5-fpm (cgi, fastcgi) und wie man damit User in Ihr Verzeichnis sperrt.
    Mit so genannten Pools kannst Du es so konfigurieren, dass nicht www-data genutzt wird, sondern der Besitzer des Verzeichnisses/Datei (FTP-Benutzer).

    Man kann das natürlich so machen wie SIM das vorgeschlagen hat, allerdings kann man sich da auch mal ganz schnell Löcher ins System reißen und Berechtigungen vergeben, die man nicht gewollt hat. Damit möchte ich sagen, dass man da höllisch aufpassen muss und jeden Fitzel dokumentieren sollte. Einmal einer falschen Gruppe zugeordnet oder Rechte falsch vergeben, schon haben Leute Zugriff auf Verzeichnisse, die sie nicht haben dürfen. :(

    So legst Du nur einen Pool an, erstellst einen Benutzer, für ein entsprechendes Verzeichnis, mit entsprechenden Rechten, schiebst den in die Gruppe der FTP-Benutzer und schon kann er sich wirklich nur im angegebenen Verzeichnis austoben. Der Webserver läuft dann unter dem Benutzernamen, in diesem Verzeichnis, und schon hast Du alle Probleme gelöst. ;)
    Vor allem verhinderst Du damit, dass diese Benutzer in anderen Regionen stöbern, wenn Du versehentlich die Rechte falsch gesetzt haben solltest. :)

    Ein weiterer Vorteil, Deine Scripte laufen gleich noch über einen FastCGI-Manager.
    Ein weiterer Tip dazu, lass die Pools gleich über Sockets laufen.

    Infos zu PHP-FPM bekommst Du hier: Main Page

    PHP-FPM ist mittlerweile Bestandteil vom PHP 5-Core (ab der Version 5.3.3) und wird über das Paket php5-fpm installiert.

    Du kannst die Logdateien bequem in entsprechende Webverzeichnisse schreiben lassen, indem Du die vHosts.-Dateien anpasst.
    Die User sollten aber nur Leserechte bekommen, damit nicht versehentlich Dateien gelöscht oder überschrieben werden.

    Dann kannst Du Dir den ganzen Quatsch mit Root-Ebene (wie Du sie nennst) sparen.
    Deine "Root-Ebene" liegt meistens eine Eben höher als das Webverzeichnis des Users.
    Für den User ist sein Webverzeichnis sein Root-Verzeichnis und dort sollte er möglichst auch bleiben.

    Es sei denn Du denkst Dir eine etwas andere Ordnerstruktur aus, z.B. so etwas hier:

    Code
    /var/www/domain.de (Webverzeichnis)
    |- htdocs (Webordner)
    |- access_logs
    |- error_logs
    |- cgi
    ...

    Den Zugriff auf das Verzeichnis domain.de erlaubst Du dem User und läßt über die vHosts eben entsprechend die Log-Dateien in die Log-Verzeichnisse schreiben. Damit darf der User auch die Log-Dateien einsehen. Mit den entsprechenden Rechten aber nicht ändern oder löschen. ;)
    htdocs ist der eigentliche Webordner, indem die Scripte ausführbar sind. Auch das musst Du dann in den vHosts umstellen.

    Ob und wie das mit Froxlor und Konsorten möglich ist, musst Du Dir erarbeiten! Ich administrieren meine Server grundsätzlich von Hand und verlasse mich nicht mehr auf solche Tools. :) Ich gönne mir lediglich den Luxus, Mail-Adressen nicht von Hand anzulegen, aber auch das ist nicht wirklich schwer. :P

    Ich vergass noch zu erwähnen, wenn Du logrotate oder sowas nutzt, solltest Du auch dort angeben, dass die Daten in einem bestimmten Rythmus gesäubert werden. Sonst läuft Dir bei Zeiten der Server voll und das wollen wir dann auch nicht. ;)

    Zitat

    Warum nicht? Also ich hab' noch nie über das CCP den Kundenservice angeschrieben. mail@netcup.de mit Kundennummer oder v-Server-Nummer langt völlig aus. Zumindest bei mir bisher...

    Das kannst Du machen, da vermutlich Deine Email-Adresse bekannt ist.
    Ich gehe grundsätzlich über das CCP, dann brauche ich nämlich keine Daten über das Netz schicken, womöglich noch unverschlüsselt. ;)
    Obgleich es mal vorgekommen ist, dass ich eine Mail geschickt habe, aber das ist nicht die Regel.

    Oft kommt es ja nicht vor, wenn man sich selber helfen kann. Aber bei Hardware-Problemen oder speziellen Infos sieht das schon etwas anders aus.
    Der Admin, sollte die Aufgabe extern verteilt sein, hat auch nicht unbedingt die Kundennummer und über den Servernamen halte ich zum Teil für gefährlich. Wie schnell ist mal ein Wort gesprochen, ohne Bedacht oder man verplappert sich. Auch wenn ich noch so gut darauf achte, kann es doch vorkommen. Wir sind alles nur Menschen. ;)

    Siehste, dieses Thema erinnert mich daran, dass ich das mal ansprechen wollte.

    Das ich einem Admin nicht unbedingt Zugriff auf das CCP gebe, ist in meinen Augen völlig legitim.
    Allerdings hat der Admin mit Zugriff auf das VCP, was völlig logisch ist, nicht die Möglichkeit den Support zu kontaktieren.
    Da wäre mein Vorschlag, diese Möglichkeit auch über das VCP zu gewährleisten. ;)

    Allerdings ist das angesprochene Problem eine Vertragsangelegenheit und diese geht erst mal nur der Mietpartei und Netcup etwas an.

    Als Admin würde ich einfach erst mal meiner Aufgabe nachgehen und den Besitzer über den Umstand wenigstens informieren.
    Ob er weitere Schritte, auch im Urlaub, einleitet ist dann seine Entscheidung.

    Für den Betrieb eines Servers ist es nicht elementar wichtig, ob man 80 o. 120 gb Festplatte & 2 o. 4 gb Ram zur Verfügung hat.
    Für mich würde es heißen: Server am Laufen halten und abwarten, was der Besitzer erreicht.
    Wenn nötig erst nach dem Urlaub. ;)