SOCKS proxy сервер Cпецификация Требуемые пакеты: system Требуемый уровень лицензии: Level1 Уровень подменю: /ip socks Стандарты и технологии: SOCKS version 4 Аппаратное обеспечение: не принципиально Сопровождающие документы Web Proxy NAT Описание SOCKS - это прокси сервер который позволяет проходить данным TCP приложений в обход межсетевого экрана, даже если экр ан блокирует пакеты. SOCKS протокол реализован поверх протоколов приложений, таким образом он может быть использован многими службами, такими как WWW, FTP, TELET и др. Во первых, клиентское приложение подключается к SOKS прокси серверу, затем сервер просматривает свой список доступа разрешен ли доступ клиента к удаленному серверу, если разрешен прокси сервер пересылает пакет серверу приложений и создает соединение между сервером приложений и клиентом. Примечание Запомните для конфигурирования вашего клиентс кого приложения используйте SOCKS версии 4. Вам необходимо защитить SOCKS прокси используя список доступа и/или межсетевой экран для закрытия доступа из вне. Прорыв безопасности прокси сервера может плохо отразится на безопасности вашей сети, и возможно пр едоставит услугу для спамеров для посылки почтовых сообщений через маршрутизатор. Дополнительно Конфигурация SOCKS В данной секции будет рассказано, как включать SOCKS прокси и конфигурировать его. Описание свойств connection-idle-timeout (time; default: 2m) - время по истечении, которого сбрасываются idle соединения. enabled (yes | no; default: no) - включить или нет SOCKS прокси max-connections (integer: 1..500; default: 200) - максимальное количество одновременных соединений port (integer: 1..65535; default: 1080) - TCP порт на котором SOCKS сервер слушает запросы. Пример Для включения SOCKS выполните следующее: [admin@MikroTik] ip socks> set enabled=yes [admin@MikroTik] ip socks> print enabled: yes port: 1080 connection-idle-timeout: 2m max-connections: 200 [admin@MikroTik] ip socks> Список доступа Уровень подменю: /ip socks access Описание В списке доступа SOCKS вы можете добавлять правила, которые будут контролировать доступ к SOCKS серверу. Этот список подобен спискам межсетевого экрана. Cвойство описания action (allow | deny; default: allow) - действие, которое будет выполняться в этом правиле allow - принять пакеты, соответствующие этому правилу и будут отправлены для дальнейшей обработки deny - запретить доступ для пакетов, соответствующих этому правилу dst-address (IP address/netmask:port) - адрес назначения src-address (IP address/netmask:port) - адрес назначения Активные соединения Уровень подменю: /ip socks connections Описание Список активных соединений показывает все стабильные TCP соединения, проходящие через SOCKS сервер. Описание свойств dst-address (read-only: IP address) - IP адрес назначения(сервера приложений) RX (read-only: integer) - получено байт src-address (read-only: IP address) - IP адрес источника(клиентское приложение) TX (read-only: integer) - отправлено байт Примеры Для просмотра текущих TCP соединений выполните следующее: [admin@MikroTik] ip socks connections > print # SRC-ADDRESS DST-ADDRESS 0 192.168.0.2:3242 159.148.147.196:80 1 192.168.0.2:3243 159.148.147.196:80 2 192.168.0.2:3246 159.148.95.16:80 3 192.168.0.2:3248 194.8.18.26:80 4 192.168.0.2:3249 159.148.95.16:80 5 192.168.0.2:3250 159.148.95.16:80 6 192.168.0.2:3251 159.148.95.16:80 7 192.168.0.2:3258 80.91.34.241:80 8 192.168.0.2:3259 80.91.34.241:80 9 192.168.0.2:3260 80.91.34.241:80 10 192.168.0.2:3261 80.91.34.241:80 11 192.168.0.2:3262 80.91.34.241:80 [admin@MikroTik] ip socks connections > TX 4847 3408 10172 474 6477 4137 1712 314 934 930 312 312 RX 2880 2127 25207 1629 18695 27568 14296 208 524 524 158 158 Служба FTP через SOCKS сервер Предположим что у вас есть сеть 192.168.0.0/24 которая замаскарадина с внешним IP 10.1.0.104/24 и внутренним IP 192.168.0.1/24. Где-нибудь в сети есть FTP сервер с IP адресом 10.5.8.8. Мы хотим разрешить доступ к этому FTP серверу для клиента из нашей локальной сети с адресом 192.168.0.2/24. Для начала проверим, установлены ли правила NAT(MASQUERADE) для нашей локальной сети: [admin@MikroTik] ip firewall nat> print Flags: X - disabled, I - invalid, D - dynamic 0 chain=srcnat src-address=192.168.0.0/24 action=masquerade [admin@MikroTik] ip firewall nat> Также необходимо проверить закрыт ли доступ к FTP 10.5.8.8: [admin@MikroTik] ip firewall filter > print Flags: X - disabled, I - invalid, D - dynamic 0 chain=forward src-address=192.168.0.0/24 dst-address=:21 action=drop [admin@MikroTik] ip firewall filter > Далее включаем SOCKS сервер: [admin@MikroTik] ip socks> set enabled=yes [admin@MikroTik] ip socks> print enabled: yes port: 1080 connection-idle-timeout: 2m max-connections: 200 [admin@MikroTik] ip socks> Добавляем в список доступа доступ для клиента с IP адресом 192.168.0.2/32, разрешая для него передачу данных от FTP сервера к нему(разрешаем также хождение пакетов с 1024 по 65535 порты для других IP адресов) и сбрасываем все остальные. [admin@MikroTik] ip socks access> add src-address=192.168.0.2/32 dst- address=:21 action=allow [admin@MikroTik] ip socks access> add dst-address=:1024-65535 action=allow [admin@MikroTik] ip socks access> add action=deny [admin@MikroTik] ip socks access> print Flags: X - disabled 0 src-address=192.168.0.2/32 dst-address=:21 action=allow 1 dst-address=:1024-65535 action=allow 2 action=deny [admin@MikroTik] ip socks access> На этом конфигурирование SOCKS сервера для поставленной задачи можно считать законченной. Для просмотра активных соединений и переданных данных выполните следующее: [admin@MikroTik] ip socks connections > print # SRC-ADDRESS DST-ADDRESS 0 192.168.0.2:1238 10.5.8.8:21 1 192.168.0.2:1258 10.5.8.8:3423 [admin@MikroTik] ip socks connections > TX 1163 0 RX 4625 3231744 Примечание! В случае использования SOCKS прокси сервера вам необходимо определить IP адрес и порт FTP клиента вашего маршрутизатора. В выше описанном случае IP адрес 192.168.0.1 (внутренний адрес маршрутизатор/SOCK) и порт 1080.