Как стать автором
Обновить

Комментарии 16

Поддержка парольной авторизации Active Directory

что-то чем дальше, тем больше я сомневаюсь, что использовать доменные пароли вне сети предприятия — хорошая идея.
слишком легко они утекают, слишком болезненна утечка, если мы используем доменную авторизацию для многих служб

Я и сам не в восторге от этой идеи. Добавили 2 этап авторизации для повышения безопасности и защиты от брута. Задача была срочная и связана с обеспечением работы предприятия в форс-мажорной ситуации.

Их везде используют, от этого никуда не денешься.
Использование Single Sign On слишком удобно чтобы от него отказывались.

тут же sso не пахнет

Ну тут смотря какие у клиентов девайсы. Если корпоративные лаптопы в домене… то Kerberos и вот это всё.


Да и даже если и нет — использование одного аккаунта для VPN/почты/всего остального крайне удобно.

Спасибо за статью. С момента начала изоляции — это единственная статья про конкретная реализацию VPN для компании, остальные просто пиар.
Есть пара вопросов:
Нижеуказанная информация — это из личного опыта или где-то есть инфа от Redhat?
#В связи с переходом на nftables есть проблема с работой Firewalld в части правил в цепочке Forward.
Использование Google Authenticator:
Далее необходимо из под учетной записи пользователя на сервере(sudo su DomainUser)
Подразумевается, что для каждого пользователя домена необходимо запускать эту команду, а результат работы высылать каждому пользователю, не так ли? Это если я правильно понимаю работу Google Authenticator
По nftables:
Есть сведения от firewalld тут и тут чуть больше тут
По google auth Да, вы правы. У себя мы сделали чуть по другому мы проверяем если в личной папке пользователя есть сформированный файл .google_authenticator то pam использует 2FA если нет, то просто авторизация по связке логин+пароль. И потихоньку генерили qr и рассылали пользователям.
По-моему в firewalld штатно никогда не было настроек для установки разрешения форвардинга между интерфейсами. Всегда требовалось заводить '--direct' правила.
Вся проблема в том, что --direct не работают в Centos 8
Я имел ввиду только --direct в части Forward пакетов внутри одной зоны между двумя сетевыми интерфейсами
firewall-cmd --direct --add-rule ipv4 filter FORWARD 0  -i vpns0 -o ens224  -j ACCEPT
firewall-cmd --direct --add-rule ipv4 filter FORWARD 0  -i ens224 -o vpns0  -j ACCEPT
Для --direct правил здесь лучше использовать штатную предустановленную цепочку FORWARD_direct, а не напрямую FORWARD.

Отличная практическая статья, спасибо.
Заказывал сегодня centos 8, сразу же заметил что в поставке по дефолту был только nftables.
Вникнул, по мне, так удобнее чем firewalld, снова конфиг в файлах (привет любителям iptables-save > /etc/sysconfig/iptables)
PS: iifname "vpns+" не работает, заметно по счетчикам. Сделал через ip saadr
# nft list table inet filter
table inet filter {
	chain input {
		type filter hook input priority 0; policy drop;
		iif "lo" accept comment "Accept any localhost traffic"
		ct state invalid drop comment "Drop invalid connections"
		ct state established,related accept comment "Accept traffic originated from us"
		icmp type echo-request limit rate over 10/second burst 4 packets drop comment "No ping floods"
		icmpv6 type echo-request limit rate over 10/second burst 4 packets drop comment "No ping floods"
		tcp dport ssh ct state new limit rate 15/minute accept comment "Avoid brute force on SSH"
		meta l4proto { tcp, udp } @th,16,16 25443 accept comment "Accept ocserv"
		tcp dport 28443 accept comment "Accept stunnel"
		tcp dport { http, https } accept
		counter packets 2729 bytes 196569 comment "Count any other traffic"
	}

	chain forward {
		type filter hook forward priority 0; policy drop;
		ct state invalid drop comment "Drop invalid connections"
		ct state established,related accept comment "Accept traffic originated from us"
		iifname "vpns+" counter packets 0 bytes 0 accept
		ip saddr 172.16.1.0/24 accept
	}

	chain output {
		type filter hook output priority 0; policy accept;
	}
}
Примечательно, что переход на дефолт nftables произошёл в RHEL8.0, которая базировалась на Fedora 28. А в самой Федоре переход на дефолт nftables осуществили только в F32, вышедшей неделю назад.

PS. И firewalld соответственно работает на nftables бэкенде, а direct-правила в нём используют iptables-бэкенд, и это превносит свои странные особенности:
firewalld uses nftables by default

With this update, the nftables filtering subsystem is the default firewall backend for the firewalld daemon. To change the backend, use the FirewallBackend option in the /etc/firewalld/firewalld.conf file.

This change introduces the following differences in behavior when using nftables:
  1. iptables rule executions always occur before firewalld rules
    • DROP in iptables means a packet is never seen by firewalld
    • ACCEPT in iptables means a packet is still subject to firewalld rules
  2. firewalld direct rules are still implemented through iptables while other firewalld features use nftables
  3. direct rule execution occurs before firewalld generic acceptance of established connections

Что заставляет людей использовать Shrew, умерший еще в 2013 году и более не развивающийся?
Он бесплатный и стабильно работает.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории