vServer: user kann über ftp keine dateien mehr ändern oder löschen

oemmeo

Registered User
Hallo,

ich habe heute meinen vServer neu installieren lassen, um auf RedHat 9 und Confixx Premium umzusatteln. Vor der Neuinstallation habe ich als root per ssh alle user verzeichnisse unter /var/www/ in den ordner /backup kopiert. Nach der Neuinstallation habe ich die Benutzer in Confixx wieder eingerichtet und die Daten aus dem /backup ordner wieder zurückkopiert. Soweit hat das auch alle prima geklappt, allerdings kann ich nun, wenn ich mich als normaler user über ftp einlogge, die dort vorhandenen dateien (im html ordner) weder ändern, noch löschen oder überschreiben!!!! Ich habe keine Ahnung warum! Vielleicht weil ich sie als root dort hin kopiert habe!?!?! Kann mir bitte jemand sagen, wie ich es hinbekomme, daß meine user wieder in ihren ftp ordnern schalten und walten können?

Viele Grüße, Tina
 
Hallo Tina,

Du hast das schon ganz richtig erkannt. In dem Moment wo Du die Dateien als root umeinanderkopiert hast, hast Du den owner der Datei auf "root" geändert und damit normalerweise den anderen Benutzern sämtlichen Schreibzugriff verwehrt. Herauszufinden über die Console mit einem "ls -al". Dort steht links der User, recht daneben die zugehörige Gruppe. Dort steht bei Dir warscheinlich zweimal root.

Ändern kannst Du das mit dem Befehl "chown". Du gehst in dein /var/www/ und änderst mit einem "chown <benutzername> * -R" sämtliche Dateien, Verzeichnisse und Unterverzeichnisse in /var/www/ in Deinen neu angelegten Benutzer (Beim ändern den Benutzernamen natürlich nicht in die <klammern> setzen!)

Kurz gesagt:

- Als root einloggen
- "cd /var/www/"
- "ls -al" -> Prüfen wer der Besitzer ist (der linke der beiden Einträge - das Rechte ist die Gruppe, die ist erstmal egal.. siehe unten)
- "chown <benutzername> * -R"
- "ls -al" -> Prüfen ob der Wechsel des Besitzers geklappt hat

p.s.: Frage an unsere RedHat-Spezis: Ist unter RedHat die Gruppe standardmäßig immer gleich dem Benutzernamen? Dann könnte sie mit "chown benutzername:benutzername * -R" sowohl den owner als auch die Gruppe ändern (wobei das imho nicht unbedingt notwendig ist, der owner sollte reichen).

Gruß

Tscherni
 
Last edited by a moderator:
Hallo Tscherni,

danke für die schnelle und ausführliche Antwort. Ich hab das, was Du beschrieben hast mal probiert. Leider sieht es aber so aus, als wären die owner korrekt... nach ls -al spuckt der server folgendes aus

.
.
.
dr-xr-x--- 7 web2 apache 2048 Nov 3 17:50 web2
dr-xr-x--- 7 web3 apache 2048 Nov 3 17:50 web3
dr-xr-x--- 7 web4 apache 2048 Nov 3 17:50 web4
dr-xr-x--- 7 web5 apache 2048 Nov 3 17:50 web5
dr-xr-x--- 7 web6 apache 2048 Nov 3 17:50 web6
dr-xr-x--- 7 web7 apache 2048 Nov 3 19:45 web7
dr-xr-x--- 7 web8 apache 2048 Nov 3 19:40 web8
dr-xr-x--- 7 web9 apache 2048 Nov 3 18:10 web9

und das ist dann doch eigentlich genau richtig, oder???

und auch innerhalb der benutzerordner siehts gut aus:

dr-xr-x--- 7 web2 apache 2048 Nov 3 17:50 .
drwxr-xr-x 17 root root 2048 Nov 3 19:40 ..
drwx------ 2 root root 2048 Nov 3 17:50 .configs
drwxr-xr-x 2 web2 ftponly 2048 Nov 3 17:50 files
drwxr-xr-x 5 web2 ftponly 2048 Nov 3 18:03 html
drwxr-xr-x 3 web2 root 2048 Nov 3 18:03 log
drwxrwxrwx 2 web2 ftponly 2048 Nov 3 17:50 phptmp

Bin ratlos... :confused:

Viele Grüße,
Tina
 
Hi,

@oemmeo

Schick mir mal als PM die VEID (6-stellige vSERVER Nummer) und einen Account womit ich das testen kann, denn die Permissions sehen so wirklich korrekt aus.
 
Das ist schon echt seltsam...

@mbroemme: Ich wollte Dir gerade nen Test-Account einrichten hab aber vorsichtshalber vorher getestet, ob da derselbe Fehler auftritt, was er aber natürlich nicht tut (Vorführeffekt?). Da dachte ich schon, das Problem hätte sich auf wundersame Weise selbst über nacht erledigt und hab das Ganze mal bei meinem eigenen Account probiert, was dann auch ging. Ok, nächsten Account getestet, da gings dann wieder nicht. Ich hab aber gestern das mit dem chown, was Tscherni vorgeschlagen hatte, bei meinem Account einmal gemacht. Ich dachte nur, das hätte nicht funktioniert, weil die Liste vorher wie nacher beim Owner keine Veränderung aufwies. Es scheint aber trotzdem zu funktionieren! Also danke nochmal an euch zwei! Jetzt gehts mit besser!

Schönen Tag noch!
Tina
 
Last edited by a moderator:
Hallo

ich habe das selbe problem,was ich nicht verstanden habe,- "cd /var/www/"
was soll ich hier genau geben ?

wie kan ich zum ordner gelangen,ich bin keine profi bei root bereich.köntet ihr mir bitte detalierter schreieben.

mfg
 
Last edited by a moderator:
Beko said:
ich habe das selbe problem,was ich nicht verstanden habe,- "cd /var/www/"
was soll ich hier genau geben ?
Per SSH (Putty) auf deinem Vserver einloggen, als Benutzer rooten und dann tippen:
cd /var/www [ENTER]
 
@djrick danke für deine atword

ok ich sehe jetzt das ordner den ich nicht löschen kan oder chomd rechte setzen kan,wie setze ich jetzt das chmod rehte ?
 
Last edited by a moderator:
meine spontane Vermuitung ist, dass ich die UIDs und GIDs zwischen Backup und Restore geändert haben.
Dann mußt du für jeden Nutzer, den du aus deinem Backup versuchst, wieder her zu stellen, die User- Und Gruppen IDs neu setzen.
Ausserdem mußt du die Password Hashes aus den Shadow Files von Hand synchronisieren, oder die Passwörter von Hand neu setzen.

Die Rechte der Nutzer werden als numerische ID gespeichert.
Wenn ein Nutzer vorher die ID z.B. 1005 hatte, muß das nach dem neu anlegen des Nutzers nicht zwingend die selbe ID sein. Beim Anlegen entscheidet die Reihenfolge über die IDs.
Beim Backup wurde aber nur die ID gespeichert.

Und die Logins holen sich die IDs aus dem Usernamen, und versuchen sich das Paßwort aus den Shadow Files zu holen. Wenn sich die User ID geändert hat, klappt das natürlich nicht.

Vorgehensweise (an manchen Stellen unsauber, wenn nicht alle Dateien im (Sub)Verzeichnis dem selben Nutzer gehörten):
* Lege den Nutzer über das System neu an (Confixx, oder useradd auf der Konsole, oder wie immer du es machen möchtest), und setz dabie das Passwort
* Biege alle Owner IDs der Dateien auf den eben angelegten Nutzer um

Wenn du also früher 'nen Nutzer 'fred' auf deinem Rechenr hattest, dann leg 'nen neuen Nutzer 'fred' an, und ordne dem anschliessend sein altes $HOME zu:
chown -R fred /home/fred
 
Back
Top