Комментарии 22
#Разрешаем VOIP
iptables -t mangle -A FORWARD -p tcp -m tcp --tcp-flags RST,SYN SYN -j TCPMSS --clamp-mss-to-pmtu
не имеет отношения к VOIP напрямую… почитайте на предмет mtu blackhole
к примеру
Еще несколько слов о Path MTU Discovery Black Hole
О PPPoE, MTU и проблеме Path MTU Discovery Black Hole
Постоянный VPN на базе pptp? Мне прямо вот неудобно как-то уже:
en.wikipedia.org/wiki/Point-to-Point_Tunneling_Protocol#Security
security.stackexchange.com/questions/45509/are-there-any-known-vulnerabilities-in-pptp-vpns-when-configured-properly
Вопрос в том, для чего VPN. Если для безопасности, то вы выбрали не ту технологию, как следует из первых попавшихся ссылок, пару из которых я привел выше.
en.wikipedia.org/wiki/Point-to-Point_Tunneling_Protocol#Security
security.stackexchange.com/questions/45509/are-there-any-known-vulnerabilities-in-pptp-vpns-when-configured-properly
Вопрос в том, для чего VPN. Если для безопасности, то вы выбрали не ту технологию, как следует из первых попавшихся ссылок, пару из которых я привел выше.
сомневаюсь, что те шары и голосовой траффик, которые стали доступны при таком решении, составляют критическую ценность. собственно Vpn применен для удобства и простоты настройки, администрирования, а так же в связи с тем, что другие решения на dir300+ddwrt практически реализовать невозможно, с моей точки зрения
А почему вы не стали настраивать OpenVPN, например? А если использовать оборудование на Микротик (со стороны точки с динамическим IP), то там можно при смене IP-адреса интерфейса переподнимать туннель автоматом с новыми реквизитами.
>Сначала было желание реализовать сервер VPN на шлюзе FreeBSD, установив pptpd. Однако, как оказалось, в FreeBSD нужно патчить систему для поддержки mpd
простите, а что там патчить?
простите, а что там патчить?
Вот тут у Лиссяры написано как патчить mpd5. Про pptpd во freebsd 9 вычитал на том же ресурсе, что лучше не надо. Попробовал раз взлететь, не вышло. Поэтому оставил эту тему. Но там еще вопрос безопасности сыграл свою роль. Со шлюза больше шар доступно, бекапы (которые вне локальной подсети). Поэтому не стал к шлюзу давать доступ из — вне.
Ничего там не патчат. Всё устанавливается по стандартной схеме. Настраиваются конфиги. Разве что только включают PF в ядре. Если у вас что-то другое используется, то смотрите как там NAT сделать, если он, то ничего не нужно пересобирать.
Да уж и не надо, на убунте работает. FreeBSD балансирует каналы, раздает ip — адреса, является сервером NS. Могу сослаться на работающее решение балансировки нескольких каналов на базе PF.
Я раньше использовал FreeBSD и как раз с PF. Но сейчас как-то неудобно стало. Да и софт больше под Linux развивается. Думаю вы ничего не потеряли.
Но в инструкции всё-таки патчить ядро под MPD не нужно :-)
Но в инструкции всё-таки патчить ядро под MPD не нужно :-)
С планшета смотрел. Не нужно, так и не нужно. В любом случае не взлетело, а на рабочей ОС экспериментировать что-то не захотелось.
К FreeBSD отношусь с большИм уважением, нежели к linux. Может быть процесс запуска колхоза, сборки из сорцов и сложнее, чем установка из репозиториев, однако на этапе сборки системы становится понятно как это все связано и функционирует. Работа на мой взгляд чуть быстрее и чуть стабильнее, следовательно чуть прозрачнее и запущенный сервис в целом. На ubuntu/debian?centos пересел в связи с:
1) На дешевые VPS сложно поставить FreeBSD;
2) CentOS у клиента, которого обслуживаю, сайты держит
3) ProxMox на Debian, пришлось разобраться когда ферму для биткойнов на нем делал.
К FreeBSD отношусь с большИм уважением, нежели к linux. Может быть процесс запуска колхоза, сборки из сорцов и сложнее, чем установка из репозиториев, однако на этапе сборки системы становится понятно как это все связано и функционирует. Работа на мой взгляд чуть быстрее и чуть стабильнее, следовательно чуть прозрачнее и запущенный сервис в целом. На ubuntu/debian?centos пересел в связи с:
1) На дешевые VPS сложно поставить FreeBSD;
2) CentOS у клиента, которого обслуживаю, сайты держит
3) ProxMox на Debian, пришлось разобраться когда ферму для биткойнов на нем делал.
как уже сказали, ничего там не патчат. не знаю, что у вас там не взлетело, но pptp на mpd поднимается максимум за 10 минут.
но я бы выбрал l2tp из-за отсутствия проблем с nat.
но я бы выбрал l2tp из-за отсутствия проблем с nat.
>Что касается строчки «Разрешаем VOIP» в стартовом скрипте, то я могу сказать так: нашел ее в выдаче далеко за первой сотней поисковика, в одном из форумов, с пометкой «попробуй, вдруг заработает». До ее введения в конфиг ходил любой траффик за исключением голоса со стороны АТС.
голос бегает по rtp, который представляет собой пакетики udp. у правила же match-условие — tcp, так что оно на голос никак не влияет.
>/sbin/route del -net 192.168.0.0 netmask 255.255.255.0
используйте iproute2. и я бы вообще весь впн вынес в отдельную таблицу роутинга(а лучше вообще неймспейс).
голос бегает по rtp, который представляет собой пакетики udp. у правила же match-условие — tcp, так что оно на голос никак не влияет.
>/sbin/route del -net 192.168.0.0 netmask 255.255.255.0
используйте iproute2. и я бы вообще весь впн вынес в отдельную таблицу роутинга(а лучше вообще неймспейс).
Согласен с вышеприведенным.
Не стал делать ибо работает так, а задачи разбираться с iproute2 и прочим не стоит (не заплатят, не оценят)
однако проблемы, с которыми я столкнулся при настройке роутинга в следующем — если я задаю правила при старте системы, а входящие интерфейсы еще не подняты, то правила роутинга не работают (привязываются к eth0).
видимо влияет mtu blackhole все-таки на траффик, а не невозможность прогона через систему именно rtp. Поэтому закомментил себе эту строчку именно так.
и я бы вообще весь впн вынес в отдельную таблицу роутинга(а лучше вообще неймспейс).
Не стал делать ибо работает так, а задачи разбираться с iproute2 и прочим не стоит (не заплатят, не оценят)
однако проблемы, с которыми я столкнулся при настройке роутинга в следующем — если я задаю правила при старте системы, а входящие интерфейсы еще не подняты, то правила роутинга не работают (привязываются к eth0).
голос бегает по rtp, который представляет собой пакетики udp. у правила же match-условие — tcp, так что оно на голос никак не влияет.
видимо влияет mtu blackhole все-таки на траффик, а не невозможность прогона через систему именно rtp. Поэтому закомментил себе эту строчку именно так.
>Не стал делать ибо работает так, а задачи разбираться с iproute2 и прочим не стоит (не заплатят, не оценят)
дело не в «заплатят/оценят», а знаниях в вашей голове и том факте, что net-tools(в которые входят ifconfig/route/netstat) уже давно depracated.
собственно, ваши проблемы с настройкой роутинга как раз с этим и связаны.
>видимо влияет mtu blackhole все-таки на траффик
не влияет. более того, глядя на ваш /etc/ppp/ip-up.d/pppup хочется рыдать.
зачем cd, если вы используете абсолютный путь?
но это мелочи.
вывели в stdout содержимое таблички nat. оок. но зачем?
в этот момент всё содержимое таблички filter исчезло. если у нас там были какие-то полезные правила — всё, их нет.
если у того, кто попробует поднять по вашей статье дефолтная политика DROP, то он лишится ssh доступа к машине.
зачем?
зачем?
зачем прописывать 100500 интерфейсов, особенно в таком стиле?
P.S.: пожалуйста, не пишите больше статей по сетям без понимания происходящего и того, как работают используемые вами инструменты.
дело не в «заплатят/оценят», а знаниях в вашей голове и том факте, что net-tools(в которые входят ifconfig/route/netstat) уже давно depracated.
собственно, ваши проблемы с настройкой роутинга как раз с этим и связаны.
>видимо влияет mtu blackhole все-таки на траффик
не влияет. более того, глядя на ваш /etc/ppp/ip-up.d/pppup хочется рыдать.
cd /etc/ppp/ip-up.d
cat /etc/ppp/ip-up.d/pppup
зачем cd, если вы используете абсолютный путь?
но это мелочи.
iptables -L -t nat
вывели в stdout содержимое таблички nat. оок. но зачем?
iptables -F
в этот момент всё содержимое таблички filter исчезло. если у нас там были какие-то полезные правила — всё, их нет.
если у того, кто попробует поднять по вашей статье дефолтная политика DROP, то он лишится ssh доступа к машине.
iptables -X
зачем?
iptables -A INPUT -i eth1 -p tcp --dport 47 -j ACCEPT
iptables -A INPUT -i eth1 -p udp --dport 47 -j ACCEPT
зачем?
#Разрешаем траффик на интерфейсах
зачем прописывать 100500 интерфейсов, особенно в таком стиле?
P.S.: пожалуйста, не пишите больше статей по сетям без понимания происходящего и того, как работают используемые вами инструменты.
зачем cd, если вы используете абсолютный путь?
но это мелочи.
Чтобы показать в статье где что лежит.
iptables -A INPUT -i eth1 -p tcp --dport 47 -j ACCEPT
iptables -A INPUT -i eth1 -p udp --dport 47 -j ACCEPT
зачем?
Порт pppoe, через который идет согласование.
P.S. Когда Вы напишете статью о аналогичном решении, соблюдая Ваши правила, обязуюсь прекратить писать свои решения на хабре.
зачем прописывать 100500 интерфейсов, особенно в таком стиле?
Решение предназначено больше для использования внутри жестко определенных рамок, а не для авторизации кучи пользователей. Всего пользователей 3, соответственно и правила прописаны для максимально возможного количества поднятых интерфейсов.
вывели в stdout содержимое таблички nat. оок. но зачем?
Отладочная инфа. Пардоньте, забыл удалить.
если у того, кто попробует поднять по вашей статье дефолтная политика DROP, то он лишится ssh доступа к машине.
не факт.
пожалуйста, не пишите больше статей по сетям без понимания происходящего и того, как работают используемые вами инструменты.
Обязуюсь прекратить писать статьи на Хабре, когда увижу от Вас статью о решении аналогичной проблемы, с учетом Ваших комментариев к моей
Порт pppoe, через который идет согласование.
в PPPoE нет портов. и вы настраиваете pptp, а не pppoe.
у pptp только 1 порт используется — 1723. число 47 — это скорее про gre в поле protocol number
но это опять же про ip, а не tcp или udp.
P.S. Когда Вы напишете статью о аналогичном решении, соблюдая Ваши правила, обязуюсь прекратить писать свои решения на хабре.
тюю…
l2 vpn с vlan'ми на vtun
l2 vpn с vlan'ми на l2tpv3 pseudowire
network namespaces
QinQ в linux
Всего пользователей 3, соответственно и правила прописаны для максимально возможного количества поднятых интерфейсов.
а зачем? у вас адреса клиентов гвоздями прибиты, достаточно было разрешить 10.1.1/24
не факт.
факт. сделайте сидя по ssh:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -F
тюю…
l2 vpn с vlan'ми на vtun
l2 vpn с vlan'ми на l2tpv3 pseudowire
network namespaces
QinQ в linux
Ваше?
Где там про DD-WRT или аналогичное решение про подключение телефона KX-NT321 к офисной АТС с помощью этого решения с использованием предложенного роутера DIR-300 или без него?
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -F
Зачем мне это делать, если я делаю то, что описано в статье и ssh не отваливается? Пусть даже Вы утверждаете обратное.
и вы настраиваете pptp, а не pppoe.
у pptp только 1 порт используется — 1723. число 47 — это скорее про gre в поле protocol number
Да, это gre. При настройке pptpd в любом случае необходимо дать доступ к этому порту:
iptables -A INPUT -i eth1 -p tcp --dport 47 -j ACCEPT
iptables -A INPUT -i eth1 -p udp --dport 47 -j ACCEPT
иначе логин не проходит.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Сервер VPN для организации телефонной связи удаленного офиса на базе АТС Panasonic TDE100