ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] iniscripts and vserver
@ 2004-01-12 16:22 Anton Farygin
  2004-01-12 16:29 ` Dmitry V. Levin
  0 siblings, 1 reply; 9+ messages in thread
From: Anton Farygin @ 2004-01-12 16:22 UTC (permalink / raw)
  To: devel

Господа, возник интересный вопрос с стартовыми скриптами и vserver'ом:

как известно, для корректной работы виртуальных серверов необходимо
сделать так, что бы запускаемые сервера в host системе не захватывали
алиасы для виртуальных серверов. Так поступают, в частности nfs, dhcp и
т.д.

Для этого в util-vserver есть утилитка chbind, запускающая сервисы таким
образом, что бы они не видели ничего кроме того, что им разрешат.

Вопрос заключается в том, как бы сделать так, что бы после установки
ядра с vserver'ом и утилит все запускаемые из initscripts сервисы
стартовали через chbind ?

Как вариант - может быть исправить start-stop-daemon или функцию
start_daemon для того, что бы оно смотрело некий конфигурационный файл и
читало запускаующий процесс из него?

Есть у кого-нить мысли на эту тему?

2ldv: что скажешь ?

Rgds,
Rider


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] iniscripts and vserver
  2004-01-12 16:22 [devel] iniscripts and vserver Anton Farygin
@ 2004-01-12 16:29 ` Dmitry V. Levin
  2004-01-12 16:56   ` Алексей Любимов
                     ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2004-01-12 16:29 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 847 bytes --]

On Mon, Jan 12, 2004 at 07:22:43PM +0300, Anton Farygin wrote:
> Господа, возник интересный вопрос с стартовыми скриптами и vserver'ом:
> 
> как известно, для корректной работы виртуальных серверов необходимо
> сделать так, что бы запускаемые сервера в host системе не захватывали
> алиасы для виртуальных серверов. Так поступают, в частности nfs, dhcp и
> т.д.

У них у всех есть возможность указать listen interface.

Если у кого=то такой возможности нет, то это, скорее всего, bug.

> Для этого в util-vserver есть утилитка chbind, запускающая сервисы таким
> образом, что бы они не видели ничего кроме того, что им разрешат.
> 
> Вопрос заключается в том, как бы сделать так, что бы после установки
> ядра с vserver'ом и утилит все запускаемые из initscripts сервисы
> стартовали через chbind ?

Запускать /etc/rc.d/rc через chbind?


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] iniscripts and vserver
  2004-01-12 16:29 ` Dmitry V. Levin
@ 2004-01-12 16:56   ` Алексей Любимов
  2004-01-12 17:07     ` Dmitry V. Levin
  2004-01-12 17:28     ` Anton Farygin
  2004-01-12 17:26   ` Anton Farygin
  2004-01-20 13:13   ` Andrey Brindeew
  2 siblings, 2 replies; 9+ messages in thread
From: Алексей Любимов @ 2004-01-12 16:56 UTC (permalink / raw)
  To: ALT Devel discussion list



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, 
то второй цепляется только к конкретному (одному) интерфейсу.

>
>Если у кого=то такой возможности нет, то это, скорее всего, bug.
>  
>
и соотственно много много соровождаемого кода в этих забаженных пакетах.
оно нам надо?

>  
>
>>Для этого в util-vserver есть утилитка chbind, запускающая сервисы таким
>>образом, что бы они не видели ничего кроме того, что им разрешат.
>>
>>Вопрос заключается в том, как бы сделать так, что бы после установки
>>ядра с vserver'ом и утилит все запускаемые из initscripts сервисы
>>стартовали через chbind ?
>>    
>>
>
>Запускать /etc/rc.d/rc через chbind?
>  
>

а если ядро не поддерживает chbind?




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] iniscripts and vserver
  2004-01-12 16:56   ` Алексей Любимов
@ 2004-01-12 17:07     ` Dmitry V. Levin
  2004-01-12 17:23       ` Алексей Любимов
  2004-01-12 17:28     ` Anton Farygin
  1 sibling, 1 reply; 9+ messages in thread
From: Dmitry V. Levin @ 2004-01-12 17:07 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1482 bytes --]

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).

> >Если у кого=то такой возможности нет, то это, скорее всего, bug.
> >
> и соотственно много много соровождаемого кода в этих забаженных пакетах.
> оно нам надо?

Почему много-много?

> >>Для этого в util-vserver есть утилитка chbind, запускающая сервисы таким
> >>образом, что бы они не видели ничего кроме того, что им разрешат.
> >>
> >>Вопрос заключается в том, как бы сделать так, что бы после установки
> >>ядра с vserver'ом и утилит все запускаемые из initscripts сервисы
> >>стартовали через chbind ?
> >
> >Запускать /etc/rc.d/rc через chbind?
> 
> а если ядро не поддерживает chbind?

Тогда либо не надо запускать через chbind, либо надо игнорировать
ошибки ENOSYS.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] iniscripts and vserver
  2004-01-12 17:07     ` Dmitry V. Levin
@ 2004-01-12 17:23       ` Алексей Любимов
  2004-01-12 17:32         ` Anton Farygin
  0 siblings, 1 reply; 9+ messages in thread
From: Алексей Любимов @ 2004-01-12 17:23 UTC (permalink / raw)
  To: ALT Devel discussion list



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 сразу и для всех?
Или ручками после установки предлагаете курочить?
Мне это дело интересно, вот и спрашиваю, какие варианты возможны.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] iniscripts and vserver
  2004-01-12 16:29 ` Dmitry V. Levin
  2004-01-12 16:56   ` Алексей Любимов
@ 2004-01-12 17:26   ` Anton Farygin
  2004-01-20 13:13   ` Andrey Brindeew
  2 siblings, 0 replies; 9+ messages in thread
From: Anton Farygin @ 2004-01-12 17:26 UTC (permalink / raw)
  To: ALT Devel discussion list

On Mon, Jan 12, 2004 at 07:29:42PM +0300, Dmitry V. Levin wrote:
> On Mon, Jan 12, 2004 at 07:22:43PM +0300, Anton Farygin wrote:
> > Господа, возник интересный вопрос с стартовыми скриптами и vserver'ом:
> > 
> > как известно, для корректной работы виртуальных серверов необходимо
> > сделать так, что бы запускаемые сервера в host системе не захватывали
> > алиасы для виртуальных серверов. Так поступают, в частности nfs, dhcp и
> > т.д.
> 
> У них у всех есть возможность указать listen interface.
> 
> Если у кого=то такой возможности нет, то это, скорее всего, bug.

portmap, nfs (kernel nfsd) - нельзя. Ну допустим что nfs можно вынести в
userspace... правда там все равно нет опции какой интерфейс слушать.

И еще - неплохо было бы иметь единый конфиг для всех сервисов, которым
можно говорить слушаемый интерфейс(ы).

> 
> > Для этого в util-vserver есть утилитка chbind, запускающая сервисы таким
> > образом, что бы они не видели ничего кроме того, что им разрешат.
> > 
> > Вопрос заключается в том, как бы сделать так, что бы после установки
> > ядра с vserver'ом и утилит все запускаемые из initscripts сервисы
> > стартовали через chbind ?
> 
> Запускать /etc/rc.d/rc через chbind?

Нет. в теории нужно составлять список сервисов, запускаемых через chbind.
А все остальные запускать напрямую.

Rgds,
Rider


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] iniscripts and vserver
  2004-01-12 16:56   ` Алексей Любимов
  2004-01-12 17:07     ` Dmitry V. Levin
@ 2004-01-12 17:28     ` Anton Farygin
  1 sibling, 0 replies; 9+ messages in thread
From: Anton Farygin @ 2004-01-12 17:28 UTC (permalink / raw)
  To: ALT Devel discussion list

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, 
> то второй цепляется только к конкретному (одному) интерфейсу.
> 
> >
> >Если у кого=то такой возможности нет, то это, скорее всего, bug.
> > 
> >
> и соотственно много много соровождаемого кода в этих забаженных пакетах.
> оно нам надо?
> 
> > 
> >
> >>Для этого в util-vserver есть утилитка chbind, запускающая сервисы таким
> >>образом, что бы они не видели ничего кроме того, что им разрешат.
> >>
> >>Вопрос заключается в том, как бы сделать так, что бы после установки
> >>ядра с vserver'ом и утилит все запускаемые из initscripts сервисы
> >>стартовали через chbind ?
> >>   
> >>
> >
> >Запускать /etc/rc.d/rc через chbind?
> > 
> >
> 
> а если ядро не поддерживает chbind?

Это легко определить.

Rgds,
Rider


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] iniscripts and vserver
  2004-01-12 17:23       ` Алексей Любимов
@ 2004-01-12 17:32         ` Anton Farygin
  0 siblings, 0 replies; 9+ messages in thread
From: Anton Farygin @ 2004-01-12 17:32 UTC (permalink / raw)
  To: ALT Devel discussion list

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



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] iniscripts and vserver
  2004-01-12 16:29 ` Dmitry V. Levin
  2004-01-12 16:56   ` Алексей Любимов
  2004-01-12 17:26   ` Anton Farygin
@ 2004-01-20 13:13   ` Andrey Brindeew
  2 siblings, 0 replies; 9+ messages in thread
From: Andrey Brindeew @ 2004-01-20 13:13 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 415 bytes --]

On Mon, Jan 12, 2004 at 07:29:42PM +0300, Dmitry V. Levin wrote:
> У них у всех есть возможность указать listen interface.

У некоторых может и не быть возможности. Пример из жизни - Helix
streaming server.

> Если у кого=то такой возможности нет, то это, скорее всего, bug.

В моём случае его нельзя пофиксить, увы.

-- 
WBR, Andrey Brindeew.
"No one person can understand Perl culture completely"
(C) Larry Wall.

[-- Attachment #2: Type: application/pgp-signature, Size: 245 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2004-01-20 13:13 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-01-12 16:22 [devel] iniscripts and vserver Anton Farygin
2004-01-12 16:29 ` Dmitry V. Levin
2004-01-12 16:56   ` Алексей Любимов
2004-01-12 17:07     ` Dmitry V. Levin
2004-01-12 17:23       ` Алексей Любимов
2004-01-12 17:32         ` Anton Farygin
2004-01-12 17:28     ` Anton Farygin
2004-01-12 17:26   ` Anton Farygin
2004-01-20 13:13   ` Andrey Brindeew

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git