Forum Webscript.Ru

Общие => Веб Сервера => Тема начата: intercon от 18 Января 2002, 04:57:11

Название: виртуальный хостинг
Отправлено: intercon от 18 Января 2002, 04:57:11
Доброе время суток
помогите плиз решить ):
"у меня хостят 2 клиента. их родительские директории
/opt2/intercon1/httpd/htdocs/firms/customer1 и
/opt2/intercon1/httpd/htdocs/firms/customer2
Как сделать чтобы они не видели друг друга? имеется ввиду чтобы они  не
могли
"лазить" в директории друг друга и использовать SSI и PHP вставочки со страниц не принадлежащих им
По идее нужно поставить какой то "permissions" на папочку firms и/или сунуть туда какой нибудь страшный файлик .htaccess

спасибо
виктор
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 18 Января 2002, 19:42:09
Никсовая машина ?
лазать по фтп - настрой доступ по фтп для данных папок. Apache тут не причем.
SSI они не смогут использовать из другой директории - путь до него читается от корня сайта, который задается в директиве DocumentRoot
А так, сделай просто пермишны на все файлы  типа 0644 Для того, чтобы тиснуть инфу с чужого сайта - надо по меньшей мере знать, где она лежит.

Если чего еще вспомню - напишу.
Название: виртуальный хостинг
Отправлено: intercon от 18 Января 2002, 19:53:59
не катит....я перепробовал все по доступу ): (тупым методом перебора) тут по идее надо фигню типа .htaccess использовать...
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 18 Января 2002, 21:52:27
Да. Я балбес.
В .htaccess  пишешь такое:
Для первой конторы:

allow from all
deny from http://www.customer1.ru

Для второй:

allow from all
deny from http://www.customer2.ru


Или по IP:


allow from all
deny from Customer2

Для второй:

allow from all
deny from IP Customer1


Это можно прописать либо в httpd.conf либо в  .htaccess
Лучше, конечно в httpd.conf

Напиши, если не заработает.
Название: виртуальный хостинг
Отправлено: intercon от 18 Января 2002, 23:10:55
По моему чо то наклевывается... только эту фигню нужно написать для директории firm, иначе customer1 и customer2 выкинут их со своих директорий ): кстати их не 2 а больше.
Ты можеш написать эту хренотень? Где можно по русски прочитать про это?
сенкса ):
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 01:01:51
Нет директорию firms писать нельзя. Просто я первом варианте я описался.  ссылки на хосты надо поменять местами.
Ты это напиши в httpd.conf Тогда они не выкинут ничего.
Где прочитать по-русски - не знаю :(
Чего там писать-то?
Напиши это практически так, как есть.

Как вариант попробуй так:


order deny allow
allow from all
deny from IP  192.168.172

Вместо  того адреса, что я поставил впиши IP всех, кто у тебя хостится, или если они все в одной подсетке то неполный IP
типа:
197.168.172/255.255.25.240 <=> IP/NetMask
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 01:16:00
а почему нельзя в firms, я не понял?
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 01:21:31
Извини, описался. Немного неправильно поначалу тебя понял.
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 01:27:45
теперь я не понял, чего ты не понял ):
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 01:48:22
Да уровни вложенности неправильно посчитал. В общем не важно. Самый безопасный способ - httpd.conf
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 02:02:55
ну, ладно. не горячись. насколько я понимаю .htacces имеет приоритет над httpd.conf в конкретной директории. По моему в этом направлении грести надо... По идее эта задача стандартная и решенная сисадминами хостинговых компаний, потому что по существу речь идет о виртуальном (не Shared хостинге). Но я обращался к некоторым хостерам-они молчат, или в мануал посылают. И по идее здесь одним .htaccess не обойтись
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 02:05:51
Почему не обойтись?
Просто то, что я тебе привел - можно сказать взято из мануала.
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 02:08:34
пхп чихать хотел на .htaccess.....
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 02:13:13
Так клиент не сможет выложить скрипт в директорию уровнем выше чем DocumentRoot.
Потом скрипт же посылает айпишник своего сервака на другой сервак. Тут ты его хтассесом и отрезаешь.
или я не прав?
Урл он тоже посылает. Так что можно и по нему кастрацию проводить.
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 02:21:16
речь идет не о доступе через www, а о клиентах, которые имеют доступ к управлению субдиректориями
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 02:27:52
Ну так клиенты-то не имеют доступа к директории уровня firms, а имеют доступ только к своим директориям, которые в ней лежат. Просто запрети доступ к firms для них всех и все.
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 02:37:08
корневой доступ к серверу нужно для них оставить
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 02:38:14
нужно сделать аналог вилки, типа того...
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 02:39:24
Так. Тогда отпиши самый верхний уровень доступа, который им нужен (на своем примере) Что0то вроде:
Должны иметь доступ к папке htdocs и ниже.
И в какой папке хранится сам сайт?
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 02:46:15
сайты хранятся в субдиректориях customer1, customer2 и так далее. а корень /opt2/intercon1/httpd/htdocs/firms/
ответы профи на пхпклуб.нет типа "Открой http://www.php.net, там документаци, и почитай про safe_mode."
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 02:50:10
Ну Ладно. Значит сайты (индексный файл сайта )  в директории /opt2/intercon1/httpd/htdocs/firms/customer1/ для пользователя customer1. Так?
Имеют ли доступ пользователи к директории firms и если да, то зачем их туда надо пускать?
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 02:58:16
их не надо пущать в директорию firms и ее (не свою) субдиректории, но надо разрешить доступ от корня
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 03:00:57
Ну так закрой им доступ на уровень выше и все.
Завтра с утра попробую сам и скажу о результатах.
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 03:03:11
проблема не решается "permissions" потому что ресь идет о том чтобы оба моих клиента не могли испортить жизнь друг другу имея доступ к своим директориям. Надо как то запретить пхп пролезать в firms, ssi вроде бы не так страшен пока на первый взгляд
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 03:05:47
Так РНР и не пролезет. как ты себе видишь механизм такого пролезания? Копировать файл фтп не получится, так как доступ закрыт, а запись можно закрыть пермишнами.
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 03:09:50
.htaccess никак не сможет помешать мне выполнить, скажем,
fopen("customer2/dbpassword.php", "r");
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 03:12:38
Ха! Может. Запрос-то идет с твоего сервака на втой сервак. А твой сервак видя, что запрос пришел из соседней папки (по IP) посылает его по матушке.
Потом, чтобы сработало
fopen("customer2/dbpassword.php", "r");
Нужно, чтобы скрипт, содержащий это лежал в  папке firms, а этого можно недопустить настройкой пермишнов.
Я прав или нет?
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 03:12:43
доступ к firms можно закрыть только выставив галочку на исполнение 1,3,5,7 соответвственно возможные варианты
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 03:15:25
все, я уже нефига не соображаю, давай завтра. бо я уже сам запутался чо хочу. Я ХОЧУ ЧТОБЫ МОИ 2 КЛИЕНТА ЖИЛИ И ПРЦВЕТАЛИ И НЕ МОГЛИ НАВРЕДИТЬ ДРУГ ДРУГУ
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 03:17:37
Почему?
Что мешает разделить пермишны так:
chmod drwxr--r-- firms
chmod drwxr--rx-rt customer[$i]

?
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 03:18:09
Давай.
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 19 Января 2002, 03:29:30
Во! Вариант:
.htaccess в директории firms:

order deny,allow
deny from all



order deny,allow
allow from all
deny from IP (customer2.IP)



order deny,allow
allow from all
deny from IP (customer1.IP)


Попробуй.
Название: виртуальный хостинг
Отправлено: intercon от 19 Января 2002, 15:04:40
По идее задачу надо разделить на 3
1. Что нухно реализовать при помощи permissions
2. Что нухно реализовать при помощи .htaccess
3. Что нухно реализовать при помощи config.ini.php
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 25 Января 2002, 17:51:19
В перимшнах запрети доступ у папке firms.
В php.ini поставь safe_mode
Название: виртуальный хостинг
Отправлено: intercon от 25 Января 2002, 22:45:22
; Safe Mode
;
safe_mode = Off

safe_mode_exec_dir =

; Setting certain environment variables may be a potential security breach.
; This directive contains a comma-delimited list of prefixes.  In Safe Mode,
; the user may only alter environment variables whose names begin with the
; prefixes supplied here.  By default, users will only be able to set
; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR).
;
; Note:  If this directive is empty, PHP will let the user modify ANY
; environment variable!
safe_mode_allowed_env_vars = PHP_

; This directive contains a comma-delimited list of environment variables that
; the end user won\'t be able to change using putenv().  These variables will be
; protected even if safe_mode_allowed_env_vars is set to allow to change them.
safe_mode_protected_env_vars = LD_LIBRARY_PATH
================================
что именно надо сделать?
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 27 Января 2002, 15:20:38
safe_mode = On
saf_mode_exec_dir = /opt2/intercon1/httpd/htdocs/firms/*/
Название: виртуальный хостинг
Отправлено: intercon от 27 Января 2002, 17:47:35
При этом в директории firms будет работать пхп?
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 28 Января 2002, 12:59:01
Не а. Не должен.
Название: уточнение
Отправлено: intercon от 28 Января 2002, 20:43:15
уточнение: в директории firms и htdocs пхп должен работать...
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 29 Января 2002, 00:22:29
Так. Стоп.
ЗАЧЕМ в ДИРЕКТОРИИ FIRMS РАБОЧИЙ РНР?
Название: виртуальный хостинг
Отправлено: intercon от 29 Января 2002, 21:53:08
php нужен в htdocs, в firms необязательно... но речь идет о том чтобы пхп НЕ МОГ ЛЕЗТЬ в эти директории с СУБДИРЕКТОРИЙ
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 30 Января 2002, 00:15:45
Попробуй для каждого хоста указать safe_mode_exec_dir в .htaccess
У меня после указания грабануть инфу из соседнего виртуального хоста не получилось.
Название: виртуальный хостинг
Отправлено: intercon от 30 Января 2002, 02:15:49
дык все твердят что пхп забил на .htaccess
меня даже освистали специалисты  на пхпклубе.нет, что мол ентого делать незя, ...но никто не смог решить и модератор отфутболил вопрос в "мертвую" конфу, мол типа тема неинтересная...
кинь твой файлик .htaccess, может мы чо друг-друга не понимаем?
Название: виртуальный хостинг
Отправлено: ThE0ReTiC от 30 Января 2002, 11:01:24
То, что они тебя освистали - это их трудности.
В следующий раз дай им эту ссылку:
http://www.php.net/manual/en/configuration.php
Там английским по белому написано, что:
When using PHP as an Apache module, you can also change the configuration settings using directives in Apache configuration files and .htaccess files.

With PHP 3.0, there are Apache directives that correspond to each configuration setting in the php3.ini name, except the name is prefixed by "php3_".

With PHP 4.0, there are several Apache directives that allow you to change the PHP configuration from within the Apache configuration file itself.


php_value name value
This sets the value of the specified variable.

php_flag name on|off
This is used to set a Boolean configuration option.

php_admin_value name value
This sets the value of the specified variable. "Admin" configuration settings can only be set from within the main Apache configuration files, and not from .htaccess files.

php_admin_flag name on|off
This is used to set a Boolean configuration option.


Example 3-2. Apache configuration example


  php_value include_path ".:/usr/local/lib/php"
  php_flag safe_mode on


  php3_include_path ".:/usr/local/lib/php"
  php3_safe_mode on

 
 Вот в принципе и пример из .htaccess