[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Web - технологии / Сети /

Разделение доступа в интернет из локальной сети

Linux RSP Web Site


Около года назад у нас появился интернет и вместе с ним проблема - как делить? Собственно проблема в том, что все машины многопользовательские, а, как следствие, ограничить доступ на основании IP адреса невозможно.

Теперь, год спустя, обнаружились 2 наиболее практичных способа. Мы используем первый, но у вас есть возможность выбирать ;)

Способ первый (IMHO более правильный) заключается в использовании socks5 сервера и клиента.
При этом получаем отличный firewall с возможностью проксить как TCP так и UDP плюс полный контроль над работой пользователей в интернет. Настраиваем следующим образом:

  1. Идем на www.socks.nec.com  и берем там socks5 сервер (на данный момент это socks5-v1.0r8) и socks5tools - скрипт для анализа лог-файлов сервера.
  2. Конфигурируем socks5 сервер. Запустите ./configure - значения по умолчанию вполне разумны, хотя я посоветовал бы сменить syslog facility. По умолчанию socks использует LOG_DAEMON, и как следствие файл /var/log/messages будет забит сообщениями socks. Во избежание этого запустите ./configure --with-syslog-facility=LOG_LOCAL0 и добавьте строчки
    "local0.*  /var/adm/socks5" и
    "*.=info;*.=notice;local0.none   /var/log/messages"
    в /etc/syslog.conf.
    Дальше стандартно - make; make install.
    Если все нормально, создаем файл конфигурации /etc/socks5.conf следующего содержания:
     
    [root@val /etc]# cat socks5.conf
    # A Socks5 Config file for a dual homed server
    #
    # Описание роутинга
    # route hostmask portmask interface
    route 195.9.ххх. - eth0
    #Описание аутентификации - в данном случае требуем со всех логин/пароль
    #auth source-host source-port auth-metod
    auth - - u
    #permit и deny. В данном случае человек с правильным логином/паролем может идти куда #угодно ;) подробней  - man socks5.conf
    #permit  auth cmd src-host dest-host src-port dest-port [user-list]
    permit u - - - - - -
    #Не делать reverse lookup в DNS - процесс заметно ускоряется
    set SOCKS5_NOREVERSEMAP
    #Записывать номера портов вместо имен сервисов. Тоже для ускорения
    set SOCKS5_NOSERVICENAME
    #Не рассылать ident запросы клиентам
    set SOCKS5_NOIDENT
    # Максимальное число детей socks5 - пусть будет больше, зато всем хватит
    set SOCKS5_MAXCHILD 128
    Все, теперь создаем /etc/socks5.passwd  формат прост - в каждой строчке имя и пароль, разделенные пробелом.
    [root@ksaa /etc]# cat socks5.passwd
    user password
    lamer lamepassword
    С сервером все, правим стартовые скрипты для автозапуска после ребута.
  3. Теперь клиент. Выбор не особо богат.
    1. SocksCap от Nec -  www.socks.nec.com  Неплохой клиент под windows3.1, 95, NT. Под NT немного глючит, что раздражает.
    2. AutoSocks от Aventail - www.aventail.com  мне понравился больше всех. Отлично работает под всеми видами форточек. Недостаток один - дают только триальную версию на 1 месяц. Но ведь это-же не проблема, не так-ли? ;))
    3. Hummingbird's SOCKS Client от Hummingbird  Бесплатный, хорошо работающий, но чертовски неудобный. ;)

Способ второй:

Squid - кэширующий прокси сервер. Также позволяет авторизоваться по логину/паролю, но проксит только HTTP,FTP, и Gopher. Также начиная с версии 2.0 включает поддежку ARP acl , т.е. возможность разрешить доступ только станциям с опреденными MAC адресами сетевых адаптеров. Возможность интересная, но не всех устраивающая. IMHO практичней и универсальней использовать username/password аусентификацию. Прикручивается следующим образом:
Запустите ./configure -DUSE_PROXY_AUTH=1, или просто раскоментируйте строчку USE_PROXY_AUTH в Makefile.
Скажите make ; make install . Затем подправьте все необходимое в squid.conf и добавьте туда строчку
proxy_auth /usr/local/squid/etc/passwd
passwd - файл с криптаваными паролями ( crypt() ), такого-же формата как и в Appache.




Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Web - технологии / Сети /

Будущие интернет-каналы могут быть созданы на основе нанотрубок
30-01-2011   

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

... подробнее

Кол. просмотров: общее - 4254 сегодня - 0

Ботнет
15-03-2010   

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

Кол. просмотров: общее - 3175 сегодня - 0

Как работает NAT
15-03-2010   

Если Вы читаете этот документ, то скорее всего вы подсоединены к Интернету, и используете трансляцию сетевых адресов (Network Address Translation, NAT) прямо сейчас! Интернет стал настолько огромным, чем кто-либо мог себе представить... подробнее

Кол. просмотров: общее - 3278 сегодня - 0

Построение безопасных сетей на основе VPN
15-03-2010   

В современных условиях развития информационных технологий, преимущества создания виртуальных частных сетей неоспоримы. Но прежде чем перечислить наиболее очевидные и полезные способы организации виртуальных частных сетей... подробнее

Кол. просмотров: общее - 3525 сегодня - 0

NAS – сетевая система хранения данных
15-03-2010   

NAS (англ. Network Attached Storage) – сетевая система хранения данных. Сетевые хранилища представляют собой внешние жёсткие диски... подробнее

Кол. просмотров: общее - 3076 сегодня - 0



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects