From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Mon, 12 Jan 2004 20:32:04 +0300 From: Anton Farygin To: ALT Devel discussion list Subject: Re: [devel] iniscripts and vserver Message-ID: <20040112173204.GL32101@master.altlinux.ru> References: <20040112162243.GF32101@master.altlinux.ru> <20040112162942.GA28133@basalt.office.altlinux.org> <4002D1BD.5010008@l14.ru> <20040112170757.GA28843@basalt.office.altlinux.org> <4002D80F.5080509@l14.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <4002D80F.5080509@l14.ru> X-BeenThere: devel@altlinux.ru X-Mailman-Version: 2.1.3 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Jan 2004 17:32:05 -0000 Archived-At: List-Archive: List-Post: On Mon, Jan 12, 2004 at 08:23:27PM +0300, Алексей Любимов wrote: > > > Dmitry V. Levin пишет: > > >On Mon, Jan 12, 2004 at 07:56:29PM +0300, Алексей Любимов wrote: > > > > > >>Dmitry V. Levin пишет: > >> > >> > >>>On Mon, Jan 12, 2004 at 07:22:43PM +0300, Anton Farygin wrote: > >>> > >>> > >>> > >>>>Господа, возник интересный вопрос с стартовыми скриптами и vserver'ом: > >>>> > >>>>как известно, для корректной работы виртуальных серверов необходимо > >>>>сделать так, что бы запускаемые сервера в host системе не захватывали > >>>>алиасы для виртуальных серверов. Так поступают, в частности nfs, dhcp и > >>>>т.д. > >>>> > >>>> > >>>У них у всех есть возможность указать listen interface. > >>> > >>> > >>> > >>bind() в chbind и bind("interface") - разные вещи. > >>Если первый цепляется ко всем интерфейсам, которые ему показаны chbind, > >>то второй цепляется только к конкретному (одному) интерфейсу. > >> > >> > > > >На самом деле, к списку интерфейсов, см. напр. sshd_config(5). > > > > > А вот программ, для которых > Multiple ListenAddress options are permitted. > уже значительно меньше. > > Мне что то ничего кроме апача в голову и не приходит. > > xinetd нет? > > bind Allows a service to be bound to a specific > interface > on the machine. This means you can have a > telnet > server listening on a local, secured > interface, and > not on the external interface. Or one port > on one > interface can do something, while the same > port on a > different interface can do something > completely dif- > ferent. Syntax: bind = (ip address of interface). > > proftpd тоже только в своих виртульных серверах разделяет ip. > > > > > > > > >>>Если у кого=то такой возможности нет, то это, скорее всего, bug. > >>> > >>> > >>> > >>и соотственно много много соровождаемого кода в этих забаженных пакетах. > >>оно нам надо? > >> > >> > > > >Почему много-много? > > > > > опцию добавить, которую никто из авторов себе не возьмет и заодно не > просто аргумент в bind(), а списочек с прогоном по нему + парсер, чего > там нам подсунули. > > >>>>Для этого в util-vserver есть утилитка chbind, запускающая сервисы таким > >>>>образом, что бы они не видели ничего кроме того, что им разрешат. > >>>> > >>>>Вопрос заключается в том, как бы сделать так, что бы после установки > >>>>ядра с vserver'ом и утилит все запускаемые из initscripts сервисы > >>>>стартовали через chbind ? > >>>> > >>>> > >>>Запускать /etc/rc.d/rc через chbind? > >>> > >>> > >>а если ядро не поддерживает chbind? > >> > >> > > > >Тогда либо не надо запускать через chbind, либо надо игнорировать > >ошибки ENOSYS. > > > > > > > А какой пакет будет добавлять эту функциональность в initscripts? или > зашить это дело в initscripts сразу и для всех? > Или ручками после установки предлагаете курочить? > Мне это дело интересно, вот и спрашиваю, какие варианты возможны. Самый, конечно, замечательный вариант - после установки некоего пакета (vserver-startup) - запуск всех сервисов через chbind только в том случае, если ядро поддерживает ipv4root. Это можно, кстати, отработать и в chbind - не проблема. Может быть реализовать что-то вроде конфига со списком IP адресов или интерфейсов + списком сервисов, которые необходимо запускать через chbind. Rgds, Rider