ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [sisyphus] Засунуть resolvconf в чрут
@ 2012-11-27  0:36 Michael A. Kangin
  2012-11-27  8:10 ` Mikhail Efremov
  0 siblings, 1 reply; 8+ messages in thread
From: Michael A. Kangin @ 2012-11-27  0:36 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

Здравствуйте.

Понадобилось мне тут дёргать resolvconf из openvpn. При поднятии 
интерфейса всё ок, а вот при опускании - как то уныло оно дёргается из 
openvpn'ного чрута, никак.
Озаботился я засунуть resolvconf в чрут openvpn'у. Ну скрипты-конфиги 
всё ясно, /bin/cat с библиотеками понятно, а вот что делать с 
/var/run/resolvconf?
Мне пока на ум ничего кроме mount --bind не приходит, но это как-то 
черезчур как мне кажется для чрута, да и не хорошо наверное сразу такое 
в /etc/chroot.d засовывать.
Есть какие-нибудь идеи, что еще можно с этим сделать?

про незасовывать в чрут openvpn я догадываюсь.

-- 
Michael A. Kangin



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

* Re: [sisyphus] Засунуть resolvconf в чрут
  2012-11-27  0:36 [sisyphus] Засунуть resolvconf в чрут Michael A. Kangin
@ 2012-11-27  8:10 ` Mikhail Efremov
  2012-11-28 10:04   ` Mikhail Efremov
  0 siblings, 1 reply; 8+ messages in thread
From: Mikhail Efremov @ 2012-11-27  8:10 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

On Tue, 27 Nov 2012 04:36:38 +0400 Michael A. Kangin wrote:
> Здравствуйте.
> 
> Понадобилось мне тут дёргать resolvconf из openvpn. При поднятии 
> интерфейса всё ок, а вот при опускании - как то уныло оно дёргается
> из openvpn'ного чрута, никак.
> Озаботился я засунуть resolvconf в чрут openvpn'у. Ну скрипты-конфиги 
> всё ясно, /bin/cat с библиотеками понятно, а вот что делать с 
> /var/run/resolvconf?
> Мне пока на ум ничего кроме mount --bind не приходит, но это как-то 
> черезчур как мне кажется для чрута, да и не хорошо наверное сразу
> такое в /etc/chroot.d засовывать.
> Есть какие-нибудь идеи, что еще можно с этим сделать?

Использовать etcnet и делать все необходимое в ifdown-post скрипте.
Причем теперь resolvconf -d должен вызываться всегда при опускании
интерфейса и делать это в ifdown-post больше не надо, должно работать
само.

-- 
WBR, Mikhail Efremov


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

* Re: [sisyphus] Засунуть resolvconf в чрут
  2012-11-27  8:10 ` Mikhail Efremov
@ 2012-11-28 10:04   ` Mikhail Efremov
  2012-11-28 16:48     ` Michael A. Kangin
  0 siblings, 1 reply; 8+ messages in thread
From: Mikhail Efremov @ 2012-11-28 10:04 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

On Tue, 27 Nov 2012 12:10:56 +0400 Mikhail Efremov wrote:
> On Tue, 27 Nov 2012 04:36:38 +0400 Michael A. Kangin wrote:
> > Здравствуйте.
> > 
> > Понадобилось мне тут дёргать resolvconf из openvpn. При поднятии 
> > интерфейса всё ок, а вот при опускании - как то уныло оно дёргается
> > из openvpn'ного чрута, никак.
> > Озаботился я засунуть resolvconf в чрут openvpn'у. Ну
> > скрипты-конфиги всё ясно, /bin/cat с библиотеками понятно, а вот
> > что делать с /var/run/resolvconf?
> > Мне пока на ум ничего кроме mount --bind не приходит, но это как-то 
> > черезчур как мне кажется для чрута, да и не хорошо наверное сразу
> > такое в /etc/chroot.d засовывать.
> > Есть какие-нибудь идеи, что еще можно с этим сделать?
> 
> Использовать etcnet и делать все необходимое в ifdown-post скрипте.
> Причем теперь resolvconf -d должен вызываться всегда при опускании
> интерфейса и делать это в ifdown-post больше не надо, должно работать
> само.

Добавлю, что запускать resolvconf -a в ifup-post скрипте все еще надо
(если ns присылает сервер, а не конфигурируются сразу на стороне
клиента). Хорошо бы добавить обработку присылаемых ns в сам etcnet,
чтобы не писать каждый раз одинаковых ifup-post скриптов.

-- 
WBR, Mikhail Efremov


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

* Re: [sisyphus] Засунуть resolvconf в чрут
  2012-11-28 10:04   ` Mikhail Efremov
@ 2012-11-28 16:48     ` Michael A. Kangin
  2012-11-28 21:26       ` Nikolay A. Fetisov
  2012-11-28 22:45       ` Mikhail Efremov
  0 siblings, 2 replies; 8+ messages in thread
From: Michael A. Kangin @ 2012-11-28 16:48 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

On 11/28/2012 02:04 PM, Mikhail Efremov wrote:

> Добавлю, что запускать resolvconf -a в ifup-post скрипте все еще надо
> (если ns присылает сервер, а не конфигурируются сразу на стороне
> клиента). Хорошо бы добавить обработку присылаемых ns в сам etcnet,
> чтобы не писать каждый раз одинаковых ifup-post скриптов.

Это однозначно придётся делать OpenVPN'ом - ей лучше знать что на этот
раз надо прописывать на очередной безликий tunN.

у меня собственно такая схема - в качестве nameserver используется bind
на localhost, у которого сконфигурировано много хинтов, на какую зону к
кому forward делать. А когда поднимается VPN-подключение например на
vpn.firma29.ru, то еще должно добавляться search lan.firma29.ru. А на
какой tun оно сядет, фиг знает. То есть для остановки интерфейса это не
проблема, но не для поднятия.

-- 
wbr, Michael A. Kangin


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

* Re: [sisyphus] Засунуть resolvconf в чрут
  2012-11-28 16:48     ` Michael A. Kangin
@ 2012-11-28 21:26       ` Nikolay A. Fetisov
  2012-11-29 12:12         ` Michael A. Kangin
  2012-11-28 22:45       ` Mikhail Efremov
  1 sibling, 1 reply; 8+ messages in thread
From: Nikolay A. Fetisov @ 2012-11-28 21:26 UTC (permalink / raw)
  To: sisyphus

В Ср, 28/11/2012 в 20:48 +0400, Michael A. Kangin пишет:
> ....
> Это однозначно придётся делать OpenVPN'ом - ей лучше знать что на этот
> раз надо прописывать на очередной безликий tunN.

Безликий tunX можно сделать вполне конкретным с фиксированным номером -
см. параметр конфигурации dev tunX . 

> 
> у меня собственно такая схема - в качестве nameserver используется bind
> на localhost, у которого сконфигурировано много хинтов, на какую зону к
> кому forward делать. А когда поднимается VPN-подключение например на
> vpn.firma29.ru, то еще должно добавляться search lan.firma29.ru. А на
> какой tun оно сядет, фиг знает. То есть для остановки интерфейса это не
> проблема, но не для поднятия.
> 

Запихивание resolvconf во внутрь chroot вряд ли в такой ситуации
поможет. OpenVPN после поднятия интерфейса и его настройки выполняет не
только chroot(), но и chuser() - запущенный из down/down-pre скриптов 
resolvconf не сможет изменить /etc/resolv.conf .


-- 
С уважением,
Николай Фетисов



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

* Re: [sisyphus] Засунуть resolvconf в чрут
  2012-11-28 16:48     ` Michael A. Kangin
  2012-11-28 21:26       ` Nikolay A. Fetisov
@ 2012-11-28 22:45       ` Mikhail Efremov
  1 sibling, 0 replies; 8+ messages in thread
From: Mikhail Efremov @ 2012-11-28 22:45 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussions

On Wed, 28 Nov 2012 20:48:31 +0400 Michael A. Kangin wrote:
> On 11/28/2012 02:04 PM, Mikhail Efremov wrote:
> 
> > Добавлю, что запускать resolvconf -a в ifup-post скрипте все еще
> > надо (если ns присылает сервер, а не конфигурируются сразу на
> > стороне клиента). Хорошо бы добавить обработку присылаемых ns в сам
> > etcnet, чтобы не писать каждый раз одинаковых ifup-post скриптов.
> 
> Это однозначно придётся делать OpenVPN'ом - ей лучше знать что на этот
> раз надо прописывать на очередной безликий tunN.

Как уже тут рядом сказали, имя может быть любое. В случае etcnet имя
интерфейса будет соответствовать имени каталога в /etc/net/ifaces/.
А вызываться ifup-post скрипт будет в конечном итоге самим openvpn
(можно считать, что это просто скрипт для --up).
А вот ifdown-post запускается etcnet'ом, после остановки openvpn.

> у меня собственно такая схема - в качестве nameserver используется
> bind на localhost, у которого сконфигурировано много хинтов, на какую
> зону к кому forward делать. А когда поднимается VPN-подключение
> например на vpn.firma29.ru, то еще должно добавляться search
> lan.firma29.ru. А на какой tun оно сядет, фиг знает. То есть для
> остановки интерфейса это не проблема, но не для поднятия.

У resolvconf есть полезный в таких случаях ключ -p, с ним он
записывает в /etc/resolv.conf только search, но не nameserver.
Если же установить пакет openresolv-bind, то конфиги для bind с
соответствующим forward будут генериться при этом автоматически.

-- 
WBR, Mikhail Efremov


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

* Re: [sisyphus] Засунуть resolvconf в чрут
  2012-11-28 21:26       ` Nikolay A. Fetisov
@ 2012-11-29 12:12         ` Michael A. Kangin
  2012-11-29 12:43           ` Nikolay A. Fetisov
  0 siblings, 1 reply; 8+ messages in thread
From: Michael A. Kangin @ 2012-11-29 12:12 UTC (permalink / raw)
  To: naf, ALT Linux Sisyphus discussions

29.11.2012 01:26, Nikolay A. Fetisov пишет:

> Запихивание resolvconf во внутрь chroot вряд ли в такой ситуации
> поможет. OpenVPN после поднятия интерфейса и его настройки выполняет не
> только chroot(), но и chuser() - запущенный из down/down-pre скриптов
> resolvconf не сможет изменить /etc/resolv.conf .

Я знатный извращенец, я в тестах еще и sudo в чрут засунул.

Кстати, а чисто абстрактно, что секурней: в чруте от имени рута или в 
нативной системе от непривелегированного пользователя?

> У resolvconf есть полезный в таких случаях ключ -p, с ним он
> записывает в /etc/resolv.conf только search, но не nameserver.
> Если же установить пакет openresolv-bind, то конфиги для bind с
> соответствующим forward будут генериться при этом автоматически.

Интересно. Спасибо, посмотрю.

-- 
Michael A. Kangin


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

* Re: [sisyphus] Засунуть resolvconf в чрут
  2012-11-29 12:12         ` Michael A. Kangin
@ 2012-11-29 12:43           ` Nikolay A. Fetisov
  0 siblings, 0 replies; 8+ messages in thread
From: Nikolay A. Fetisov @ 2012-11-29 12:43 UTC (permalink / raw)
  To: sisyphus

В Чт, 29/11/2012 в 16:12 +0400, Michael A. Kangin пишет:
> 29.11.2012 01:26, Nikolay A. Fetisov пишет:
> 
> > Запихивание resolvconf во внутрь chroot вряд ли в такой ситуации
> > поможет. OpenVPN после поднятия интерфейса и его настройки выполняет не
> > только chroot(), но и chuser() - запущенный из down/down-pre скриптов
> > resolvconf не сможет изменить /etc/resolv.conf .
> 
> Я знатный извращенец, я в тестах еще и sudo в чрут засунул.

... а не проще вытащить OpenVPN из chroot'а?

> 
> Кстати, а чисто абстрактно, что секурней: в чруте от имени рута или в 
> нативной системе от непривелегированного пользователя?

IMHO, в chroot от непривилегированного пользователя :-)

Т.е., внутри chroot просто устанавливать флажок, по появлению которого
вне chroot будет срабатывать нужный скрипт.

Что-то типа: внутри chroot - touch /tmp/flag , снаружи - задание для
cron'а вида 
* * * * * root [ -f /path_to_chroot/tmp/flag ] && /some/script

По желанию - вместо cron'а использовать inotify.


-- 
С уважением,
Николай Фетисов



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

end of thread, other threads:[~2012-11-29 12:43 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-11-27  0:36 [sisyphus] Засунуть resolvconf в чрут Michael A. Kangin
2012-11-27  8:10 ` Mikhail Efremov
2012-11-28 10:04   ` Mikhail Efremov
2012-11-28 16:48     ` Michael A. Kangin
2012-11-28 21:26       ` Nikolay A. Fetisov
2012-11-29 12:12         ` Michael A. Kangin
2012-11-29 12:43           ` Nikolay A. Fetisov
2012-11-28 22:45       ` Mikhail Efremov

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/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 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

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


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