Bregor Esgarothian: ProFTPd

6 сообщений / 0 new
Последнее сообщение
Гость
Bregor Esgarothian: ProFTPd

Есть сервер, на котором живут пять сайтов. Естественно, внешний айпишник у него один и сайты все пингуются по нему, а дальше уже апач по вхостам все разносит. Моих сайтов из этих пяти только два, а остальные принадлежат моим друзьям. Хочу сделать так, чтоб они могли заходить по ftp в свои папки и редактировать там свои сайты, как их душам угодно... Соответственно простой установкой ProFTPd дело не обошлось, так как при подобном обращении:
user1:password1@vhost1.domain.com и user1:password1@vhost2.domain.com юзеры попадают в одну и ту же домашнюю папку user1. Надо как-то объяснить ProFTPd про виртуальные хосты. В дефолтном конфиге был пример типа:
<div class='indent'>
<Virtual Host vhost1.domain.com>
#put your config here
</Virtual Host>
</div>
Но никаких подробностей найти не удалось.
Жду советов, заранее спасибо!

78 (не проверено)

Хм... А как тогда у хостеров такие фишки прокатывают, когда реальных IP хорошо если с десяток, а сайтов сотни?
Например у Динохоста(www.dinohost.ru) стоит именно ProFTPd(сам у них хостился раньше) и нужная мне схема отлично работает... Но только у них-то не спросишь.... :(

Сыр (не проверено)

Тут грабли вот в чем - они у тебя и будут поподать на первый виртуал, если он у тя в ДНС указан первым.
Более того для того для такой реалиции под каждый виртуальный фтп-хост тебе потребуется выделять отдельный ИП-адрес в противном случае, ты ничего из этого не получишь, т. к. особенность протокола. В отличии http различает хосты не по именам, а ИП-адресам.

26 (не проверено)

How can I limit users to a particular directory tree?

For general open access you can use an <Anonymous> directive context block, possibly in combination with a UserPassword/AnonRequirePassword directive.

However if you wish to jail an entire group (or groups) of users, you can use the DefaultRoot directive. DefaultRoot lets you specify a root jailed directory (or "~" for the user's home directory), and an optional group-expression argument which can be used to control which groups of users the jail will be applied to. For example:

...
<VirtualHost myhost.mynet.foo>
DefaultRoot ~
...
</VirtualHost>

This creates a configuration where all users who log into myhost.mynet.foo are jailed into their home directories (cannot chdir into a higher level directory).

edge (не проверено)

Чет не пойму, а зачем еще виртуальные хосты какие-то на ftp сервере? Я делал то же самое с другим ftp сервером - pure-ftpd, но суть не должна меняться вроде. В системе создаются аккоунты юзеров - обыкновенные записи в /etc/passwd. С шеллом /bin/false и разными домашними директориями. В каждой из домашних директорий создается еще один директорий типа public_html в котором каждый из юзеров держит свой сайт. Через апача разруливаются виртуальные хосты для каждого юзера, либо можно вообще без виртуальных хостов если юзера согласны, чтобы их сайт выглядел так: http://.../~имя_юзера. преимущества этого метода в том, что не надо переруливать dns CNAME под виртуальные хосты. В настройках ftp указываем chroot для каждого юзера в их домашние директории, и все. Все заходят только в свои директории и рулят только своими сайтами и только по ftp, шелла они не получат. Если интересует более подробное описание конфигов для апача и pure-ftpd в этом случае, могу отписать тут.

Bregor Esgarothian (не проверено)

Хех - основная заморочка вот в чем:
Есть домены:
domain1.server.tld
domain2.server.tld
domain3.server.tld
Есть юзеры:
user1-pass1-/home/user1
user2-pass2-/home/user2
user3-pass3-/home/user3
которым соответственно принадлежат вышеозначенные сайты.
Обламывает обойденная хостером ситуация:
ftp://user3:pass3@domain2.server.tld
пускает в /home/user3, хотя он к domain2 никаким боком.....
Вопрос - как хостер это обходит?

RSS-материал