Автор Тема: Systemd socket activation  (Прочетена 14855 пъти)

4096bits

  • Напреднали
  • *****
  • Публикации: 6745
    • Профил
Systemd socket activation
« -: May 19, 2018, 11:41 »
Тъкмо бях започнал да понаучавам предшественика на systemd, дори не помня, какво беше. когато се появи туй нещо и преди няколко дена разбрах, че може много повече. Като например това нещо наречено socket activation. Въпросът ми е, доколко е сигурно?
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

programings

  • Напреднали
  • *****
  • Публикации: 221
  • Distribution: Arch Linux, BunsenLabs Linux, FreeBSD
  • Window Manager: XFCE, MATE, Openbox
    • Профил
Re: Systemd socket activation
« Отговор #1 -: May 19, 2018, 23:35 »
Какво разбираш под сигурност в случая?
Това работи досущ като inetd.

https://en.wikipedia.org/wiki/Inetd
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 6745
    • Профил
Re: Systemd socket activation
« Отговор #2 -: May 20, 2018, 00:13 »
Съжалявам, май трябваше да обясня наистина, какво точно имам предвид. Да, точно! inetd беше онова.
Та, ако имаш нормален уеб сървър или някаква уеб услуга и слушат например на порт 80, те го правят. Доколкото разбрах, в случая systemd го прави и при заявка от мрежата стартира услугата. Сървърите могат да се хакнат, нали? Ей това имах предвид.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

programings

  • Напреднали
  • *****
  • Публикации: 221
  • Distribution: Arch Linux, BunsenLabs Linux, FreeBSD
  • Window Manager: XFCE, MATE, Openbox
    • Профил
Re: Systemd socket activation
« Отговор #3 -: May 20, 2018, 01:27 »
Когато някой се върже на listening сокета, създаден от systemd, то ще се стартира въпросната услуга и systemd ще отвори файловия дескриптор на сокета на stdin и stdout на услугата, тъй че комуникацията между външния клиент, който търси услугата, и самият daemon на услугата ще си е прозрачна. :)

Няма как този модел да ти предостави някаква допълнителна сигурност, единствено пести памет, и то има смисъл само ако услугата не е много натоварена, иначе постоянното spawn-ване би имало по-скоро негативен ефект върху performance-а. Сега ако услугата е оптимизирана да следва този модел и управлява нещата интелигентно (примерно да не умира веднага след като обслужи заявката, а да чака малко за следващи), може и да не е точно така.
« Последна редакция: May 20, 2018, 01:30 от programings »
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 6745
    • Профил
Re: Systemd socket activation
« Отговор #4 -: May 20, 2018, 08:13 »
Ясно, значи си зависи изцяло от сървъра. Супер! Смятам да го пробвам, как работи туй нящо.
И друго да пробвам. Видях, че systemd може да ограничи някой процес да се свързва само с определен адрес в мрежата.

Благодаря!  :)
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.