
Ivan
02.02.2018
10:16:33
в идеале да

ptchol
02.02.2018
10:16:39
Оу

Ivan
02.02.2018
10:16:41
для каждой команды своё окружение
раз им треба разные версии

Google

ptchol
02.02.2018
10:18:39
Этож шибанешься
Для каждого набора городить энв

zelo
02.02.2018
10:20:47
дефайн энв )
я думал о стандартных дев, тест, стэдж, прод

ptchol
02.02.2018
10:22:33
У меня есть приложения аля админка, она ходит в пяток других сервисов которые представляют собой апишки предоставляющие данные
Все это девелопятся разными командами
И для тестирования нужно запускать этот набор из разных версий разных сервисов

zelo
02.02.2018
10:35:51
вооо
отдельное ci для каждой команды тогда
а дальше тогда на выходе, то что получилось на конкретный релиз собираешь всё в одну кучу
в тимсити например можно это подключением разных VCS Roots организовать, а если пупетом, то можно puppet+r10k+git, где новый энв паппета будет новой веткой в гите (по номеру релиза, напимер) и уже тестить на тестовой ноде админки
ну как вариант )

ptchol
02.02.2018
10:44:31
а версии кто и когда менять будет ?
руками в паппете ? после того как билд прошёл ?

zelo
02.02.2018
10:45:40
подразумевал, это уже было сделано в пункте:
"отдельное ci для каждой команды тогда"
у меня вот вопрос другой, кто какой модуль фаера может посоветовать, окромя паппетлабсовского

Google

zelo
02.02.2018
10:49:26
чот меня достала уже его ограниченность
или у всех самонапиленные?
речь о iptables само собой

ptchol
02.02.2018
10:55:24
а что там ограниченно ?

Xeniya MTS
02.02.2018
11:00:01
Т.е. докер файл потом создаёт факт внутри контейнера,
Факты точнее
Для того, что бы быстрее выкатывалось, мы деплоим на версию контейнера от последнего ci,
Именно это запускается по коммиту, но ночью запускается полный деплой на чистое окружение

zelo
02.02.2018
11:04:33
или я херово почитал доку?

Xeniya MTS
02.02.2018
11:05:18

ptchol
02.02.2018
11:25:23

zelo
02.02.2018
11:37:41
Поточнее
можно задавать policy только для встроенных цепочек, для своих нельзя

ptchol
02.02.2018
11:44:08
э ?
firewallchain ?
у него есть аттрибут полиси
а гоню
It can only be set on inbuilt chains ('INPUT', 'FORWARD', 'OUTPUT', 'PREROUTING', 'POSTROUTING')

Google

zelo
02.02.2018
11:53:56
yep
ещё была лажа с указанием наскольких source массивом
бралось последнее значение
пришлось доп. модуль поставить

dk
02.02.2018
11:57:21
concat::fragment { target => 'iptables.rules', ... }
Азазаз

ptchol
02.02.2018
12:01:41
если в депенденсях указан то нарм

Xeniya MTS
02.02.2018
13:41:05


zelo
02.02.2018
13:58:51
а что хочется в конечном итоге?
хочется разбить input на 3 кастомные цепочки и сделать по умолчанию политику drop
в первой будут правила разрешающие то, что трогать не нужно dns, puppet server, zabbix, ssh итд
во второй - изменяемые правила, которые будут генериться отдельным софтом от ИБ и посылаемые в гит в виде ямлов для хиеры
и тут есть момент, что unmanaged правила надо purge'ить, т.к. софт сам это не умеет. Модуль фаера умеет, но если правила переименовать, например (сменить нумерацию), то они все спуржатся и мы терям коннекты, что не айс, а если оставить как есть, то агент почему-то хранит стейт и ничего не меняет/меняет но не сразу.
Поэтому хочется просто каждый раз переименовывать цепочку, дабы гарантированно применять новый набор правил.
в третей будет логирование и в случае если с политикой по умолчанию будет слишком жестко, оставим акцепт и последним правилом дроп all to all
1 и 3 цепочки при этом будет удобно пихнуть в common.yaml а вторую генерить посервисно
итить. простыня


ptchol
02.02.2018
13:59:33
многа букаф, скип )

zelo
02.02.2018
14:01:51
можно конечно проще - версионировать имена правил типа 010 allow some service port 80 ver.1 и каждый раз инкрементить
но чот не красиво кажется


Xeniya MTS
02.02.2018
14:03:07
хочется разбить input на 3 кастомные цепочки и сделать по умолчанию политику drop
в первой будут правила разрешающие то, что трогать не нужно dns, puppet server, zabbix, ssh итд
во второй - изменяемые правила, которые будут генериться отдельным софтом от ИБ и посылаемые в гит в виде ямлов для хиеры
и тут есть момент, что unmanaged правила надо purge'ить, т.к. софт сам это не умеет. Модуль фаера умеет, но если правила переименовать, например (сменить нумерацию), то они все спуржатся и мы терям коннекты, что не айс, а если оставить как есть, то агент почему-то хранит стейт и ничего не меняет/меняет но не сразу.
Поэтому хочется просто каждый раз переименовывать цепочку, дабы гарантированно применять новый набор правил.
в третей будет логирование и в случае если с политикой по умолчанию будет слишком жестко, оставим акцепт и последним правилом дроп all to all
1 и 3 цепочки при этом будет удобно пихнуть в common.yaml а вторую генерить посервисно
мне кажется, лучше свой модуль написать
ну, может, я не права


zelo
02.02.2018
14:03:37
или вообще не паппетом решать, ага

Xeniya MTS
02.02.2018
14:03:48
да можно и паппетом

zelo
02.02.2018
14:03:58
склоняюсь уже к выбору других решений

Xeniya MTS
02.02.2018
14:04:08
мне кажется, можно форкнуть какой-нибудь имеющийся, наиболее похожий модуль, и самостоятельно мантайнить его дальше

Google

Xeniya MTS
02.02.2018
14:04:58
я не думаю, что это прям сложно-сложно дописать, что вам нужно

zelo
02.02.2018
14:04:59
ну дк, я с чего вопрос и начал )

Xeniya MTS
02.02.2018
14:05:55
для задачи форка модуля стоит не только интерфейсы смотреть, но и исходники
если кто стоковый юзает не форкая, может и не знать особенно что там внутри (ну так, бегло просмотрели с точки зрения ИБ, и всё)
у нас совсем самописный модуль. По тому, что vswitch и много tagged трафика, в том числе tagged vxlan
и там в одном модуле функционал и iptables,
и фильтрации на L2 уровне

zelo
02.02.2018
14:08:42
ну у нас никто особо не хочет уметь в ruby
хоть оно и не сложно

Xeniya MTS
02.02.2018
14:09:04
а вы на питоне напишите, можно exec сделать :)

zelo
02.02.2018
14:09:05
надо что-то побыстрее
ы

Xeniya MTS
02.02.2018
14:09:17
не показывайте просто никому

zelo
02.02.2018
14:09:39
тогда уж проще iptabels-save iptables-restore генерить каждый раз новые

Xeniya MTS
02.02.2018
14:09:42
по секрету скажу, что так многие делают. Потом, когда решают загрузить в паппетфордж, переписывают экзеки на плагины на руби

zelo
02.02.2018
14:09:45
тоже варик кстати

Xeniya MTS
02.02.2018
14:10:03

zelo
02.02.2018
14:10:30
можно на мастере через generate
менять строки, а файлики сами в гите

Google

zelo
02.02.2018
14:11:35
решений то всегда полно
но на сильно красиво надо время, да

dk
05.02.2018
10:04:02
Кто-нибудь пробовал настраивать работу кастомных бекендов с использованием скомпиленных переменных?
defaults:
lookup_key: eyaml_lookup_key
hierarchy:
path: "nodes/%{::trusted.certname}.yaml"
..
mapped_path[includes, inc, "includes/{%inc}.yaml"
glob: "includes/{%{includes_str}}.yaml"
..
path: common.yaml
site.pp:
$includes = lookup('includes', Array[String], 'unique', [])
$includes_str = join($includes, ',')
Тут eyaml нормально дешифрует значения из common.yaml и nodes/certname.yaml
Но несмотря на то, что из includes/ нужные ямлы забираются, еямл из них не дешифруется

zelo
05.02.2018
10:20:55
а datadir как задана?
мож она ./includes не включает?

dk
05.02.2018
10:26:13
Включает
Дело в том, что оно-таки инклюдится из инклюдов
Но ENC[...] не расшифровываются

zelo
05.02.2018
10:30:01
я про место где сам бэкенд описан
:eyaml:

dk
05.02.2018
10:32:10
В defaults
Хм, странно, притащил параметры eyaml'а из puppet/hiera.yaml в директорию с окружением и заработало

Viktor
05.02.2018
23:00:17
policy для пользовательских цепочек не поддерживается самим iptables, модуль паппета тут ни при чем

zelo
06.02.2018
08:26:41

Руслан true.sorcerer
06.02.2018
16:06:14
подскажите как правильно реализовать остановку сервиса в случая добавления пользователя в систему?
в таком варианте ругается что сервис лишний раз описан
service { 'sssd-stop':
ensure => 'stopped',
}
service { 'sssd-start':
ensure => 'running',
}
user { 'user.name':
ensure => 'present',
notify => Service['sssd-stop']
...
ssh_authorized_key { 'user.name_ssh':
require => User['user.name],
notify => Service['sssd-start'],
}

Georgii
06.02.2018
17:29:48
именно остановку? не рестарт?

Xeniya MTS
06.02.2018
17:30:26

Руслан true.sorcerer
06.02.2018
17:31:01
если указать дважды один name ругается