NetworkDoc.Ru В помощь системному администратору

EasyBlog

This is some blog description about this site

  • Home
    Home This is where you can find all the blog posts throughout the site.
  • Categories
    Categories Displays a list of categories from this blog.
  • Tags
    Tags Displays a list of tags that have been used in the blog.
  • Bloggers
    Bloggers Search for your favorite blogger from this site.
  • Team Blogs
    Team Blogs Find your favorite team blogs here.
  • Login
    Login Login form
Хотели когда-нибудь посмотреть на центры обработки данных Google? Теперь это можно сделать через StreetView.

(Первоначальный автор: alexmdv)
Hits: 1240
0

Привет линуксоидам!

Как то давно я нашел одну маленькую но весьма полезную штуку для линукс серверов. Штука называлась iptadmin и представляла собой web-интерфейс по редактированию правил iptables. Она полезна тогда, когда на сервере нет графического интерфейса, а редактировать правила через консоль не так удобно.
image
Спустя год тулза наконец-то обновилась и обзавелась некоторыми нужными фичами. Спасибо автору!

Официальный сайт iptadmin

(Первоначальный автор: alexmdv)
Hits: 3942
0

Posted by on in сисадминство

Бывают же смешные рекламные ролики!


(Первоначальный автор: alexmdv)
Hits: 1177
0
Сегодня мы рассмотрим еще один бесплатный прокси сервер - 3proxy. Не смотря на то, что крайняя версия была выпущена в конце 2009 года, программа примечательна своим широким функционалом. Дистрибутивы доступны как для Windows различной разрядности так и для Linux. 3proxy очень похож на монстра всех прокси серверов squid, однако более легок в конфигурировании и прост в эксплуатации на Windows.
image
Дистрибутив весит каких-то полмегабайта. 3proxy умеет работать с HTTP/HTTPS, FTP over HTTP, SOCKS, можно делать разные правила разрешений и запретов, даже скорость ограничивать персонально для выбранного пользователя. Можно настраивать формат ведения логов, что позволяет в последствии анализировать их сторонними анализаторами. При желании журнал можно вести в базу данных через ODBC. Однако, прокси сервер не умеет кэшировать трафик, что вообщем то уже не так актуально в условиях безлимитных тарифов на интернет.  
3proxy написан русскими разработчиками, снабжен хорошей справкой на русском языке, примером конфигурации и благодаря этим обстоятельствам программу можно смело рекомендовать новичкам.


На официальном сайте 3proxy можно найти не только дистрибутивы, но и ответы на часто задаваемые вопросы, плагины, примеры настройки.

Скачиваем дистриб и распаковываем куда нужно, я это сделал в C:\3proxy. На момент написания обзора крайняя версия была 0.6.1. В каталоге мы увидим три папки и еще всякие файлики. В папке bin хранится сама программа прокси сервера и всякие плагины, в папке cfg хранится пример файла конфигурации и sql скрипт для созадния базы данных, если есть желание хранить журнал в БД. В папке doc справка.

Мы идем в папку bin, там создаем файлик 3proxy.cfg. Открываем его на редактирование, вписываем туда всего три строчки:

auth none

log

proxy


Cохраняем и закрываем. Так выглядит конфиг прокси сервера в минимальном варианте.
image

Первая строка говорит, что авторизация не требуется, строка log - вывод журнала прямо в окно программы, строка proxy без параметров включает сам прокси сервер на стандартном порту 3128. Запускам 3proxy.exe, настраиваем браузер на прокси сервер localhost и порт 3128 и захоим на какой-нибудь сайт.
image

В окне 3proxy сразу увидим много строк, это собственно и есть журнал, который мы включили параметром log.

Если на компьютере с 3proxy одна сетевая карта смотрит в локальную сеть, а другая в интернет, то не лишним будет принудительно указать какая из сетевых карт какая. Это делается так:
internal 192.168.1.2
external 10.10.54.22
Суть следующая: internal - это сетевуха локальной сети и её IP-адрес, а external - внешняя. Если внешний интерфейс не постоянный, т.е. подключение к интернет осуществляется, например, по PPPoE, то надо писать так - external 0.0.0.0

Не лишним будет указать IP-адреса DNS серверов провайдера и кэширование, делает это так:
nserver ip-адрес-dns-сервера-1
nserver ip-адрес-dns-сервера-2
nscache 65536

Если необходимо, можно делать статические DNS-записи, в некоторых случаях это тоже помогает что-нибудь заблокировать:
nsrecord www.porno.com 127.0.0.1

Далее настроим запись лог-файлов. В каталоге 3proxy создайте папку logs, а в конфиге измените строку log на следующее:
log C:\3proxy\logs\3proxy.log D
rotate 30

Здесь мы указываем куда сохранять лог-файлы, каждый день будет создаваться новый файл, а длительность хранения составит 30 дней.


В итоге наш конфигурационный файл будет иметь следующий вид:
image

auth none

log C:\3proxy\logs\3proxy.log D
rotate 30

proxy

internal 192.168.1.2
external 10.10.54.22

nserver ip-адрес-dns-сервера-1
nserver ip-адрес-dns-сервера-2
nscache 65536
nsrecord www.porno.com 127.0.0.1

Теперь рассмотрим способы авторизации. Сейчас у нас доступ в интернет разрешен всем, т.к. указан параметр auth none. Это можно поменять на следующие варианты: пользователей можно определять по IP-адресам их компьютеров, в этом случае в конфиг пишется auth iponly, можно по логину и паролю (которые задаем в файле 3proxy) - в этом случае пишем auth strong, а можно использовать более тесную интеграцию с Windows и разрешать доступ в интернет по признаку принадлежности пользователя к определенной группе в Windows. В последнем случае в конфиге надо написать так:

auth windows

authcache user,pass 900

authcache windows

plugin "WindowsAuthentication.dll" WindowsAuthentication "3ProxyAllowedGroup"

и у параметра прокси добавить -n:

proxy -n

В Windows нужно создать группу 3ProxyAllowedGroup и затем добавлять туда пользователей. Можно поменять название группы на что-нибудь свое, изменив соответствующий параметр выше.

В случае с auth strong логины и пароли задаются в следующем формате:

users user1:CL:password1

Пароли можно задавать и в зашифрованном виде, кому интересно как это делается - велкам в мануал к 3proxy.


Следующий на очереди инструмент ограничения скорости. Синтаксис команды достаточно простой:
bandlimin <bitrate> <userlist> <sourcelist> <targetlist> <targetportlist> <commandlist>

bitrate - скорость в битах

userlist - список пользователей через запятую без пробела, если у вас авторизация auth strong, в противном случае ставится звездочка

sourcelist - если у вас авторизация auth iponly, то тут указывается список IP-адресов через запятую без пробела, в других случаях ставится звездочка

targetlist - IP-адреса назначения через запятую без пробела. если хотим просто ограничить скорость, то можно не заполнять

targetportlist - порты адресов назначения

commandlist - дополнительные команды

Пример правила:

bandlimin 240000 * 192.168.0.2,192.168.0.3

Здесь мы ограничиваем скорость до 24 Кбит/c для двух IP-адресов локальной сети. При этом т.к. IP-адреса перечислены через запятую, то 24 Кбит будет делиться между ними.

Чтобы на какой-то ресурс принудительно снять ограничение скорости существует следующая команда:
nobandlimin <userlist> <sourcelist> <targetlist> <targetportlist> <commandlist>

Теперь мы дошли до самого главного - создание правил доступа. Для этого используются команды allow, deny и flush. Синтаксис имеет следующий вид:
allow <userlist> <sourcelist> <targetlist> <targetportlist> <commandlist> <weekdays> <timeperiodslist>
deny <userlist> <sourcelist> <targetlist> <targetportlist> <commandlist> <weekdays> <timeperiodslist>
flush

Команда flush используется для сброса существующего списка доступа (это необходимо для того, чтобы можно было задать различные списки доступа для различных служб). allow служит для разрешения соединения, deny - для запрета соединения. В момент установки исходящего соединения просматривается список доступа и находится первая запись, соответствующая запрошенному клиентом соединению. Если запись соттветствует allow - соединение разрешается, deny - запрещается. Если список пуст, то соединение разрешается. Если список не пуст, но подходящей записи нет, то соединение запрещается. При этом:

<userlist> - список логинов пользователей через запятую
<sourcelist> - список сетей клиентов через запятую. Сеть задается в формате xxx.yyy.zzz.mmm/l, где l - длина маски сети (количество ненулевых байт). Например, 192.168.1.0/24 соответствует сети с маской 255.255.255.0.
<targetlist> - список сетей назначения через запятую
<targetportlist> - список портов назначения через запятую. можно задать диапазон портов через -, например, 80,1024-65535
<commandlist> - список команд, через запятую, для которых применяется правило:
CONNECT - установить исходящее TCP соединение (например, SOCKSv4/5, POP3 proxy, и т.д.)
BIND - разрешить входящее TCP соединение (SOCKSv5)
UDPASSOC - создать UDP-ассоциацию (SOCKSv5)
ICMPASSOC - создать ICMP-ассоциацию (не реализовано)
HTTP_GET - HTTP GET запрос (HTTP proxy)
HTTP_PUT - HTTP PUT запрос (HTTP proxy)
HTTP_POST - HTTP POST запрос (HTTP proxy)
HTTP_HEAD - HTTP HEAD запрос (HTTP proxy)
HTTP_CONNECT - HTTP CONNECT запрос (HTTP proxy)
HTTP_OTHER - другой HTTP запрос (HTTP proxy)
HTTP - соответствует любому HTTP запросу кроме HTTP_CONNECT (HTTP proxy)
HTTPS - тоже, что HTTP_CONNECT (HTTP proxy)
FTP_GET - FTP get запрос
FTP_PUT - FTP put запрос
FTP_LIST - FTP list запрос
FTP - соответствует любому FTP запросу
ADMIN - доступ к интерфейсу администрирования

<weekdays> задает список дней недели, 1 соответствует понедельнику, 0 или 7 - воскресенье. 1-5 означает с понедельника по пятницу (включительно). 1,3,5 задает нечетные дни недели.
<timeperiodslist> список интервалов дня в формате ЧЧ:ММ:СС-ЧЧ:ММ:СС, например, 00:00:00-08:00:00,17:00:00-24:00:00 задает нерабочее время. Примеры использования листов доступа можно найти в файле 3proxy.cfg.sample в папке cfg.

В завершении обзора еще парочка моментов.

Во-первых, когда вы напишете рабочий конфиг и 3proxy будет запускаться с ним без ошибок, прокси сервер можно установить в качестве службы Windows командой 3proxy.exe --install

При этом в конфигурационном файле добавьте строку service

Во-вторых мы рассмотрели только самые основные возможности прокси сервера. На официальном сайте есть подробная документация на русском языке по настройке большинства аспектов работы 3proxy.

Удачи в освоении!


(Первоначальный автор: alexmdv)
Hits: 32020
0

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

image

Не нужно объяснять никому, что прокси сервер это в первую очередь программа, которая служит для организации централизованного доступа к сайтам в интернете по определенным правилам. Эти правила могут разнообразным образом ограничивать доступ на те или иные сайты для разных пользователей локальной сети. Раз прокси сервер это программа, то и устанавливаться она может на разные платформы. Если грубо обобщить, то бывают прокси сервера для установки под Windows, под Linux и встроенные в программные маршрутизаторы. Программы бывают платными и бесплатными. На страницах Сисадминства мы рассматриваем преимущественно бесплатные (freeware) программы и прокси сервера в том числе.

Операционная система: Windows, Linux, BSD, в т.ч. программные маршрутизаторы


Squid, пожалуй, самый старший прокси сервер их всех. За многие годы он оброс внушительным числом функций. Родная платформа для него Linux, однако, есть версии и под винду. Правда в операционной системе MS прокси работает с некоторыми ограничениями. Поддерживаются такие интересные функции как авторизация через Active Directory, ограничение скорости, белые/черные списки сайтов и пр. Существую дополнительные модули, например, SquidGuard для максимально гибкого управления ограничениями.

Если ставить прокси сервер самостоятельно на любую из платформ, можно создать конфигурационный файл практически любой сложности, который будет учитывать всё что вы хотите. Однако, это потребует некоторой подготовки и времени. Намного проще воспользоваться каким-нибудь программным роутером из коробки, где большинство функций Squid настраивается через удобный web-интерфейс. Единственный недостаток последнего способа - ограниченная гибкость в настройках.

Операционная система: Windows, Linux, BSD

Компактный мультиплатформенный прокси сервер. По функционалу сильно приближен к Squid, но при этом не такой громоздкий. В системе Windows показывает себя в некоторых аспектах даже лучше чем Squid. Из недостатков - 3proxy не умеет работать с Active Directory в полном объеме, не кэширует, т.е. не экономит трафик. Последний пункт не очень актуален во времена безлимитного интернета.

Операционная система: только Windows


Оригинальный прокси сервер, который выделяется среди остальных интересной особенностью фильтровать сайты не по черным/белым спискам, а по рейтингу поисковой базы Google. К сожалению пользователей может разделять только по IP-адресам, список функций несколько скромнее чем у Squid или 3proxy.

Анонимайзеры
Существуют так же и способы обхода прокси серверов. Обобщенно эти штуки называются анонимайзерами. По сути это просто сайты, которые в большинстве своем работают по https протоколу, и которые форвардят через себя нужные пользователю запрещенные сайты. Прокси сервера как правило никак не фильтруют https протокол, но тем не менее способы борьбы с анонимайзерами есть. Можно целенаправленно изменять DNS записи на сайты анонимайзеров, а в случае использования Squid есть еще один интересный способ.


(Первоначальный автор: alexmdv)
Hits: 3613
0
Loading ...

Joomla! Debug Console

Session

Profile Information

Memory Usage

Database Queries