zarguni Опубликовано 15 марта, 2013 (изменено) · Жалоба Здравствуйте. Скачал с bitbucket последний lISG-0.11.3-alpha. При сборке ругается: $ sudo make install make -C /lib/modules/3.2.0-35-generic-pae/build M= modules_install make[1]: Вход в каталог `/usr/src/linux-headers-3.2.0-35-generic-pae' HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf scripts/kconfig/conf --silentoldconfig Kconfig make[1]: Выход из каталога `/usr/src/linux-headers-3.2.0-35-generic-pae' make[1]: Вход в каталог `/usr/src/linux-headers-3.2.0-35-generic-pae' cp: не удалось выполнить stat для «/usr/src/linux-headers-3.2.0-35-generic-pae/modules.order»: Нет такого файла или каталога make[1]: *** [_modinst_] Ошибка 1 make[1]: Выход из каталога `/usr/src/linux-headers-3.2.0-35-generic-pae' make: *** [kinstall] Ошибка 2 На тестовой машине Ubuntu uname -r3.2.0-35-generic-pae Подскажите, куда копать? Изменено 15 марта, 2013 пользователем zarguni Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 18 марта, 2013 · Жалоба zarguni, Таки нет хедеров ядра. Качали, кстати, master? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Умник Опубликовано 18 марта, 2013 · Жалоба zarguni, вы делали make до make install? modules.order создается во время make. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 18 марта, 2013 · Жалоба Умник, Помню что-то такое - убунта хедеры ядра как-то частями ставит. То есть они вроде как есть, но не то. Вроде бы там есть kernel-headers-XXX-common, kernel-headers-XXX и еще как-то. Два или три пакета. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
zarguni Опубликовано 18 марта, 2013 · Жалоба Качал master, хидеры установлены. zarguni, вы делали make до make install? modules.order создается во время make. Все как написано делал: ./configure && make && sudo make install Помню что-то такое - убунта хедеры ядра как-то частями ставит. То есть они вроде как есть, но не то. Вроде бы там есть kernel-headers-XXX-common, kernel-headers-XXX и еще как-то. Два или три пакета. Дома, на debian такая же ошибка. Установил все пакеты с linux-headers-*. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 19 марта, 2013 · Жалоба zarguni, Только что столкнулся с такой же ошибкой. Проблема даже хуже - оно не только модуль не ставит, а еще и удаляет все из системы :). Проблема в sudo make install. Решение: 1) Вернуть всё назад. sudo apt-get install --reinstall ваше-ядро 2) Установить модуль: sudo -s, потом уже make install. Вот проблема: https://answers.launchpad.net/ubuntu/+source/sudo/+question/79333 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 20 марта, 2013 · Жалоба Получилось сделать таки человеческую веб-авторизацию. Олегу отдельное спасибо за последние коммиты. Завтра, если кому интересно, опишу, что да как. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Умник Опубликовано 24 марта, 2013 · Жалоба zarguni, починил make install из-под sudo: https://bitbucket.org/sysoleg/lisg/get/master.tar.gz Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
zarguni Опубликовано 24 марта, 2013 · Жалоба zarguni, починил make install из-под sudo: https://bitbucket.org/sysoleg/lisg/get/master.tar.gz Спасибо. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Cramac Опубликовано 25 марта, 2013 · Жалоба Получилось сделать таки человеческую веб-авторизацию. Олегу отдельное спасибо за последние коммиты. Завтра, если кому интересно, опишу, что да как. а с этого места по подробнее... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 25 марта, 2013 · Жалоба Cramac, 0) Берем последний master. Пересобираем ядро, модуль iptables и прочее. Важно - в kernel нужно заново делать ./configure, иначе не установится один модуль. Изменения внесены пару дней назад. 1) Создаем файл etc/tc.conf, достаточно одной строки: ALL_OTHER 0.0.0.0/0 2) В etc/config.pl: ### Новый параметр $cfg{unauth_session_max_duration} = 60; ### Для всех неавторизованных сессий добавляем сервис REDIR $cfg{unauth_service_name_list} = [ "AREDIR" ]; ### Собственно, описание сервиса $cfg{srv}{REDIR}{type} = "tagger"; $cfg{srv}{REDIR}{traffic_classes} = [ "ALL_OTHER" ]; Теперь весь неавторизованный трафик будет считаться авторизованным и помечен сервисом REDIR. 3) Iptables. Трафик теперь считается авторизованным, но помечен сервисом. Нужно его вручную зарубить, кроме 80 порта. Перед -j ISG: -A FORWARD -p tcp -m tcp --dport 80 -m isg --service-name REDIR -j ACCEPT -A FORWARD -m isg --service-name REDIR -j DROP Собственно, сам редирект, перед -j stat_nat_src_skeleton (если он есть): -t nat -A PREROUTING -p tcp -m tcp --dport 80 -m isg --service-name REDIR -j REDIRECT --to-ports 8000 Вроде бы все. Теперь неавторизованная сессия выглядит вот так (флаг Z значит, что не ведется аккаунтинг): ./ISG.pl |grep 0\\.0\\.0\\.0 10.x.x.x 0.0.0.0 Virtual153 FBE7DC2782A17915 60 0 0 0 0 Main session AZ И, что интересно, вот так: ./ISG.pl show_services Virtual153 User IP-address NAT IP-address Port number Uniq. Identifier Durat. Octets-in Octets-out Rate-in Rate-out Service name Flags 10.x.x.x 0.0.0.0 Virtual153 FBE7DC2782A17915 0 0 0 0 0 REDIR SOZT Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Cramac Опубликовано 25 марта, 2013 · Жалоба а в чем суть веб авторизации? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 25 марта, 2013 · Жалоба а в чем суть веб авторизации? Перенаправить неугодных на страничку "дай денег". А там уже как получится - либо денег попросить, либо логин, либо еще что - это уже ваша проблема ;). Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Cramac Опубликовано 25 марта, 2013 · Жалоба ах вон оно как, я значит не правильно понял, я думал что веб авторизация, чтоб логин и пасс вводить для входа в интернет :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 25 марта, 2013 · Жалоба ах вон оно как, я значит не правильно понял, я думал что веб авторизация, чтоб логин и пасс вводить для входа в интернет :) Ну так кто вам мешает? :) Это уже задача биллинга. ISG спросит биллинг - пущать аль нет. Кстати, как вариант: 1) Лепим сразу на сессию сервис "неавторизовано", редиректим по нему. 2) Спрашиваем логин и пароль (или там номер карточки, например). 3) Все хорошо? Отправляем CoA: отключить сервис "неавторизовано". Либо включить сервис "авторизовано". На ваш вкус. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
shicoy Опубликовано 31 марта, 2013 · Жалоба Я так понимаю на 8000 висит что что делает http redirect на нужный урл? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 31 марта, 2013 · Жалоба Я так понимаю на 8000 висит что что делает http redirect на нужный урл? Да. nginx с конфигом на несколько строчек + фильтр. Всякие обновлялки не нужно редиректить - только зря потратим машинное время. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
shicoy Опубликовано 2 апреля, 2013 · Жалоба Я так понимаю на 8000 висит что что делает http redirect на нужный урл? Да. nginx с конфигом на несколько строчек + фильтр. Всякие обновлялки не нужно редиректить - только зря потратим машинное время. Пример можно? Для криворуких :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 2 апреля, 2013 · Жалоба Я так понимаю на 8000 висит что что делает http redirect на нужный урл? Да. nginx с конфигом на несколько строчек + фильтр. Всякие обновлялки не нужно редиректить - только зря потратим машинное время. Пример можно? Для криворуких :) Конечно. worker_processes 1; events { worker_connections 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; server { listen 8000; server_name localhost; access_log /var/log/nginx/redirect.access.log; location / { if ( $http_user_agent ~ ^uTorrent ) { return 404; } if ( $http_user_agent ~ Windows-Update-Agent ) { return 404; } if ( $http_user_agent ~ "Microsoft NCSI" ) { return 404; } if ( $http_user_agent ~ "ESS Update" ) { return 404; } if ( $http_user_agent ~ "Google Update" ) { return 404; } if ( $http_user_agent ~ "Microsoft-CryptoAPI" ) { return 404; } if ( $http_user_agent ~ "Microsoft BITS" ) { return 404; } if ( $http_user_agent ~ MSDW ) { return 404; } if ( $http_user_agent ~ ^SeaPort ) { return 404; } if ( $http_user_agent ~ ^Windows-Media-Player ) { return 404; } if ( $http_user_agent ~ "Google Update" ) { return 404; } if ( $http_user_agent ~ ^GoogleEarth ) { return 404; } if ( $http_user_agent ~ ^Skype ) { return 404; } if ( $http_user_agent = "MailRuSputnik" ) { return 404; } if ( $http_user_agent ~ ^Ya\.Online ) { return 404; } if ( $http_user_agent ~ ^MRA ) { return 404; } if ( $http_user_agent ~* ^MediaGet ) { return 404; } if ( $http_user_agent ~ ^BTWebClient ) { return 404; } if ( $http_user_agent ~ ^Syncer ) { return 404; } if ( $http_user_agent = "TMUFE" ) { return 404; } if ( $http_user_agent ~ ^Akamai\ NetSession\ Interface ) { return 404; } if ( $http_user_agent ~ ^VKSaver ) { return 404; } if ( $http_user_agent ~ DrWebUpdate ) { return 404; } if ( $http_user_agent = "" ) { return 404; } if ( $host ~ geo\.kaspersky\.com ) { return 404; } if ( $host ~ (su|download|webrep).*\.avast\.com ) { return 404; } if ( $host = wi2geo.mobile.yandex.net ) { return 404; } if ( $host ~ bar.*\.yandex\.ru ) { return 404; } if ( $host ~ (ping|master)\d*\.(dyngate|teamviewer)\.com ) { return 404; } if ( $host ~ sitecheck\d*\.opera\.com ) { return 404; } if ( $host ~ (xml\.my|mailsputnik|maps)\.mail\.ru ) { return 404; } if ( $host = onlineconfigservice.ubi.com ) { return 404; } if ( $host = com-services.pandonetworks.com ) { return 404; } if ( $host ~ ticno\.com ) { return 404; } if ( $host ~ conduit ) { return 404; } if ( $host ~ cbox\.ws ) { return 404; } if ( $host ~ (pricelist|metrics)\.skype\.com ) { return 404; } if ( $host = weather.service.msn.com ) { return 404; } if ( $host = advstat.letitbit.net ) { return 404; } if ( $host = skymonk.net ) { return 404; } if ( $host ~ counter ) { return 404; } if ( $host ~ pluraserver ) { return 404; } if ( $host ~ apps.bittorrent.com ) { return 404; } if ( $host ~ tracker ) { return 404; } if ( $request_uri ~* (update|feed|announce|rss|xml|json|oauth) ) { return 404; } if ( $request_uri ~* (toolbar|suggest) ) { return 404; } if ( $request_filename ~ \.(ico|gif|jpg|png) ) { return 404; } if ( $request_filename ~ \.(css|xml|js|swf|flv) ) { return 404; } if ( $request_filename ~ \.(crl|txt|cab|msi|jar) ) { return 404; } if ( $host ~ norton ) { return 404; } rewrite ^ http://someurl/somescript.cgi?nas=1.2.3.4&ref=$scheme://$host$request_uri redirect; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } } Мне был нужен IP-адрес ISG-сервера в скрипте (оборвать неавторизованную сессию после того, как пользователь ввел логин-пароль), поэтому я передаю его как параметр. Фильтры взяты где-то тут же, на nag-е, плюс дописал кое-чего сам. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 2 апреля, 2013 · Жалоба Порно :) map $host$uri$is_args$args $uri_custom_blocked { include proxy/cust_url_blocked.acl; } map $host $host_adv_black_listed { hostnames; include proxy/adv_dom_blocked.acl; include proxy/adv_dom_re_blocked.acl; } .... if ($uri_custom_blocked) { return 404; } if ($host_adv_black_listed) { return 404; } отдельный файл cust_url_blocked.acl ### Counters ~*\.agni-yoga\.net\/Top100\/ 1; ~*content\.mail\.ru\/cgi-bin\/counter 1; ~*hc\.uralweb\.ru\/hc\/ 1; отдельный файл adv_dom_blocked.acl: ### Ads 1; .1link.ru 1; .1tizer.ru 1; .1traff.ru 1; adv_dom_re_blocked.acl ### Ads ~*^ad[s]?\..*$ 1; ~*^adv\..*$ 1; ~*^ban\..*$ 1; Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
zep Опубликовано 3 апреля, 2013 · Жалоба Всем привет! Успановил пакет на тестовую машину. Все хорошо, сессия поднимается через радиус, появляется в статистике, трафик попадает в FORWARD -j ISG, но там же и остается: OS - Debian 172.16.3.2 - тестовый клиент (весит на интерфейсе eth1) #/scripts/isg/ISGd.pl Session '172.16.3.2' on 'Virtual1' accepted by '127.0.0.1:1812' Service '6mbit' for '172.16.3.2' started #/scripts/isg/ISG.pl User IP-address NAT IP-address Port number Uniq. Identifier Durat. Octets-in Octets-out Rate-in Rate-out Service name Flags 172.16.3.2 0.0.0.0 Virtual1 27622A79D24BE5EB 114 213 0 0 0 Main session A iptables (v1.4.8) *nat -A POSTROUTING -s 172.16.3.0/24 -o eth0 -j SNAT --to-source 91.91.91.91 *filter -A FORWARD -s 172.16.3.0/24 -j ISG --session-init --init-mode src -A FORWARD -d 172.16.3.0/24 -j ISG + echo 1 > /proc/sys/net/ipv4/ip_forward + sysctl net.core.rmem_max=4194304 config.pl $cfg{'srv'}{'6mbit'}{'rate_info'} = "QD;512000;96000;U;512000;96000"; $cfg{'srv'}{'6mbit'}{'traffic_classes'} = [ "OUR_NET", "ALL_OTHER" ]; radius request - reply: # radtest 172.16.3.2 172.16.3.2 127.0.0.1 1 test321 Sending Access-Request of id 17 to 127.0.0.1 port 1812 User-Name = "172.16.3.2" User-Password = "172.16.3.2" NAS-IP-Address = 91.91.91.91 NAS-Port = 1 rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=17, length=58 Cisco-Account-Info = "A6mbit" Class = 0x757365725f69645f3331 Idle-Timeout = 1800 Session-Timeout = 120 Если в iptables прописать -A FORWARD -j ACCEPT , трафик натится и бежит в глобальную сеть. Почему ISG.pl всегда показывает Service Name - Main session ? Флаг сессии всегда только "A" или "X" , почему? Порно :) А не проще запретить все, а разрешить только где REQUEST_URL ~ ВАШ_URL_ХОСТА_ДАЙ_ДЕНЕГ ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 3 апреля, 2013 · Жалоба А не проще запретить все, а разрешить только где REQUEST_URL ~ ВАШ_URL_ХОСТА_ДАЙ_ДЕНЕГ ? Нет. В nginx попадает куча хлама, на который надо ответить http redirect ВАШ_URL_ХОСТА_ДАЙ_ДЕНЕГ. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
zep Опубликовано 3 апреля, 2013 (изменено) · Жалоба Я сейчас разобьюсь об скалы! Скажите, почему ISG.pl показывает Service Name всегда Main session ??? Пакет master 880b4a7 Изменено 3 апреля, 2013 пользователем zep Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
zep Опубликовано 3 апреля, 2013 · Жалоба Все препроверил.. Трафик в цепочке FORWARD (от клиента в сторону внешней сети) попадает в ISG, но не проходит её. iptables -nvxL Chain FORWARD (policy DROP 71 packets, 3408 bytes) pkts bytes target prot opt in out source destination 137 7416 ISG all -- * * 172.16.3.0/24 0.0.0.0/0 ISG initiator src mode 0 0 ISG all -- * * 0.0.0.0/0 172.16.3.0/24 ISG initiator dst mode Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 4 апреля, 2013 · Жалоба zep, ./ISG.pl show_services VirtualXXX Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...