abe4tux2
Anmeldungsdatum: 27. August 2012
Beiträge: Zähle...
|
hi zusammen, ich habe ein dualbootsystem bestehend aus (k)ubuntu 14.10 und windows 8 – also alles am aktuellen stand. meine daten-partition(ntfs) von windows habe ich unter /win/d gemounted und kann auch ganz normal von kubuntu aus darauf zugreifen. Auch apache2 läuft tabellos (incl. user_dir: public_html).
Auf dieser patition befindet sich ein verzeichnis namens „websites“, welches ich für WAMP nutze und auch gerne für den LAMP zugreifbar machen möchte. Ich habe versucht mit dieser anleitung http://wiki.ubuntuusers.de/Apache/Virtual_Hosts einen virtuallen host zu erstellen – zielend auf /win/d/websites was dann leider mit „Forbidden - You don't have permission to access / on this server“ geendet hat.
Es scheint so, als ob virutalle hosts nur unterverzeichnisse von /var/www sein können, aber sicher bin ich mir da nicht.
Ich denke mal es liegt an den zugriffsrechten, da dieses gesammte laufwerk dem root@plugdev gehöhrt.
Zugriffsrechte für „websites“ sind auf drwxrwx-–
meine versuche diese zu ändern schlugen aber leider fehl, da ich mich damit auch nicht sonderlich gut auskenne hat vielleicht schon jemand solch einen beidseitigen zugriff für apache realisiert? Oder hat jemand eine andere idee?
|
MPW
Anmeldungsdatum: 4. Januar 2009
Beiträge: 3729
|
Hallo, das Verzeichnis muss der Gruppe www-data gehören, bzw. diese muss darauf zugreifen können. Virtuelle Hosts müsste man eigentlich von überall erstellen können. Wenn Apache nicht die Rechte hat, die Dateien zu lesen, kann es sie logischer Weise auch nicht weiterverteilen. Grüße
MPW
|
Dakuan
Anmeldungsdatum: 2. November 2004
Beiträge: 6339
Wohnort: Hamburg
|
Es scheint so, als ob virutalle hosts nur unterverzeichnisse von /var/www sein können, aber sicher bin ich mir da nicht.
Das ist die Standard Einstellung. Aber man kann eigentlich bei jedem Webserver das root Verzeichnis (DocumentRoot) für jeden virtuellen Host gesondert einstellen. Allerdings kann ich jetzt nicht sagen, wie das mit Apache geht (ist schon zu lange her). Momentan setzte ich Lighttpd ein. Bei mir liegen die Verzeichnisse z.B. unter:
/home/www/server_1 ... /home/www/server_n
und Besitzer ist der User www und die Gruppe ist www-data oder users. Das mit der Gruppenzugehörigkeit wird aber erst interessant, wenn der Server auch Schreiben soll (Dateiupload). Ansonsten sollte es reichen, wenn Gott und die Welt wenigstens lesen dürfen.
|
abe4tux2
(Themenstarter)
Anmeldungsdatum: 27. August 2012
Beiträge: 10
|
vielen dank für eure antworten ☺ ich kann leider die berechtigungen von "websites" nicht ändern.. (weder besitzer noch gruppe)
ich hab es mit chmod und auch mit einer root-gui versucht. beide werfen zwar keine fehlermeldung beim ändern aus, doch an den rechten ändert sich einfach nichts.
vielleicht ist das aber auch gar nicht so gut, denn dann wird "websites" wohl für windows schreibgeschützt sein. interessant wäre der gruppe www-data zugriff auf dieses plug-dev-verzeichnis (websites) zu gewähren..
bzw.. dem apache zu erlauben plug-dev lesen zu können.
aber ich muss gestehen, ich kenne mich damit nicht wirklich aus und habe auch über google (noch)nichts diesbezüglich gefunden. ich suche mal weiter und melde mich, falls ich etwas dazu finde mfg abe
|
MPW
Anmeldungsdatum: 4. Januar 2009
Beiträge: 3729
|
abe4tux2 schrieb: ich kann leider die berechtigungen von "websites" nicht ändern.. (weder besitzer noch gruppe)
ich hab es mit chmod und auch mit einer root-gui versucht. beide werfen zwar keine fehlermeldung beim ändern aus, doch an den rechten ändert sich einfach nichts.
...du kannst doch einfach - sofern die Gruppe Leserechte hat - den User, der Apache ausführt, in die Gruppe hängen, dem die Dateien gehören. Zeig mal die genauen Dateirechte ls -al /pfad/zum/freizugebenden/Ordner /edit: Gerade nochmal oben bei dir nachgelesen, die Rechte sind 770. Also einfach den Benutzer der passenden Gruppe hinzufügen: sudo usermod -aG <Gruppennamen> www-data Wie die Gruppe heißt, kannst du dem ls -al .. -Befehl entnehmen. Grüße
MPW
|
abe4tux2
(Themenstarter)
Anmeldungsdatum: 27. August 2012
Beiträge: 10
|
danke für die schnelle antwort!
gibt mir folgende zeile aus:
drwxrwx-– 1 root plugdev 0 Nov 19 15:52 websites ich habe also..
| sudo usermod -aG plugdev www-data
sudo service apache2 restart
|
.. gemacht (und habe keine fehlermeldung erhalten) wenn ich auf den virtuellen server zugreifen möchte, kommt aber leider noch immer: „Forbidden - You don't have permission to access / on this server“.
ich vermute, es liegt daran, dass der besitzter "root" ist und dieser user unter ubuntu ziemlich eingeschränkt ist, richtig?
ich habe das aber nicht so konfiguriert.. das wurde bei der installation von kubuntu so gemacht. ich habe noch versucht, meine gruppe (selber name wie mein benutzername) der gruppe hinzuzufügen.. aber leider mit dem selben ergebnis
| sudo usermod -aG meinegruppe www-data
|
edit: wahrscheinlich ist das sinnlos, denn ich dneke ich bin schon in der gruppe drinnen gewesen ☺ edit2: eine kleine fehlermeldung beokmme ich beim neustarten des apache schon:
"AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message".
doch ich denke, die ist eher unwichtig, denn die hatte ich auch schon bei früheren installationen ☺
|
MPW
Anmeldungsdatum: 4. Januar 2009
Beiträge: 3729
|
abe4tux2 schrieb: | sudo usermod -aG meinegruppe www-data
|
Hast du wirklich das getippt? Korrekt wäre in deinem Fall: sudo usermod -aG plugdev www-data
|
Dakuan
Anmeldungsdatum: 2. November 2004
Beiträge: 6339
Wohnort: Hamburg
|
ich kann leider die berechtigungen von "websites" nicht ändern..
Wenn ich das jetzt alles richtig verstanden habe, liegt das Verzeichnis "websites" auf der Windows Partition. Da können keine Rechte nach Linux Muster eingestellt werden. Entscheidend ist hier, wie die Partition ins System eingebunden ist und wem der Mountpunkt gehört (wahrscheinlich root). Zeige doch mal die Ausgabe von:
mount
und wenn die Partition unter /media/... eingehängt ist, auch noch:
ls -l /media
(das ist ein kleines L)
|
abe4tux2
(Themenstarter)
Anmeldungsdatum: 27. August 2012
Beiträge: 10
|
@MPW
nein natürlich nicht 😉
ich habe zuerst das hier gemacht:
| sudo usermod -aG plugdev www-data
|
weil das nichts verändert hat, habe ich dann noch zusätzlich das hier versucht:
| sudo usermod -aG <meinegruppe> www-data
|
anstatt <meinegruppe> habe ich meinen usernamen (was ja unter (k)ubuntu gleichzeitig der username ist) verwendet Edit: zwischendurch noch apache neugestartet und getestet
|
MPW
Anmeldungsdatum: 4. Januar 2009
Beiträge: 3729
|
abe4tux2 schrieb: anstatt <meinegruppe> habe ich meinen usernamen (was ja unter (k)ubuntu gleichzeitig der username ist) verwendet
Das kannst du ja dann mal test id Und kannst du jetzt mit deinem Benutzer ohne sudo auf die Dateien zugreifen? Z.B. Mal etwas aus einem Unterordner anzeigen: cat /pfad/zur/Freigabe/beliebigeDatei Grüße
MPW
|
abe4tux2
(Themenstarter)
Anmeldungsdatum: 27. August 2012
Beiträge: 10
|
@Dakuan
hier ist die Ausgabe von mount:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 | /dev/sda5 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,nodev,noexec,nosuid)
sysfs on /sys type sysfs (rw,nodev,noexec,nosuid)
none on /sys/fs/cgroup type tmpfs (rw,uid=0,gid=0,mode=0755,size=1024)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,nodev,noexec,nosuid,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,nodev,noexec,nosuid,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
/dev/sda2 on /win/c type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
/dev/sda3 on /win/d type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
/dev/sda6 on /root type ext4 (rw)
/dev/sda7 on /home type ext4 (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nodev,noexec,nosuid)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,noexec,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=<meinusername>)
|
von ls -l /media/
| drwxr-x---+ 2 root root 4096 Nov 19 16:23 <meinusername>
|
wenn ich
ls -l /media/<meinusername> mache bekomme ich "insgesamt 0"
hier sind bei mir immer nur usb-drives gelistet..
/win/d/websites ist auf einer partition drauf (kein externes laufwerk)
|
abe4tux2
(Themenstarter)
Anmeldungsdatum: 27. August 2012
Beiträge: 10
|
@MPW
danke! den befehl "id" kannte ich noch nicht..
wenn ich id an der console eingebe kommt
| uid=1000(<meinusername>) gid=1000(<meinusername>) Gruppen=1000(<meinusername>),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),109(lpadmin),125(sambashare)
|
ich bin mir aber fast sicher, dass ich in der gruppe schon von anfang an drinnen war.
ich konnte auch vorher über gui oder shell ganz normal drauf zugreifen und schreiben.
mein problem ist nur, dass es der apache einfach nicht checkt ☺ mfg abe
|
MPW
Anmeldungsdatum: 4. Januar 2009
Beiträge: 3729
|
Das sieht - bis auf die Gruppennamen mit den seltsamen Namen 😀 - gut aus. Nun prüf mal, ob apache das hinbekommt: grep www-data /etc/group
|
abe4tux2
(Themenstarter)
Anmeldungsdatum: 27. August 2012
Beiträge: 10
|
| grep www-data /etc/group
www-data:x:33:
plugdev:x:46:<meinusername>,www-data
<meinusername>:x:1000:www-data
|
Vielen dank nochmals für eure hilfe!
ich frag mich immer, wie ihr auf diese sexy einzeiler kommt..
ich nutze ja linux auch schon recht lange, aber mehr oder weniger nur als desktop-user.. bis auf meine ausflüge zum wamp.
also echt: *RESPEKT*
|
abe4tux2
(Themenstarter)
Anmeldungsdatum: 27. August 2012
Beiträge: 10
|
Ich bin jetzt mal so frech und poste, was ich für den virtuellen server gemacht habe..
zuerst versucht die benutzerrechte zu ändern:
| sudo chown -R $USER:$USER /win/d/websites
sudo chmod -R 755 /win/d/websites
|
wie ich später gemerkt habe, hat das aber nichts gemacht. wenn ich es richtig verstanden habe, musste ich unter /etc/apache2/sites-available eine .conf-datei (mit dem namen meiner wunschadresse + .conf) anlegen.
der pfad ist also: /etc/apache2/sites-available/<meinusername>sites.com.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 | <VirtualHost *:80>
ServerName <meinusername>sites.com
ServerAlias <meinusername>sites www.<meinusername>sites.com
ServerAdmin webmaster@localhost
DocumentRoot /win/d/websites
<Directory /win/d/websites/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
|
danach
| sudo service apache2 reload
sudo service apache2 restart
sudo a2ensite <meinusername>sites.com.conf
|
zuletzt meine /etc/hosts
| 127.0.0.1 localhost <meinusername>sites.com
127.0.1.1 <meinusername>computer
#192.168.0.12 <meinusername>sites.com
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
|
zuletzt nochmal den apache neugestartet
| sudo service apache2 restart
|
ich glaube das war alles.. mehr steht im tutorial http://wiki.ubuntuusers.de/Apache/Virtual_Hosts auch nicht drinnen
|