# egroupware ispconfig header.inc.php



## blackflag (7. Dez. 2008)

Hall zusammen,

nach dem der support auf egroupware scheinbar nicht vorhanden ist, probier ichs nochmal hier. Denn ich hoffe, jemand hat den entprechenden Tip

ich habe ispconfig auf debian etch und egroupware 1.6 installiert. Nun ist es so, das wenn ich über die IP auf die groupware zugreife: http://IP/egroupware/header.inc.php zugreife alle logindaten im Klartext vorliegen. Permissions sind dabei www-data:www-data rw. Ein Wechsel der Rechte zu user:web1 macht dann aber die header.inc.php nicht nutzbar.

Wo soll ich ansetzten?
Kann jemand helfen?


----------



## Till (7. Dez. 2008)

1) In welchem Verzeichnis liegt egroupware.
2) Welche Linuxdistribution verwendest Du.
3) Gehen andere php Scripte auf dem Server?
4) Hast Du Deinen Server genau wie im perfect setup beschrieben installiert?


----------



## blackflag (7. Dez. 2008)

```
1) In welchem Verzeichnis liegt egroupware.
```
Ich ahattes unter /usr/share/egroupware.
Habe dann mal ein setup unter /var/www7web1/web/egroupware probiert

selbes Ergebnis....


```
2) Welche Linuxdistribution verwendest Du.
```
Debian etch


```
3) Gehen andere php Scripte auf dem Server?
```
ja, zB eine Joomla installation


```
4) Hast Du Deinen Server genau wie im perfect setup beschrieben installiert?
```
ja, harrgenau durchgeführt. Läuft auch schon seit Jahren...


----------



## Till (7. Dez. 2008)

Ok, also generell musst Du software in die ISPConfig Verzeichnisse wie /var/www/web1/web/ installieren, alles andere geht nicht.

Erstelle bitte eine Datei info.php mit Folgendem Inhalt im Verzeichnis /var/www/web1/web/egroupware/


```
<?php
phpinfo();
?>
```
und rufe sie im Browser auf. Wird sie ausgeführt oder erhältst Du den Code?


----------



## blackflag (7. Dez. 2008)

ja, ich sehe dann was drin steht. Ausgabe:

```
<?php
phpinfo();
?>
```
wie geagt, es ist nur wenn ich über IP zugreife, wenn ich per URL draufgehe ist alles okay.


----------



## Till (7. Dez. 2008)

> wie geagt, es ist nur wenn ich über IP zugreife, wenn ich per URL draufgehe ist alles okay.


ok, dass hatte ich übersehen. Websites in ISPConfig sind grundsätzlich nicht per IP erreichbar. Du musst immer über die Domain der Webseite darauf zugreifen.


----------



## blackflag (7. Dez. 2008)

hmm, was soll ich denn nun mit der header.inc.php machen? Es können sämliche credentials ausgelesen werden! Das ist ja nun alles andere als sicher.
Was tun?
Gruß
stefan


----------



## Till (7. Dez. 2008)

Du musst auf Deinem System was verändert haben, ISPConfig zeigt nämlich beim Zugriff aud die IP die sharedIP Seite an und man kann nicht auf Unterwens zugreifen. Ich vermute mal Du hast sie entfernt oder Deinen Apache umkonfiguerirt, Du machst also am Besten diese Änderungen rückgängig damit niemand per IP auf Seiten zugreifen kann.


----------



## blackflag (7. Dez. 2008)

Also, ich habe schon seit Ewiökeiten keine Änderungen am Systems dürchgeführt, so dass ich jetzt nicht weiß, was ich möglicherweise geändert habe. Wie bekomme ich denn die sharedIP-seite wieder zur Ansicht?

mit bestem Dank
stefan


----------



## Till (7. Dez. 2008)

Du musst das Folgende am Ende der apache2.conf datei haben:


```
<Directory /var/www/sharedip>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>

###############ispconfig_log###############
LogFormat "%v||||%b||||%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig
CustomLog "|/root/ispconfig/cronolog --symlink=/var/log/httpd/ispconfig_access_log /var/log/httpd/ispconfig_access_log_%Y_%m_%d" combined_ispconfig

<Directory /var/www/*/web>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>

<Directory /var/www/*/user/*/web>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>

<Directory /var/www/*/cgi-bin>
    Options ExecCGI -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>

Include /etc/apache2/vhosts/Vhosts_ispconfig.conf
```
Und dann musst Du die IP Adresse in ISPConfig bei den Server Einstellungen angelegt haben, wodurch ISPConfig automatisch einen vhost wie folgt für die IP anlegt, der alle Zugriffe abfängt:


```
<VirtualHost 192.169.0.100:80>
  ServerName localhost
  ServerAdmin root@localhost
  DocumentRoot /var/www/sharedip
  <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
    RewriteRule .* - [F]
  </IfModule>
</VirtualHost>
```


----------



## blackflag (7. Dez. 2008)

ich habe ne alte apache2.conf  genommen und die Einträge in vhost sind auch da. Restart apache und ispconfig, aber keine Änderung.

mit bestem Dank
stefan


----------



## Till (7. Dez. 2008)

Dann hast Du bei Dir irgendwo noch etwas konfiugriert, das die ISPConfig einstellungen überschreibt.


----------



## blackflag (7. Dez. 2008)

hmm, ich wüßte nicht was. 
Ich führe jetzt erstmal ein update von 2.26 auf 2.28 durch.
Wie kann ich die Anwendung lokalisieren die stört?

mit bestem Dank
stefan


----------



## Till (7. Dez. 2008)

Da stört keine Anwendung. Du hast nur irgendwo anders in Deiner apache config noch einen vhost für die IP definiert der nicht auf das sharedip Verzeichnis sondern auf /var/www verweist.


----------



## blackflag (7. Dez. 2008)

ich kann nichts entdecken:

http://pastebin.ca/1278947

mit bestem Dank
stefan


----------



## blackflag (7. Dez. 2008)

Auch in der Vhost kann ich nichts entdecken was "nur" auf /var/www verweist.


----------



## Till (8. Dez. 2008)

Du hast mehere Wiederholungen des Abschnitts:


###############ispconfig_log###############
LogFormat "%v||||%b||||%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig
CustomLog "|/root/ispconfig/cronolog --symlink=/var/log/httpd/ispconfig_access_log /var/log/httpd/ispconfig_access_log_%Y_%m_%d" combined_ispconfig
 
<Directory /var/www/*/web>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>
 
<Directory /var/www/*/user/*/web>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>
 
<Directory /var/www/*/cgi-bin>
    Options ExecCGI -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>
 
Include /etc/apache2/vhosts/Vhosts_ispconfig.conf

In Deiner apache Konfiguration. Lösch mal alle bis auf den letzten. Dann kannst Du naochhmal die dieversen apache includes durchsehen. In der Vhosts_ispconfig.conf kann es aber nicht stehen, da ispconfig die Datei selbst von manuellen Einträgen säubert.


----------



## blackflag (8. Dez. 2008)

okay, habe ich abgeändert:


```
# ..........
#DirectoryIndex index.html index.cgi index.pl index.php index.xhtml
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml

# UserDir is now a module
#UserDir public_html
#UserDir disabled root

#<Directory /home/*/public_html>
#    AllowOverride FileInfo AuthConfig Limit
#    Options Indexes SymLinksIfOwnerMatch IncludesNoExec
#</Directory>

AccessFileName .htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
</Files>

UseCanonicalName Off

TypesConfig /etc/mime.types
DefaultType text/plain

HostnameLookups Off

IndexOptions FancyIndexing VersionSort

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

# This really should be .jpg.

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^


# This is from Matty J's patch. Anyone want to make the icons?
#AddIcon /icons/dirsymlink.jpg ^^SYMDIR^^
#AddIcon /icons/symlink.jpg ^^SYMLINK^^

DefaultIcon /icons/unknown.gif

ReadmeName README.html
HeaderName HEADER.html

IndexIgnore .??* *~ *# HEADER* RCS CVS *,t

AddEncoding x-compress Z
AddEncoding x-gzip gz tgz

AddLanguage da .dk
AddLanguage nl .nl
AddLanguage en .en
AddLanguage et .et
AddLanguage fr .fr
AddLanguage de .de
AddLanguage el .el
AddLanguage it .it
AddLanguage ja .ja
AddLanguage pl .po
AddLanguage ko .ko
AddLanguage pt .pt
AddLanguage no .no
AddLanguage pt-br .pt-br
AddLanguage ltz .ltz
AddLanguage ca .ca
AddLanguage es .es
AddLanguage sv .se
AddLanguage cz .cz
AddLanguage ru .ru
AddLanguage tw .tw
AddLanguage zh-tw .tw

LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw


#AddDefaultCharset    ISO-8859-1

AddCharset ISO-8859-1  .iso8859-1  .latin1
AddCharset ISO-8859-2  .iso8859-2  .latin2 .cen
AddCharset ISO-8859-3  .iso8859-3  .latin3
AddCharset ISO-8859-4  .iso8859-4  .latin4
AddCharset ISO-8859-5  .iso8859-5  .latin5 .cyr .iso-ru
AddCharset ISO-8859-6  .iso8859-6  .latin6 .arb
AddCharset ISO-8859-7  .iso8859-7  .latin7 .grk
AddCharset ISO-8859-8  .iso8859-8  .latin8 .heb    
AddCharset ISO-8859-9  .iso8859-9  .latin9 .trk
AddCharset ISO-2022-JP .iso2022-jp .jis
AddCharset ISO-2022-KR .iso2022-kr .kis
AddCharset ISO-2022-CN .iso2022-cn .cis
AddCharset Big5        .Big5       .big5
# For russian, more than one charset is used (depends on client, mostly):
AddCharset WINDOWS-1251 .cp-1251   .win-1251
AddCharset CP866       .cp866
AddCharset KOI8-r      .koi8-r .koi8-ru
AddCharset KOI8-ru     .koi8-uk .ua
AddCharset ISO-10646-UCS-2 .ucs2
AddCharset ISO-10646-UCS-4 .ucs4
AddCharset UTF-8       .utf8

AddCharset GB2312      .gb2312 .gb 
AddCharset utf-7       .utf7
AddCharset utf-8       .utf8
AddCharset big5           .big5 .b5
AddCharset EUC-TW      .euc-tw    
AddCharset EUC-JP      .euc-jp
AddCharset EUC-KR      .euc-kr
AddCharset shift_jis   .sjis

#AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps

AddType application/x-tar .tgz

# To use CGI scripts outside /cgi-bin/:
#
#AddHandler cgi-script .cgi

# To use server-parsed HTML files
#
<FilesMatch "\.shtml(\..+)?$">
    ##ISPConfig INSTALL## SetOutputFilter INCLUDES
</FilesMatch>

# If you wish to use server-parsed imagemap files, use
#
#AddHandler imap-file map

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

#
# The following directive disables redirects on non-GET requests for
# a directory that does not include the trailing slash.  This fixes a 
# problem with Microsoft WebFolders which does not appropriately handle 
# redirects for folders with DAV methods.
#

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^gnome-vfs" redirect-carefully 
BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully

# Allow server status reports, with the URL of http://servername/server-status
# Change the ".your_domain.com" to match your domain to enable.
#
#<Location /server-status>
#    SetHandler server-status
#    Order deny,allow
#    Deny from all
#    Allow from .your_domain.com
#</Location>

# Allow remote server configuration reports, with the URL of
#  http://servername/server-info (requires that mod_info.c be loaded).
# Change the ".your_domain.com" to match your domain to enable.
#
#<Location /server-info>
#    SetHandler server-info
#    Order deny,allow
#    Deny from all
#    Allow from .your_domain.com
#</Location>

# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/[^.#]*

<Directory /var/www/sharedip>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>

###############ispconfig_log###############
LogFormat "%v||||%b||||%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig
CustomLog "|/root/ispconfig/cronolog --symlink=/var/log/httpd/ispconfig_access_log /var/log/httpd/ispconfig_access_log_%Y_%m_%d" combined_ispconfig

<Directory /var/www/*/web>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>

<Directory /var/www/*/user/*/web>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>

<Directory /var/www/*/cgi-bin>
    Options ExecCGI -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>

Include /etc/apache2/vhosts/Vhosts_ispconfig.conf
```
es ändert aber nichts, Ich kann immer noch die Daten abgreifen.

mit bestem Dank
stefan


----------



## blackflag (8. Dez. 2008)

*solved*

okay, ich habs! Danke Till!!!
Also: Ich hatte seinerzeit mit der standard installation mit egroupware begonnen und dann immer ein update gefahren...Bei der Standartinstallation wird unter conf.d ein link zu /etc/egroupware/apache.conf angelegt, folgenden Inhalts:

```
# Apache and PHP configuration for eGroupWare
#
# Read /usr/share/doc/egroupware-core/phpgwapi/php-configuration.txt and
# /etc/php4/apache/php.ini about the meanings and suggested values for
# the configuration settings.  Many settings are required to have a
# certain value for eGroupWare to function reasonably, so only change
# something if you are sure.

Alias /egroupware /var/www/web1/web/egroupware

<Directory /var/www/web1/web/egroupware/>
  Options FollowSymLinks ExecCGI
  AllowOverride None
  Order allow,deny
  Allow from all
  DirectoryIndex index.html index.php
  AddHandler cgi-script .cgi
  AddDefaultCharset Off
  php_admin_flag file_uploads on
  php_flag log_errors Off
  php_flag magic_quotes_gpc Off
  php_flag magic_quotes_runtime Off
  php_flag register_globals Off
  php_flag short_open_tag On
  php_flag track_vars On
  php_value error_reporting 'E_ALL & ~E_NOTICE'
  php_value max_execution_time 90
  php_value mbstring.func_overload 7
  php_value memory_limit 64M
  php_value session.gc_maxlifetime 1440
  php_value session.save_path /var/lib/egroupware/sessions
 #php_value include_path .:/usr/share/php.:/usr/share/PEAR 
 #php_admin_value open_basedir /usr/share/egroupware:/var/lib/egroupware:/tmp:/usr/share/php 
  php_value upload_max_filesize 24M
</Directory>

<Directory /var/www/web1/web/egroupware/phpsysinfo/>

#<Directory /usr/share/egroupware/phpsysinfo/>
  php_admin_value open_basedir /
</Directory>

<Location /egroupware/icalsrv.php>
  Script PUT /usr/share/egroupware/icalsrv.php
  AddHandler ical/ics .ics
  Action ical/ics /usr/share/egroupware/icalsrv.php
  Order allow,deny
  Allow from all
</Location>

<Location /egroupware/rpc.php>
  php_value mbstring.func_overload 0
  Order allow,deny
  Allow from all
</Location>
```
nachdem ich also diesen link entfernt habe, it works as expected!

Mir ist allerdings unklar, was denn nun diesen Effekt in der apache.conf verursacht. Kann mich hier jemand aufklären?

mit bestem Dank
stefan


----------

