{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "Аникин: заметки с тегом iptables",
    "_rss_description": "Блог об администрировании Linux, BSD и не только",
    "_rss_language": "ru",
    "_itunes_email": "",
    "_itunes_categories_xml": "",
    "_itunes_image": "",
    "_itunes_explicit": "",
    "home_page_url": "https:\/\/anikin.pw\/tags\/iptables\/",
    "feed_url": "https:\/\/anikin.pw\/tags\/iptables\/json\/",
    "icon": "https:\/\/anikin.pw\/pictures\/userpic\/userpic@2x.jpg?1478690884",
    "authors": [
        {
            "name": "Петр Аникин",
            "url": "https:\/\/anikin.pw\/",
            "avatar": "https:\/\/anikin.pw\/pictures\/userpic\/userpic@2x.jpg?1478690884"
        }
    ],
    "items": [
        {
            "id": "19",
            "url": "https:\/\/anikin.pw\/all\/vklyuchenie-moduley-openvz\/",
            "title": "Включение модулей openvz.",
            "content_html": "Рассмотрим как включить модули iptables, ppp и tun\/tap в openvz-контейнере.<p>\r\n<strong>Включение модулей iptables<\/strong><p>\r\n\r\nВыполняем на ноде:<p>\r\n<code># modprobe iptable_nat<\/code><p>\r\nПодключаем модуль в контейнер id 001:<p>\r\n<code># vzctl set 001 --save --iptables \"ip_conntrack iptable_filter iptable_mangle ipt_state iptable_nat ip_nat_ftp ip_conntrack_ftp\"<\/code><p>\r\n<strong>UPD:<\/strong><p>\r\n<code># vzctl set 001 --netfilter full --save --setmode restart<\/code><p>\r\n\r\n<strong>Включение модуля ppp<\/strong><p>\r\n\r\nСтопаем контейнер, а затем выполняем на ноде(001-id контейнера на котором надо включить):<p>\r\n<code># modprobe ppp_async<p>\r\n# modprobe ppp_deflate<p>\r\n# modprobe ppp_mppe<p>\r\n# vzctl set 001 --features ppp:on --save<p>\r\n# vzctl set 001 --devices c:108:0:rw --save<\/code><p>\r\n\r\nЗапускаем контейнер и внутри него выполняем:<p>\r\n<code># mknod \/dev\/ppp c 108 0<p>\r\n# chmod 600 \/dev\/ppp<\/code><p>\r\n\r\n<strong>Включение модуля tun<\/strong><p>\r\n\r\nНа ноде выполняем(001-id контейнера на котором надо включить):<p>\r\n<code># modprobe tun<p>\r\n# vzctl set 001 --devnodes net\/tun:rw --save<p>\r\n# vzctl set 001 --devices c:10:200:rw --save<p>\r\n# vzctl set 001 --capability net_admin:on --save<p>\r\n# vzctl exec 001 mkdir -p \/dev\/net<p>\r\n# vzctl exec 001 chmod 600 \/dev\/net\/tun<\/code><p>",
            "date_published": "2014-01-25T14:16:10+03:00",
            "date_modified": "2019-04-26T12:46:08+03:00",
            "tags": [
                "ip_conntrack",
                "ip_conntrack_ftp",
                "ip_nat_ftp",
                "ipt_state",
                "iptable_filter",
                "iptable_mangle",
                "iptable_nat",
                "iptables",
                "openvz",
                "ppp",
                "tap",
                "tun"
            ],
            "_date_published_rfc2822": "Sat, 25 Jan 2014 14:16:10 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "19",
            "_e2_data": {
                "is_favourite": true,
                "links_required": null,
                "og_images": []
            }
        },
        {
            "id": "11",
            "url": "https:\/\/anikin.pw\/all\/kak-zastavit-rabotat-apf-firewall-na-yadre-versii-3-x\/",
            "title": "Как заставить работать apf-firewall на ядре версии 3.x",
            "content_html": "Установил apf-firewall на один из серверов, столкнулся с проблемой. При запуске фаервола получил ошибку:<p>\r\n\r\nKernel version not equal to 2.4.x or 2.6.x, aborting.<p>\r\n\r\nФаервол не запустился и правила в iptables не добавились. Путём долгого гуления выяснилось что в коде скрипта стоит проверка версии ядра и на ядрах отличных от 2.4.х и 2.6.х apf отказывается работать. Обойти данное досадное недоразумение, как оказалось, достаточно просто. В файле \/etc\/apf-firewall\/internals\/functions.apf находим строку 68 и приводим условие к такому виду:<p>\r\n\r\n<code>elif [ \"$KREL\" == \"3.2\" ]; then<p>\r\nMEXT=\"ko\"<\/code><p>\r\n\r\nГде 3.2 ваша версия ядра. Версию ядра можно узнать выполнив:<p>\r\n\r\n<code># uname -a<\/code><p>\r\n\r\nПосле этих изменений apf запустился без проблем и правила добавились в iptables. Нормальная работа apf проверена на версии ядра 3.2.х и по информации в интернете 3.0.х. Решение вроде простое, но найти эту информацию оказалось довольно трудно. Поэтому сделал эту запись, возможно кому-то поможет.",
            "date_published": "2013-10-20T20:23:38+03:00",
            "date_modified": "2014-04-04T13:51:33+03:00",
            "tags": [
                "Advanced Policy Firewall",
                "APF",
                "APF-Firewall",
                "debian",
                "iptables",
                "Kernel",
                "Linux",
                "ubuntu"
            ],
            "_date_published_rfc2822": "Sun, 20 Oct 2013 20:23:38 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "11",
            "_e2_data": {
                "is_favourite": false,
                "links_required": null,
                "og_images": []
            }
        },
        {
            "id": "2",
            "url": "https:\/\/anikin.pw\/all\/ustanovka-pptp-vpn-servera-na-openvz-konteyner\/",
            "title": "Установка PPTP сервера на OpenVZ контейнер",
            "content_html": "Рассмотрим как настроить PPTP сервер в контейнере OpenVZ. В контейнере должны быть включены модули ядра iptables и ppp. Если у вы арендуете сервер, то пишете в техподдержку. Если у вас есть доступ к ноде, то включаете их. На ноде выполняем команды, предварительно стопнув контейнер:<p>\r\n\r\n<code># modprobe ppp_async<p>\r\n# modprobe ppp_deflate<p>\r\n# modprobe ppp_mppe<p>\r\n# vzctl set 001 --features ppp:on --save<p>\r\n# vzctl set 001 --devices c:108:0:rw --save<\/code><p>\r\n\r\nГде 001 номер контейнера. Запускаем контейнер и внутри него выполняем:<p>\r\n\r\n<code># mknod \/dev\/ppp c 108 0<p>\r\n# chmod 600 \/dev\/ppp<\/code><p>\r\n\r\nМы включили модуль ppp. Теперь нам надо включить модули натирования. Стопим контейнер снова и на ноде выполняем:\r\n\r\n<code># vzctl set 001 --save --iptables \"ip_conntrack iptable_filter iptable_mangle ipt_state iptable_nat ip_nat_ftp ip_conntrack_ftp\"<\/code><p>\r\n\r\nЗапускаем контейнер. Затем настройка будет происходить в самом контейнере. Установим pptpd\r\n\r\n<code># apt-get install pptpd<\/code><p>\r\n\r\nПриводим файл \/etc\/ppp\/pptpd-options примерно к такому содержанию:<p>\r\n\r\n<code>name pptpd #имя сервера<\/br>\r\nrefuse-pap #отключаем аутентификацию pap, chap, mschap<\/br>\r\nrefuse-chap<\/br>\r\nrefuse-mschap<\/br>\r\nrequire-mschap-v2 #включаем аутентификацию mschap v2<\/br>\r\nrequire-mppe-128 #включаем 128 битное шифрование<\/br>\r\nms-dns 8.8.8.8 #DNS-сервер<\/br>\r\nlogfile \/var\/log\/pptpd.log #куда писать логи<\/br>\r\nnodefaultroute<\/br>\r\nlock<\/br>\r\nnobsdcomp<\/code><p>\r\n\r\nПриводим файл \/etc\/pptpd.conf примерно к такому виду:<p>\r\n\r\n<code>option \/etc\/ppp\/pptpd-options<\/br>\r\nlogwtmp<\/br>\r\nlocalip 192.168.0.1 #локальный ip сервера<\/br>\r\nremoteip 192.168.0.2-254 #ip клиентов<\/br>\r\nbcrelay venet0:0<\/code><p>\r\n\r\nСоздаём логины и пароли пользователей в файле \/etc\/ppp\/chap-secrets:<p>\r\n\r\n<code># Secrets for authentication using CHAP<\/br>\r\n# client server secret IP addresses<\/br>\r\nuser pptpd password *\r\n<\/code><p>\r\nПерезапускаем сервер:<p>\r\n\r\n<code># \/etc\/init.d\/pptpd restart<\/code><p>\r\n\r\nТеперь пропишем в файле \/etc\/rc.local команду натирования, чтобы разрешить нашим клиентам доступ в интернет. Перед exit 0 пишем:<p>\r\n\r\n<code>iptables -t nat -A POSTROUTING -s 192.168.0.0\/24 -o venet0 -j SNAT —to-source внешний ip контейнера<\/code><p>\r\n\r\nА в \/etc\/sysctl.conf разрешим ip-форвардинг, раскомментировав строку:<p>\r\n\r\n<code>net.ipv4.ip_forward=1<\/code><p>\r\n\r\nПробуем подключиться. Если не удалось, то смотрим лог-файл, который мы указали выше и разбираемся с ошибками.<p>\r\n\r\nP.S. Иногда требуется включить модуль nat на ноде, хотя по умолчанию он обычно включен. Для этого выполняем:<p>\r\n\r\n<code># modprobe iptable_nat<\/code>",
            "date_published": "2013-10-19T16:46:37+03:00",
            "date_modified": "2023-11-24T17:40:07+03:00",
            "tags": [
                "iptables",
                "nat",
                "openvz",
                "ppp",
                "PPTP",
                "pptpd",
                "ubuntu",
                "VDS",
                "VPN",
                "VPS"
            ],
            "_date_published_rfc2822": "Sat, 19 Oct 2013 16:46:37 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "2",
            "_e2_data": {
                "is_favourite": false,
                "links_required": null,
                "og_images": []
            }
        }
    ],
    "_e2_version": 4134,
    "_e2_ua_string": "Aegea 11.3 (v4134)"
}