Hallo, liebe Mitnutzer!
Dies ist mein erster Post, eine Suche nach entsprechenden Beiträgen, die das Thema eventuell schon behandeln, war erfolglos, also schreibe ich mir das jetzt mal von der Seele, in der Hoffnung, nicht gleich verhauen zu werden, weil ich den Wald vor leuter Bäumen nicht sehe.
Eingerichtet wurde der Server nach diesem HowTo:
The Perfect Server - Debian Squeeze (Debian 6.0) With BIND & Courier [ISPConfig 3] | HowtoForge - Linux Howtos and Tutorials
Folgende Änderungen wurden dabei vorgenommen:
- in /etc/locale.gen wurde de_DE.UTF8 zusätzlich eingeschaltet und danach mit locale-gen die beiden Sprachen en_US.UTF8 und de_DE.UTF8 gebaut. Sonst kommt es nämlich bei den meisten Installationen immer wieder zu Fehlermeldungen, die Sprachen betreffend.
- die my.cnf wurde nicht geändert, da die Datenbanken nicht von "außen" erreichbar sein sollen. Wozu auch?
- in /etc/vim/vimrc wurden folgende Ergänzungen vorgenommen:
set expandtab
set tabstop=4
set shiftwidth=4
syntax on
- vim.basic wurde als editor mittels update-alternatives festgelegt
So weit, so gut.
Nun also ab ins Webinterface, Kunden und Domain anlegen, zum Kunden werden und einen Shelluser anlegen. Hierbei wird kein chroot vorgenommen. Was fällt auf? Ich gebe einen Benutzernamen an und merke erst hinterher, dass meinem Benutzernamen der Kundenloginname vorangestellt wird. Wieso ist das nicht von vornherein zu sehen? Also lege ich einen neuen User an, der schlicht "-ssh" heisst, weil ich jetzt ja weiss, dass ein "rkaerner" vorn angehängt wird. Danach lösche ich den ersten Shelluser, den ich angelegt habe und gehe erst einmal eine Zigarette rauchen, damit die Scripte auf der maschine auch die Gelegenheit haben, die Arbeit auszuführen, die ich ihnen gerade aufgehalst habe.
Fein, der Login klappt. Mal eben überprüfen, wo ich bin und wer ich bin:
web1@test:~$ pwd
/var/www/clients/client1/web1
web1@test:~$ whoami
web1
web1@test:~$
Passt.
Schnell mal eine .bashrc anlegen... aber was ist das?
".bashrc" E212: Can't open file for writing
Wieso kann ich das nicht tun? Okay, verlassen wir vim mal eben.
E138: Can't write viminfo file /var/www/clients/client1/web1/.viminfo!
War zu erwarten nach der ersten Fehlermeldung. Schauen wir doch mal nach, was da klemmt:
web1@test:~$ ls -lisa
total 40
99093 4 drwxr-xr-x 10 root root 4096 Mar 22 17:08 .
99092 4 drwxr-xr-x 3 root root 4096 Mar 22 17:03 ..
99123 0 -rwxr-xr-x 1 web1 client1 0 Mar 22 17:10 .bash_history
99097 4 drwxr-xr-x 2 web1 client1 4096 Mar 22 17:03 cgi-bin
99086 4 drwxr-xr-x 2 root root 4096 Mar 22 17:04 log
99100 4 drwx--x--- 2 web1 client1 4096 Mar 22 17:03 private
99121 4 drwx------ 2 web1 client1 4096 Mar 22 17:10 .ssh
99094 4 drwxr-xr-x 2 root root 4096 Mar 22 17:03 ssl
99098 4 drwxrwxrwx 2 web1 client1 4096 Mar 22 17:18 tmp
99095 4 drwx--x--- 4 web1 client1 4096 Mar 22 17:03 web
99099 4 drwx--x--- 2 web1 client1 4096 Mar 22 17:03 webdav
web1@test:~$
Nanu? Mein Heimatverzeichnis gehört dem User und der Gruppe root? Warum? Schauen wir mal, ob wir das gerade gebogen bekommen:
root@test /var/www/clients/client1 # chown web1:client1 web1
chown: changing ownership of `web1': Operation not permitted
root@test /var/www/clients/client1 #
Nö, offensichtlich nicht. Mal abgesehen davon, dass ich keine Lust habe, auf einer managed machine nach jeder Shelluser-Anlage eines Kunden da an den Verzeichnisrechten rumzubiegen, eröffnet sich mir nun folgende Frage:
Was mache ich falsch und warum kann ein Shelluser in seinem Verzeichnis keine Dateien anlegen? Bin ich bei der Installation nach dem oben genannten Howto falsch abgebogen? Wieso habe ich nicht einmal als root die Möglichkeit, in dem Verzeichnis von web1 zu schreiben, um manuell Dateien anzulegen und deren Userzugehörigkeit zu ändern, damit der Shelluser in der Lage ist, eigene .bshrc, .bash_profile und dergleichen anlegen zu können?
Ich bitte um Hilfe und bedanke mich im voraus.
Ralph
Dies ist mein erster Post, eine Suche nach entsprechenden Beiträgen, die das Thema eventuell schon behandeln, war erfolglos, also schreibe ich mir das jetzt mal von der Seele, in der Hoffnung, nicht gleich verhauen zu werden, weil ich den Wald vor leuter Bäumen nicht sehe.
Eingerichtet wurde der Server nach diesem HowTo:
The Perfect Server - Debian Squeeze (Debian 6.0) With BIND & Courier [ISPConfig 3] | HowtoForge - Linux Howtos and Tutorials
Folgende Änderungen wurden dabei vorgenommen:
- in /etc/locale.gen wurde de_DE.UTF8 zusätzlich eingeschaltet und danach mit locale-gen die beiden Sprachen en_US.UTF8 und de_DE.UTF8 gebaut. Sonst kommt es nämlich bei den meisten Installationen immer wieder zu Fehlermeldungen, die Sprachen betreffend.
- die my.cnf wurde nicht geändert, da die Datenbanken nicht von "außen" erreichbar sein sollen. Wozu auch?
- in /etc/vim/vimrc wurden folgende Ergänzungen vorgenommen:
set expandtab
set tabstop=4
set shiftwidth=4
syntax on
- vim.basic wurde als editor mittels update-alternatives festgelegt
So weit, so gut.
Nun also ab ins Webinterface, Kunden und Domain anlegen, zum Kunden werden und einen Shelluser anlegen. Hierbei wird kein chroot vorgenommen. Was fällt auf? Ich gebe einen Benutzernamen an und merke erst hinterher, dass meinem Benutzernamen der Kundenloginname vorangestellt wird. Wieso ist das nicht von vornherein zu sehen? Also lege ich einen neuen User an, der schlicht "-ssh" heisst, weil ich jetzt ja weiss, dass ein "rkaerner" vorn angehängt wird. Danach lösche ich den ersten Shelluser, den ich angelegt habe und gehe erst einmal eine Zigarette rauchen, damit die Scripte auf der maschine auch die Gelegenheit haben, die Arbeit auszuführen, die ich ihnen gerade aufgehalst habe.
Fein, der Login klappt. Mal eben überprüfen, wo ich bin und wer ich bin:
web1@test:~$ pwd
/var/www/clients/client1/web1
web1@test:~$ whoami
web1
web1@test:~$
Passt.
Schnell mal eine .bashrc anlegen... aber was ist das?
".bashrc" E212: Can't open file for writing
Wieso kann ich das nicht tun? Okay, verlassen wir vim mal eben.
E138: Can't write viminfo file /var/www/clients/client1/web1/.viminfo!
War zu erwarten nach der ersten Fehlermeldung. Schauen wir doch mal nach, was da klemmt:
web1@test:~$ ls -lisa
total 40
99093 4 drwxr-xr-x 10 root root 4096 Mar 22 17:08 .
99092 4 drwxr-xr-x 3 root root 4096 Mar 22 17:03 ..
99123 0 -rwxr-xr-x 1 web1 client1 0 Mar 22 17:10 .bash_history
99097 4 drwxr-xr-x 2 web1 client1 4096 Mar 22 17:03 cgi-bin
99086 4 drwxr-xr-x 2 root root 4096 Mar 22 17:04 log
99100 4 drwx--x--- 2 web1 client1 4096 Mar 22 17:03 private
99121 4 drwx------ 2 web1 client1 4096 Mar 22 17:10 .ssh
99094 4 drwxr-xr-x 2 root root 4096 Mar 22 17:03 ssl
99098 4 drwxrwxrwx 2 web1 client1 4096 Mar 22 17:18 tmp
99095 4 drwx--x--- 4 web1 client1 4096 Mar 22 17:03 web
99099 4 drwx--x--- 2 web1 client1 4096 Mar 22 17:03 webdav
web1@test:~$
Nanu? Mein Heimatverzeichnis gehört dem User und der Gruppe root? Warum? Schauen wir mal, ob wir das gerade gebogen bekommen:
root@test /var/www/clients/client1 # chown web1:client1 web1
chown: changing ownership of `web1': Operation not permitted
root@test /var/www/clients/client1 #
Nö, offensichtlich nicht. Mal abgesehen davon, dass ich keine Lust habe, auf einer managed machine nach jeder Shelluser-Anlage eines Kunden da an den Verzeichnisrechten rumzubiegen, eröffnet sich mir nun folgende Frage:
Was mache ich falsch und warum kann ein Shelluser in seinem Verzeichnis keine Dateien anlegen? Bin ich bei der Installation nach dem oben genannten Howto falsch abgebogen? Wieso habe ich nicht einmal als root die Möglichkeit, in dem Verzeichnis von web1 zu schreiben, um manuell Dateien anzulegen und deren Userzugehörigkeit zu ändern, damit der Shelluser in der Lage ist, eigene .bshrc, .bash_profile und dergleichen anlegen zu können?
Ich bitte um Hilfe und bedanke mich im voraus.
Ralph