PDA

Bekijk Volledige Versie : mod_ruid en webmail rechten



Blacky
29/03/10, 17:49
Na een geslaagde verhuizing is er na toepassing van mod_ruid het volgende probleem:

Error opening ../data/default_pref
Default preference file not found or not readable!
In de php.ini staat safe mode op off. Een ./build update en ./build squirrelmail helpt ook niet dus volgens mij is heeft het te maken met mod_ruid.

Nu vond ik daar deze oplossing voor van Wido:
http://www.webhostingtalk.nl/directadmin/121707-directadmin-beveiliging-2.html#post880641

Maar dat is wel van juli 2007 dus bijna 3 jaar geleden.
Is daar nog geen nettere/betere oplossing voor?
Ik heb voor mod_ruid de handleiding van Randy gebruikt.

t.bloo
29/03/10, 17:52
/webmail als centrale alias doorverwijzen naar je centrale webmail software en die met de juiste webapps user laten draaien

dan heeft iedereen de goede webmail die ook goed hoort te draaien met mod_ruid of watdanook

Blacky
29/03/10, 17:59
Hoe doe je zoiets?

Het ziet er overigens naar uit dat phpmyadmin ook niet blij is met mod_ruid, wenst ook niet te werken. Is daar ook nog een goede oplossing voor?
Die werkt wel maar je kunt er maar met 1 persoon tegelijk gebruik van maken dus als klant A ermee bezig is kan klant B er niet op inloggen. Of hoort dat zo?

Yourwebhoster
29/03/10, 18:24
Geen idee of dit het probleem is, maar je kunt dit proberen:

chown -R webapps:webapps /var/www/html

Wanneer krijg je die fout trouwens?

Blacky
29/03/10, 18:40
Kan me bijna niet voorstellen dit dit het probleem is want op alle Centos servers en zelfs de Debian server staat de eigenaar van /var/www/html op root : root.

lrwxrwxrwx 1 root root 19 Mar 29 17:34 squirrelmail -> squirrelmail-1.4.20
drwxr-xr-x 16 webapps webapps 4.0K Mar 7 01:40 squirrelmail-1.4.20

Wel staat de /date directory op apache:webapps maar dat is ook op elke Centos en Debian server aldus het geval.
drwxrwx--- 2 apache webapps 12K Mar 7 01:40 data

De fout krijg ik te zien als ik vanuit DA de webmail open en dan gewoon probeer in te loggen met accountnaam en wachtwoord. Geldt voor alle accounts.
Heeft volgens mij echt met mod_ruid te maken.

Yourwebhoster
29/03/10, 18:44
Kan me bijna niet voorstellen dit dit het probleem is want op alle Centos servers en zelfs de Debian server staat de eigenaar va n/var/www/html op root:root.

lrwxrwxrwx 1 root root 19 Mar 29 17:34 squirrelmail -> squirrelmail-1.4.20
drwxr-xr-x 16 webapps webapps 4.0K Mar 7 01:40 squirrelmail-1.4.20

Wel staat de /date directory op apache:webapps maar dat is ook op elke Centos en Debian server aldus het geval.
drwxrwx--- 2 apache webapps 12K Mar 7 01:40 data

De fout krijg ik te zien als ik vanuit DA de webmail open en dan gewoon probeer in te loggen met accountnaam en wachtwoord. Geldt voor alle accounts.
Heeft volgens mij echt met mod_ruid te maken.
Ik heb het probleem hier zelf niet, ik draai wel de recentere versie maar ook met die versie had ik dat probleem met mod_ruid niet. Als het echt mod_ruid is, dan zou je het ook moeten hebben als je het uitschakelt (zou zeggen, probeer het even).

Edit:
Kijk eens hier: Squirrelmail error opening ../data/default_pref - DirectAdmin Forums
al geprobeerd? Het eerst wat ik krijg als ik de fout invoer op google namelijk.

Yourwebhoster
29/03/10, 18:45
edit: samengevoegd; del this please

Blacky
30/03/10, 00:23
Ik ben al verschillende berichten nagegaan die ik op Google tegen kwam. Daardoor denk ik ook dat het mod_ruid is, want ik vond verschillende threads ook hier op WHT waar dit aangegeven stond.
Vandaar ook de link naar de oplossing van Wido.
Van het directadmin forum heb ik al alles geprobeerd wat ik daar tegen kwam in die thread en nog een andere thread en de help sectie.
Chmod 755 van de data directory geeft weer een andere fout aan:

Preference file, /var/www/html/squirrelmail/data/accountnaam.pref, could not be opened.

En mod_ruid uitschakelen is nog niet zo heel eenvoudig zo te zien.
Dan moeten alle httpd.conf's aangepast worden.

Blacky
30/03/10, 01:26
Aanvulling: Een alias zoals T. Bloo beschreef heb ik ook geprobeerd maar geeft hetzelfde probleem.
Tenminste als dat in de httpd-alias.conf bedoeld is:

Alias /webmail "/var/www/html/squirrelmail/"
Was trouwens ook te testen door http://domeinnaam.nl/squirrelmail te gebruiken want die alias bestaat ook al. Zelfde foutmelding helaas.

Yourwebhoster
30/03/10, 10:43
nano /etc/httpd/conf/httpd.conf
Voeg toe boven "ServerAdmin admin@localhost": (Verander dit meteen even naar je eigen adres)
# mod_ruid
RMode config
RUidGid apache apache

Wat je hier toevoegt; haal je dus weg. En je zet een # voor

LoadModule ruid_module /usr/lib/apache/mod_ruid.so


cd /usr/local/directadmin/data/templates/custom

deze dir maak je leeg of je haalt het volgende uit alle bestanden:

RMode config
RUidGid |USER| |GROUP|
RGroups apache


En nu herschrijf je de instellingen overal:

echo "action=rewrite&value=httpd" >> /usr/local/directadmin/data/task.queue


Wat is hier niet moeilijk aan?

Spyder01
30/03/10, 11:29
Mooier is natuurlijk als hij z`n webmail gewoon weer met mod_ruid aan de gang krijgt. Heb mensen zoals Randy en jou niet gehoord dat hun webmail niet werkt. Ben dan ook benieuwd wat er bij de TS anders / niet goed is.

Yourwebhoster
30/03/10, 11:47
Als hij er zo zeker van is, mag hij het van mij uitproberen. Terugzetten is zo gebeurt:)
Even ter duidelijkheid:
- PHP is compiled als CLI?
je hebt de set_permissions.sh laten lopen?

Probeer anders via ./build de webapps te installeren; wie weet.

t.bloo
30/03/10, 11:51
Hier werkt dit op meerdere servers gewoon naar behoren. Al eens geprobeerd om de lastige files met het handje op meer lees/schrijf rechten te zetten?

Mark17
30/03/10, 11:55
RUidGid apache apache

Moet dat niet zijn (voor de webmail/phpmyadmin/etc.):

RUidGid webapps webapps

Yourwebhoster
30/03/10, 11:56
Dat staat prima zo, werkt hier zo naar behoren dus.

Blacky
30/03/10, 14:17
Ik ben niet goed in scripting, had dus wel het nodige uitgezet, maar durfde het alleen niet aan om die datatask.queu regel weg te halen.

Php is compiled als CLI. Ik heb de set_permissions laten lopen op zowel email alsook op userdirs. Php safe mode staat ook uit.
Ik heb zelfs de hele squirrelmail weggehaald en middels ./build update en ./build squirrelmail weer opnieuw geinstalleerd, nog steeds hetzelfde probleem.

@T. Bloo: Nee dat het ik nog niet geprobeerd , wel heb ik eens alle files op owner webapps gezet i.p.v. apache:webapps, maar wilde de security niet compromiteren door meer rechten te geven op bestanden. En als het bij iedereen goed werkt met de normale instellingen moet dat bij ons toch ook zo kunnen? Dat is wat ik er zo vreemd aan vind.

Even een frappant detail. Het begon me vannacht te irriteren dus heb ik Roundcube maar weer eens geinstalleerd. Deze werkte onmiddellijk goed, zonder ook maar een enkel probleem of welke aanpassing dan ook.

De klanten kunnen dus weer webmailen maar met Roundcube.
Het euvel ligt dus ergens aan squirrelmail, maar waar en waarom, dat maakt me nu wel nieuwsgierig.

Yourwebhoster
30/03/10, 14:18
Al geprobeerd om via ./build het opnieuw te installeren?

Blacky
30/03/10, 14:19
Ehmz...

Ik heb zelfs de hele squirrelmail weggehaald en middels ./build update en ./build squirrelmail weer opnieuw geinstalleerd, nog steeds hetzelfde probleem.
Ja dus... zelfde probleem.

Yourwebhoster
30/03/10, 14:20
Excuses, overheen gelezen.

Blacky
30/03/10, 14:21
Excuses is niet nodig hoor, ben al dankbaar dat je mee aan het denken bent.;)

Blacky
01/04/10, 00:28
Iemand nog een idee waarom Roundcube zonder problemen werkt en Squirrel zelfs na een herinstallatie van Squirrel niet?

hostb
14/04/10, 14:26
Heb je dit probleem weten op te lossen uiteindelijk?

Blacky
14/04/10, 14:37
Nee, sterker nog, eergisteren een nieuwe server ingeregeld, DA erop, Squirrel erop, daarna mod_ruid en hups, weer hetzelfde probleem.
Dus die werkt nu ook noodgedwongen met Roundcube.

Yourwebhoster
24/04/10, 12:46
Hi
heb het zelf al even geleden uitgevogeld, en dacht toevallig aan dit topic. Hier is de oplossing:
Maak de custom config

cd /usr/local/directadmin/data/templates
cp virtual_host2.conf custom
cd custom
nano virtual_host2.conf

Dit moet in het bestandje staan:

|?DOCROOT=`HOME`/domains/`DOMAIN`/public_html|
|?OPEN_BASEDIR_PATH=`HOME`/:/tmp:/usr/local/lib/php/|
<VirtualHost |IP|:80>
|CUSTOM|
|?CGI=ScriptAlias /cgi-bin/ `DOCROOT`/cgi-bin/|
ServerName www.|DOMAIN|
ServerAlias www.|DOMAIN| |DOMAIN| |SERVER_ALIASES|
ServerAdmin |ADMIN|
DocumentRoot |DOCROOT|
|CGI|

|USECANONICALNAME|

#SuexecUserGroup |USER| |GROUP|
RMode config
RUidGid |USER| |GROUP|
RGroups apache
CustomLog /var/log/httpd/domains/|DOMAIN|.bytes bytes
CustomLog /var/log/httpd/domains/|DOMAIN|.log combined
ErrorLog /var/log/httpd/domains/|DOMAIN|.error.log

<Directory |DOCROOT|>
Options +Includes -Indexes
php_admin_flag engine |PHP|
php_admin_flag safe_mode |SAFE_MODE|
php_admin_value sendmail_path '/usr/sbin/sendmail -t -i -f |USER|@|DOMAIN|'
|*if OPEN_BASEDIR="ON"|
php_admin_value open_basedir |OPEN_BASEDIR_PATH|
|*endif|
</Directory>

<Directory |DOCROOT|/cgi-bin>
Options +ExecCGI
</Directory>

|HANDLERS|
|MIMETYPES|

</VirtualHost>
<VirtualHost |IP|:80>
ServerName webmail.|DOMAIN|
ServerAdmin |ADMIN|
RUidGid webapps webapps
RGroups apache
DocumentRoot /var/www/html/webmail
CustomLog /var/log/httpd/domains/|DOMAIN|.bytes bytes
CustomLog /var/log/httpd/domains/|DOMAIN|.log combined
ErrorLog /var/log/httpd/domains/|DOMAIN|.error.log
</VirtualHost>


Het gaat om het laatste stuk, daarbij stel je in mod_ruid als de user webapps en daardoor heb je geen schrijfrecht fouten. Waar ik bij het instellen toen op vast liep, was dat webmail wilde chmodden en daarbij een foutmelding gaf. De oplossing is eenvoudig:


chmod 777 /var/www/html/webmail/tmp


Hierdoor is een chmod niet meer nodig.

Toelichting:
Je dient zelf een A record aan te maken voor de webmail die wijst naar de IP die ingesteld is bij de gebruiker.

Dit is voor de nieuwe gebruikers:

cd /usr/local/directadmin/data/templates
cp dns_a.conf custom
cd custom
echo "webmail=|IP|" >> dns_a.conf

Atmail verzend probleem
Als je die ook krijgt, doe dit

echo 127.0.0.1 >> /etc/virtual/whitelist_hosts
/sbin/service exim restart

Alle clients zullen werken vanaf webmail.domein.tld/webmail


Hoop dat je er wat aan hebt, moest het even snel tikken (beetje rommelig denk ik). Als het niet lukt of als ik wat vergeten ben, tell me.

Edit: Je kan natuurlijk de aliassen weghalen zodat alles alleen vanaf webmail.domain.tld bereikbaar is, echter moet je /var/www/html/webmail in de virtualhost config aanpassen naar /var/www/html .

Blacky
24/04/10, 13:25
Bedankt voor de uitleg. Ik zal het eens op een van de servers proberen. Zelf ben ik echter niet zo'n liefhebber van extra 777 directory's.

Moet dat extra A record er perse bij? Want het is verder prima als de mensen het bereikt kunnen krijgen via http://hun.domein.nl/webmail zoals het nu ook het geval is met Roundcube.

Maar in elk geval fijn dat je er nog aan dacht en de uitleg hier!

Yourwebhoster
24/04/10, 13:28
Bedankt voor de uitleg. Ik zal het eens op een van de servers proberen. Zelf ben ik echter niet zo'n liefhebber van extra 777 directory's.

Moet dat extra A record er perse bij? Want het is verder prima als de mensen het bereikt kunnen krijgen via http://hun.domein.nl/webmail zoals het nu ook het geval is met Roundcube.

Maar in elk geval fijn dat je er nog aan dacht en de uitleg hier!
Je kan ook zonder webmail werken, had hier de voorkeur voor. Echter draai je op webmail.domein.tld wel als de gebruiker webapps. Echter smarty probeert de dir tmp te chmodden naar 777 (vraag me niet waarom, misschien dat je dit ergens kan uitschakelen in smarty) en loopt daarop vast.

Edit: zonder webmail.domein.tld kan niet, sorry foutje. Ik krijg iedere keer weer fouten, als iemand een betere oplossing heeft dan hoor ik dat graag.

Blacky
24/04/10, 13:38
Oke prima dus het is te fixen maar dan moet het wel via de webmail.domein.tld in plaats van via www.domein.tld/webmail.
Geen probleem, men kan in elk geval dan wel Squirrel draaien en webmail.domein.tld staat ook wel mooi, toch?
Thanks!

Yourwebhoster
24/04/10, 13:42
Oke prima dus het is te fixen maar dan moet het wel via de webmail.domein.tld in plaats van via www.domein.tld/webmail (http://www.domein.tld/webmail).
Geen probleem, men kan in elk geval dan wel Squirrel draaien en webmail.domein.tld staat ook wel mooi, toch?
Thanks!
Persoonlijk vind ik het niet zo'n probleem. En anders verwijder je de webapps en maak je op een eigen server de webmail aan. Zat vandaag hieraan te werken: webmail.yourwebhoster.eu . Ik heb de code hier een beetje aangepast waardoor op de door mij ingestelde servers ingelogd kan worden (niet de traditionele manier van uebimiau). Dan zou ik niet iedere keer alles hoeven in te stellen op de webservers en draait alles centraal. Maar goed, dit is natuurlijk een optie waar je rekening mee kan houden en ik weet niet in hoeverre de andere e-mail clients hier ondersteuning voor hebben en wat je hiervoor moet aanpassen. Misschien als het weer eens slecht weer is.

Blacky
24/04/10, 13:48
Ik vind het zelf ook niet zo'n probleem.
Dat van de webmail doen op een eigen server is misschien ook wel een aardig idee, maarja daar heeft eigenaar misschien geen zin in, die houdt de zaken nogal graag standaard, hoeft ie zelf niet te zoeken.:)
Maar toch leuk om misschien eens te proberen met wat slechter weer inderdaad of van de winter.;)

Yourwebhoster
08/05/10, 18:31
Even een kickje: Tim heeft een andere oplossing bedacht, zie http://www.webhostingtalk.nl/directadmin/160358-probleem-met-squirrelmail.html#post1141014

Tim.Bracquez
08/05/10, 18:35
Even een kickje: Tim heeft een andere oplossing bedacht, zie http://www.webhostingtalk.nl/directadmin/160358-probleem-met-squirrelmail.html#post1141014
Heb ik niet bedacht, komt denk ik ook van ergens hier op het forum of ...

Zijn meer dan 1 methode!

Zorg dat je wel dit in de vhost van de user zet omdat je anders bij een reseller dit naar het 'shared' ip laat sturen, niet zo mooi ! Dus |IP| gebruiken, komt die mooi op het juiste ip / reseller ip

Yourwebhoster
08/05/10, 18:37
Heb ik niet bedacht, komt denk ik ook van ergens hier op het forum of ...

Dan heb ik daar over heen gekeken:X