The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Конфигурирование Socks5 (proxy socks)


<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>
Ключевые слова: proxy, socks,  (найти похожие документы)
From: Денис Колисниченко <http://dkws.narod.ru/>; Date: Wed, 2 Aug 2007 18:21:07 +0000 (UTC) Subject: Конфигурирование Socks5 Оригинал: http://dkws.narod.ru/linux/servers/socks5.html Конфигурирование Socks5 В статье рассмотрена базовая настройка прокси-сервера socks5, а также клиента licq для работы с этим сервером. После прочтения этой статьи я все-таки рекомендую вам прочитать документацию по socks5 (man socks5.conf и man libsocks5.conf). В статье я не буду останавливаться на таких вопросах как "Что такое socks5?", так как они довольно подробно рассмотрены на сайте [2]www.socks.nec.com. Если же вас все же интересуют подобные вопросы, рекомендую прочитать дополнительную информацию. Установка socks5 Прежде всего, нужно загрузить последнюю версию прокси-сервера (http://www.socks.nec.com) - на данный момент это v1.0 release 11. То есть вам нужно выкачать файл socks5-v1.0r11. Желательно также скачать socks5tools - в нем находится сценарий для обработки протоколов сервера. После распаковки выполните привычную последовательность команд: ./configure make make install При корректной сборке в каталоге /etc будет создан файл socks5.conf, в котором и содержатся все настройки сервера. Настройка socks5 В большинстве случаев параметры по умолчанию являются вполне приемлемыми. Сейчас рассмотрим пример конфигурационного файла, а потом разберемся, что все это означает: Листинг 1. Файл /etc/socks5.conf 1. set SOCKS5_NOREVERSEMAP 2. set SOCKS5_NOSERVICENAME 3. set SOCKS5_NOIDENT 4. set SOCKS5_MAXCHILD 128 5. set SOCKS5_TIMEOUT 10 6. auth - - u 7. permit u - - - - - - 8. interface 192.168.0. - eth0 В первой строке мы отменяем обратный резолвинг адресов, благодаря чему сервер будет работать заметно быстрее . Вторая строка означает, что мы будем протоколировать номера портов вместо имен сервисов. Теоретически это тоже должно повысить эффективность работы сервера. Параметр SOCKS5_NOIDENT запрещает рассылку клиентам ident-запросов. Четвертая строка устанавливает максимально допустимое число потомков сервера - не жадничайте. Пятая строка, как вы уже успели догадаться, устанавливает тайм-аут (10 секунд). Практически вся настройка сервера выполняется с помощью манипулирования командами auth и permit. Первая устанавливает тип аутентификация, а вторая - разрешает доступ определенным хостам/пользователям. Полный формат команды auth такой: auth source-host source-port auth-method В данном случае мы будем запрашивать пароль со всех пользователей (точнее, клиентов). Формат команды permit: permit auth cmd src-host dest-host src-port dest-port [user-list] В примере я разрешаю доступ всем и отовсюду с использованием аутентификации. Если вас интересует более расширенный пример использования команды permit, который демонстрирует всю гибкость этого прокси-сервера, обратите внимание на этот: permit u cpubt 192.168. - - [100,1000] user В данном случае мы разрешаем доступ пользователю user (с использованием пароля, конечно). Пользователь user имеет право использовать Connect, Ping, Udp, Bind и Traceroute с адресов 192.168.*.*. Диапазон входящих (первый "-") и входящих (второй "-") портов - 100..1000. Директива interface (листинг 1, строка 8) разрешает все соединения от компьютеров с адресами 192.168.0.* (наша внутрення сеть) ко всем портам на интерфейса eth0. Кроме команды permit существует противоположная ей команда deny с аналогичными параметрами. Все! Мы уже настроили наш сервер. Осталось его запустить: # /usr/local/bin/socks5 -f -s При этом демон должен перейти в фоновый режим и выводить диагностические сообщения на стандартный вывод (в нашем случае это экран) Если сервер сконфигурирован правильно, вы должны увидеть примерно следующее: 11410: Socks5 starting at Mon Mar 4 19:13:55 2002 in normal mode После удачного запуска остановим сервер и добавим его в скрипты автозагрузки системы: killall socks5 Чуть не забыл! Создайте файл /etc/socks5.passwd - в нем содержатся имена пользователей и их пароли. Например, user 123456 resu 654321 Настройка licq Клиент licq настраивается предельно просто. После настройки и запуска сервера socks5 нужно пересобрать licq с поддержкой socks5. Для этого запустите скрипт configure с параметром --enable-socks5 ./configure --enable-socks5 После этого выполните привычные команды: make; make install Теперь нужно создать файл /etc/libsocks5.conf и добавить в него строку: socks5 - - - - 192.168.0.1:port 192.168.0.1 - это адрес нашего socks5-сервера, port - порт, необходимый клиенту. Альтернативные серверы socks5 В качестве альтернативы серверу socks5 вы можете использовать [9]dante-socks. Данный сервер использует файл конфигурации sockd.conf. Листинг 2. Файл /etc/sockd.conf 1. internal: 192.168.0.1 port = 1080 2. external: 111.111.111.111 3. client pass { 4. from: 192.168.0.0/16 to: 0.0.0.0/0 5. } 6. pass { 7. from: 0.0.0.0/0 to: 192.168.0.0/16 8. command: bindreply udpreply 9. log: connect error 10. } Параметр internal определяет наш внутренний интерфейс (точнее, внутренний IP-адрес), а external - наш настоящий IP (111.111.111.111.111). В блоке client pass указываются возможные клиенты нашего сервера (сеть 192.168.0.0), а в блоке pass указываются имена узлов, которые могут "общаться" с нашими клиентами. В данном случае мы разрешаем отвечать клиентам всем узлам (0.0.0.0). Протоколировать мы будем только ошибки соединения. Дополнительная информация Что такое socks? http://www.socks.nec.com/aboutsocks.html Описание socks5 http://www.socks.nec.com/socksv5.html FAQ socks5 http://www.socks.nec.com/socksfaq.html Загрузить socks5 http://www.socks.nec.com/cgi-bin/download.pl References 1. http://dkws.narod.ru/ 2. http://www.socks.nec.com/

<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>

Обсуждение [ RSS ]
  • 1, Flower (?), 14:14, 29/11/2011 [ответить]  
  • +/
    Здравствуйте!
    Подскажите, как пробросить 22 порт на soks proxy, чтобы из внешней сети был доступ по SSH к серверу в  LANе?
    Спасибо!
     
  • 2, John (??), 17:01, 22/12/2011 [ответить]  
  • +/
    Вы указали что При корректной сборке в каталоге /etc будет создан файл socks5.conf
    А что делать если он не создается?
     
     
  • 3, Andrey Mitrofanov (?), 17:25, 22/12/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Вы указали что При корректной сборке в каталоге /etc будет создан файл socks5.conf
    > А что делать если он не создается?

    Неужели искать ошибки в одном из трёх,

    >>           ./configure
    >>           make
    >>           make install

    ?!

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2021 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру