Содержание
- 1 Настройка системного прокси в консоли
- 2 Настройка системного прокси в графическом интерфейсе
- 3 Функции
- 4 Установить TinyProxy
- 5 Настроить веб-браузер
- 6 Конфигурация Tinyproxy
- 7 Разрешить и заблокировать диапазон IP-адресов пользователей
- 8 Авторизация
- 9 Добавление фильтра
- 10 Регулировать TinyProxy с помощью задания Cron
- 11 Вывод
Настройка системного прокси в консоли
Общесистемные настройки прокси
Производится путем добавления настроек в файл — /etc/profile, строки можно добавить в конец файла:
# nano /etc/profile export {http,ftp,https,rsync}_proxy="http://proxyserver:port" export {HTTP,FTP,HTTPS,RSYNC}_PROXY=$http_proxy
Настройки применятся после перезагрузки компьютера.
Если необходимо указать имя пользователя и пароль, то они указываются в таком формате:
MY_PROXY_URL="http://user:password@ServerProxy:8080/"
Yum и прокси
Если вы используете РЕД ОС версии 7.1 или 7.2, достаточно указать в /etc/yum.conf в разделе main данные прокси и данные для аутентификации:
[main] proxy=http://xxx.xxx.xx.x:8080 proxy_username=domainuser proxy_password=password
Dnf и прокси
Если вы используете РЕД ОС версии 7.3 и старше, достаточно указать в /etc/dnf/dnf.conf в разделе main данные прокси и данные для аутентификации:
[main] proxy=http://xxx.xxx.xx.x:8080 proxy_username=domainuser proxy_password=password
Wget и прокси
Открываем конфиг wget:
nano /etc/wgetrc
Добавляем строки:
http_proxy=http://xxx.xxx.xx.xx:8080 https_proxy=http://xxx.xxx.xx.xx:8080 proxy_user=domainuser proxy_passwd=password
Настройка системного прокси в графическом интерфейсе
Настройка в среде рабочего стола MATE Перейдите на вкладку Система > Параметры > Сетевая прокси-служба. В открывшемся окне выберите «Ручная настройка прокси-службы» и введите ip адрес или сетевое имя прокси сервера и его порт. Если у вас настроена автоконфигурация на прокси сервере, выберите пункт «Автоматическая настройка прокси-службы».Настройка в среде рабочего стола Cinnamon Щелкните правой кнопкой мыши на значке сетевого соединения Выберите пункт «Параметры сети», в открывшемся окне выберете «Прокси-сервер» и режим «вручную»
Если вы нашли ошибку, выделите текст и нажмите Ctrl+Enter.
Каждый, из нас выходя на необъятные просторы Интернет, сталкивается с большим количеством ненужного трафика. Помочь с справится этой бедой могут прокси-серверы, благодаря которым можно запросто отсеять рекламу и нежелательный контент, а еще и скрыть информацию об используемом программном обеспечении.
Прокси-сервер Privoxy
Если спросить на одном из тематических форумов, какой из прокси-серверов порекомендуют для использования в Linux, в 99 из 100 случае получаем ответ – squid. Действительно это отличный кэширующий прокси-сервер обладающий многими полезными возможностями. Но на домашнем компьютере все его преимущества практически не заметны, ведь кэширование информации для одного компьютера часто не имеет смысла. Ведь только по забывчивости, можно посещать несколько раз один и тот же ресурс. Обычному пользователю ведь нужно то ничего — отсутствие банеров, защита от всплывающих окон и скрытого html-кода, фильтрация cookies ну и естественно анонимность, ведь браузер на любом веб-ресурсе оставляет след сравнимый с отпечатком пальца. Все это реализуется и с помощью squid, но с настройками в этом случае придется немного повозиться. Зачем? Ведь есть специально обученный прокси-сервер Privoxy (www.privoxy.org), который отлично справляется с большинством поставленных задач даже режиме работы по умолчанию. А если его еще и немножечко подстроить …
Установка Privoxy
Прокси-сервер Privoxy можно найти в репозитариях пакетов многих дистрибутивов Linux, поэтому прежде чем обратиться к шаманству компиляции, советую воспользоваться стандартным способом. В Ubuntu и других дистрибутивах использующих apt вводим:
$ sudo apt-get install privoxy
Вот собственно и все премудрости. Кроме основного пакета в Интернет можно найти патчи к Privoxy, несколько расширяющие его возможности, не всегда в репозитариях доступен именно патченый вариант. В этом случае другого выхода кроме компиляции естественно и нет. Privoxy стартует сразу же после установки в настройках по умолчанию, ожидая соединения на 8118 порту. Его конфигурационные файлы находятся в каталоге /etc/privoxy. Основной файл называется не иначе как config, отдельные настройки (фильтры, действия) производятся в нескольких файлах имеющих расширение action и filter, которые подключаются в config. Кроме того, основные настройки можно произвести через веб-интерфейс, набрав в строке браузера config.privoxy.org (в короткой форме p.p). Но перед этим необходимо настроить веб-браузер так чтобы он выходил в Интернет не напрямую, а через Privoxy. Запускаем Firefox, выбираем в меню “Правка-Настройки” и затем во вкладке “Основные” нажимаем кнопку “Параметры соединения”. В появившемся окне устанавливаем флажок “Настройка прокси вручную”, в полях HTTP-прокси и SSL-прокси вводим адрес localhost и порт 8118. Нажимаем ОК и выходим из настроек. Можно пробовать соединиться с Интернет или обратиться к настройкам Privoxy. Команды ручной остановки или запуска Privoxy стандартные:
$ sudo /etc/init.d/privoxy stop $ sudo /etc/init.d/privoxy start
Да и в каталоге /usr/share/doc/privoxy, теперь полно документации.
Конфигурационный файл config
Главный конфигурационный файл config управляет работой самого Privoxy. Большинство параметров кроме confdir и logdir, являются необязательными, но заглянуть внутрь стоит. Файлы имеют стандартную для Unix структуру. Строка начинается с параметра, за которым следует значение. Строка, начинающаяся со знака #, является комментарием, все идущее за ним игнорируется. Каталог, в котором Privoxy будет искать конфигурационные файлы, если не использован полный путь, указывается в переменной confdir, аналогично журналы работы прокси-сервера будут размещены в logdir. Реакция Privoxy при совпадении правила, описывается в файлах действий, определяемых переменной actionsfile, при этом можно использовать несколько таких файлов, перечисляя их по одному в строке. По умолчанию в списке присутствует три таких файла:
- actionsfile standard # для внутреннего использования, трогать не рекомендуется
- actionsfile default # основной файл настроек, обеспечивает базовую функциональность
- actionsfile user # а сюда можно заносить свои правила
Обратите внимание, что суффикс .action при описании файлов не используется. Подробнее об этих файлах поговорим чуть дальше. Аналогично параметр filterfile описывает файлы с расширением .filter, в этих файлах на основе регулярных выражений описываются модификации информации в обрабатываемых веб-страницах. Фактически любой знак, слово, выражением может быть распознано и при необходимости заменено другим значением. По умолчанию подключен только один файл default.filter. Параметры комментированы и при необходимости лишнее, можно отключить, как впрочем, и добавить свои настройки. Например, таким образом, отбираются Cookies, которые устанавливаются с помощью HTML кода.
s|<meta>||igU
В первой части описано регулярное выражение, если Privoxy найдет его в html-странице, оно будет заменено на слово ZappedCookie. При желании можно создать такой файл самому и экспериментировать с настройками. Кстати самому можно ничего не выдумывать, а взять готовые установки с русского ресурса поддержки Privoxy (privoxy.org.ru). В архиве есть файл user.filter, помещаем его в /etc/privoxy и подключаем параметром:
filterfile user.filter
Регулярные выражения находящиеся внутри позволяют блокировать графику, удалять изображения, скрипты и скрытые Frame теги. Фильтры затем используются в файлах action для дополнительного описания контента, к которому необходимо применить действие. Кстати перехваченные Cookies не удаляются, а сохраняются в файле, на который указывает переменная jarfile, со временем этот файл может вырасти до огромных размеров. Следующим по списку идет закомментированный параметр trustfile. С помощью его можно подключить файл с описаниями “белого” списка ресурсов разрешенных для посещения. В таком файле сайты могут быть записаны в двух формах. Если перед именем стоит знак тильды “~”, это означает, что все сайт принадлежащие этому домену являются доверенными, все внешние ссылки блокируются:
~ www.example.com
debug 1 # вывод каждого GET/POST/CONNECT запроса debug 4096 # предупреждения и запуск процесса debug 8192 # Ошибки
Есть и другие варианты, после окончательной настройки можно оставить только вывод сообщений с кодом 8192. По умолчанию Privoxy разрешает подключение только с локальной машины, но с его помощью можно легко настроит совместный доступ в сеть. Заменяем IP-адрес в инструкции:
listen-address 127.0.0.1:8118
На адрес сетевого интерфейса компьютера. Например, если адрес 192.168.1.58, то строка будет выглядеть так:
listen-address 192.168.1.58:8118
При необходимости можно использовать и другой порт. Но теперь чтобы через Privoxy не могли выйти в сеть, все кому попало, используя параметры permit-access и deny-access, указываем соответственно кому можно, а кому нельзя соединяться с Privoxy:
permit-access 192.168.1.0/24 deny-access 192.168.1.2 192.168.1.3 www.vasja.com
Чтобы быть в курсе всех событий, желательно активировать параметр admin-address, указав свой адрес электронной почты, на который будут приходить сообщения Privoxy. И наконец еще одна полезность Privoxy – возможность перенаправлять пользователей на другой прокси-сервер. Это может быть как обычный (анонимный) так и SOCKS прокси. Для этого идем в самый конец файла и вписываем примерно такую строку, проставляя адрес любимого прокси-сервера, можно, кстати, вписывать сразу несколько прокси-серверов через пробел, тогда будет произведена попытка соединения с каждым. При необходимости ресурсы, при посещении которых используется или наоборот не используется внешний прокси конкретизируются. Точка означает отсутствие перенаправления, а / — все URL. Например, разрешим использование прокси при посещении обычных сайтов, и отключим для ресурсов работающих через SSL и для сайта provider.com:
forward / normandintransit.com:80 pandora.teimes.gr:8080 forward . provider.com . forward :443 .
Это не все параметры, которые можно изменить в файле config, но пора идти дальше.
Сокрытие информации с помощью Privoxy
+crunch-incoming-cookies +crunch-outgoing-cookies
Можно использовать псевдонимы:
+crunch-all-cookies = +crunch-incoming-cookies +crunch-outgoing-cookies
Кроме того, за параметром в скобках может быть указано уточняющее значение. Некоторые сайты требуют обязательного использования Cookies, тогда вместо этих параметров следует использовать session-cookies-only. В этом случае Cookies будут приниматься, и помечаться как временные, поэтому отслеживать серфинг с их помощью будет невозможно. Дополнительно можно активировать send-vanilla-wafer, в этом случае на все запросы будет передаваться некий стандартный cookies. Параметр hide-forwarded-for-headers блокирует передачу заголовка X-Forwarded-for, который выдает использование прокси. Аналогично активация hide-referrer позволит скрыть адрес раннее посещенного ресурса, передаваемого посредством referrer. Включение hide-from-header блокирует передачу адреса электронной почты, характерное поведение для некоторых старых версий веб-браузеров. И, наконец, еще одна полезная возможность – сокрытие используемого веб-браузера. Для этого включаем hide-user-agent, в появившейся строке User Agent string to send, можно заменить значение Privoxy/3.0 (Anonymous), которым будет подменяться название и версия вашего веб-браузера на любое понравившееся значение (Internet Explorer 8.0 будет в самый раз). По окончании настроек нажимаем Submit, сохраняем результат. Теперь можно зайти на сайт вроде ipid.shat.net и посмотреть результат. Но выходить из окна настроек еще рано.
Блокируем контент
Как уже говорилось с помощью Privoxy можно заблокировать загрузку изображений, всплывающих окон и прочих украшений нагружающих канал. Займемся обрезанием. Чтобы остановить GIF анимацию на первом или последнем фрейме, включаем deanimate-gifs. Можно Активация handle-as-image позволит подменять изображения вместо скачаных с Интернета, файлом указанным в set-image-blocker. В последнем случае можно конкретизировать, чем собственно заменять: использовать 1х1 GIF файл, или заранее подготовленный рисунок. Для блокировки всплывающих окон включаем kill-popups. Также включаем filter {banners-by-size}, filter {shockwave-flash} и filter {quicktime-kioskmode} и возможно другие filter. Это общие настройки, которые удобно производить с помощью веб-интерфейса. В файле default.action они описываются следующей конструкцией:
# Defaults { -add-header -block -crunch-outgoing-cookies -crunch-incoming-cookies +deanimate-gifs{last} …… +session-cookies-only +set-image-blocker{pattern} } / # все URL
Для более тонкой работы Privoxy лучше использовать прямое редактирование action файлов. Тогда получаем возможность, указать конкретное поведение прокси вплоть до каждого ресурса. Формат записи следующий, вначале идут параметры в фигурных скобках, за которыми следует список ресурсов, к которым они будут применены. Например, разрешим Google использовать только временные cookie, тогда любой севший за компьютер не сможет, воспользовавшись историей получить доступ к почте или параметрам поиска. Пишем так.
{ -crunch-outgoing-cookies -crunch-incoming-cookies +session-cookies-only } .google.com
В фигурных скобках можно задействовать весь арсенал filter файлов, в которых названия фильтров следует за ключевым словом FILTER:
FILTER: banners-by-size
Плагин к Firefox SwitchProxy
Тому, кому часто приходится менять режим работы с прокси-серверами, вероятно по вкусу придется плагин ко всем Mozilla — SwitchProxy (mozmonkey.com/packages/switchproxy). Правда с его установкой может возникнуть маленькая проблема. Дело в том, что этот плагин давно не развивался, последняя версия совместима с Firefox до версии 1.5. Между тем на рынке уже доступна вторая версия этого браузера, в которой плагин устанавливаться откажется. Но это легко подправить. Открываем файл switchproxy.xpi в любом архиваторе и в файле install.rdf меняем параметр maxVersion цифру 1.5 на 2.х и сохраняем результат. Не которые плагины после этого все равно не работают, но SwitchProxy это не касается. После установки заходим в Tools-SwitchProxy-Manage Proxies. В появившемся окне нажимаем Add для создания нового соединения. SwitchProxy позволяет настроить соединения к двум типам прокси: Standart (обычному) и Anonymous. После ввода настроек и сохранения результата для смены прокси выбираем в выпадающем списке Proxy, имя прокси и нажимаем Apply.
Конкуренты Privoxy
Естественно Privoxy не единственный доступный вариант. Например, MiddleMan (middle-man.sf.net) позволяет не только обрабатывать запросы, фильтруя контент, но и производит эффективное кэширование, причем не только http, но и ftp. Для настройки параметров работы пользователю также предложен веб-интерфейс. Хотя стоит отметить, что он менее удобен, чем у Privoxy и вероятно потребуется некоторое время на его освоение. Но зато функциональность. Здесь Privoxy явно проигрывает. Другим конкурентом по части фильтрации трафика называют DansGuardian (www.DansGuardian.org), который может обставить всех по количеству методов фильтрации: по ссылке, IP-адресу, домену и пользователю, содержимому, расширению файлов, метке PICS (Platform for Internet Content Selection — www.w3.org/PICS) и типу MIME. Дополнительно POST контроль позволяет ограничивать или вообще блокировать загрузку. Может работать в режиме белого списка, когда блокируются все сайты кроме занесенных в этот список. Его функциональность легко может быть расширена с помощью многочисленных логинов, среди которых есть антивирус, анализаторы журналов, шаблоны страниц и рисунков, blacklist и скрипты для их автоматического обновления.
Tinyproxy — это прокси HTTP/HTTPS. Это легкий, быстрый, очень простой в настройке прокси-сервис с открытым исходным кодом. Tinyproxy также можно настроить как обратный прокси. Его удобно использовать в качестве небольшого прокси с меньшим количеством системных ресурсов, потому что он очень легкий.
Функции
- Tinyproxy легко настроить и изменить.
- Небольшой объем памяти означает, что она занимает очень мало места в операционных системах. Его объем памяти составляет почти 2 МБ.
- Анонимный режим позволяет авторизовать отдельные HTTP-заголовки, которые должны быть разрешены, а какие — нет.
- Контроль доступа путем блокировки неавторизованного пользователя.
- Фильтрация позволяет пользователю заблокировать или разрешить определенный домен, создав черный список и белый список.
- Функции конфиденциальности контролируют как входящие, так и исходящие данные с серверов HTTPS / HTTP.
Установить TinyProxy
Обновите системные пакеты, введя следующую команду.
ubuntu@ubuntu:~$ sudo apt-get update ubuntu@ubuntu:~$ sudo apt-get upgrade -y
После завершения обновления установите Tinyproxy, введя эту команду.
ubuntu@ubuntu:~$ sudo apt-get -y install tinyproxy
Tinyproxy будет установлен. Чтобы запустить и проверить статус Tinyproxy, введите эти команды.
ubuntu@ubuntu:~$ sudo systemctl tinyproxy start ubuntu@ubuntu:~$ sudo systemctl tinyproxy status
Настроить веб-браузер
Чтобы ваш Tinyproxy работал, вам нужно изменить некоторые настройки в своем веб-браузере. Для этого зайдите в настройки сети своего веб-браузера и нажмите ручную настройку прокси-сервера, а в строке прокси-сервера HTTP введите свой общедоступный IP_Address, на котором вы хотите запустить Tinyproxy. И номер порта (по умолчанию номер порта tinyproxy — 8888).
Вы также можете использовать foxyproxy для настройки своего веб-браузера. Это инструмент управления прокси, который намного лучше, чем ограниченные возможности настройки прокси Firefox. Это расширение для веб-браузеров Firefox и Chrome, которое можно загрузить из их магазинов.
Конфигурация Tinyproxy
Файл конфигурации Tinyproxy находится по следующему пути «etc / tinyproxy / tinyproxy.conf».
Чтобы получить к нему доступ, введите следующую команду.
ubuntu@ubuntu:~$ cd etc/tinyproxy/tinyproxy.conf
Чтобы внести изменения в файл конфигурации Tinyproxy, откройте его с помощью vim.
ubuntu@ubuntu:~$ sudo vim etc/tinyproxy/tinyproxy.conf
Перейдите в строку Разрешить 127.0.0.1 и замените ее своим общедоступным IP-адресом.
Теперь перейдите к строке #Listen 192.168.0.1. Закомментируйте эту строку и напишите в ней свой IP_Address.
Разрешить и заблокировать диапазон IP-адресов пользователей
Tinyproxy позволяет вам добавлять или блокировать IP-адрес пользователя или диапазон IP-адресов от использования tinyproxy. Чтобы разрешить или заблокировать IP-адрес пользователя, перейдите в строку Allow 127.0.0.1 и ниже этой строки добавьте IP-адреса, которые вы хотите разрешить [IP_Address]. Чтобы разрешить диапазон IP-адресов чуть ниже строки Разрешить 192.168.0.0, добавьте строку
Allow [IP_Address/range]
Чтобы заблокировать IP-адрес пользователя или диапазон IP-адресов, просто закомментируйте IP_Address, который вы хотите заблокировать. В tinyproxy по умолчанию все IP-адреса заблокированы.
Авторизация
В tinyproxy вы можете настроить авторизацию так, чтобы только авторизованные пользователи могли получить доступ к tinyproxy. Для настройки учетных данных для авторизации перейдите в строку #BasicAuth пароль пользователя. Раскомментируйте эту строку и напишите свой пароль в конце этой строки.
BasicAuth user password [Your Password]
Добавление фильтра
Вы также можете добавить фильтр трафика, блокируя веб-сайты с помощью tinyproxy. Следуйте инструкциям по добавлению фильтров трафика.
Перейдите в строку Фильтр «/etc/tinyproxy/filter». Закомментируйте эту строку. Вы можете установить фильтр по URL или доменам. Также ниже этой строки закомментируйте другую строку: «FilterExtanded On» . И «FilterDefaultDeny Yes».
Сохраните изменения и добавьте домены сайтов, которые хотите заблокировать, в файле фильтра. Вы можете получить доступ к файлу фильтра по пути «/ etc / tinyproxy / filter» . Так что откройте его с помощью vim.
ununtu@ubuntu:~$ sudo vim etc/tinyproxy/filter
Добавляйте домены построчно. Вы можете добавить любое количество доменов, которое хотите заблокировать.
Каждый раз, когда вы вносите какие-либо изменения в список фильтров или файл конфигурации tinyproxy, вы должны перезапустить службу tinyproxy. Для перезапуска службы tinyproxy введите команду.
ubuntu@ubuntu:~$ service tinyproxy restart
Теперь разрешите брандмауэр, набрав команду.
ubuntu@ubuntu:~$ sudo iptables -A INPUT -j ACCEPT -m comment --comment “tinyproxy” -s 192.163.28.73/24 -p tcp --dport 8888
Регулировать TinyProxy с помощью задания Cron
Если вы хотите запланировать время для своего tinyproxy, например, когда вы хотите запустить, перезапустите или остановите tinyproxy. Вы можете сделать это с помощью специальной функции Linux cron job. Он следует этому шаблону time (минута, час, день месяца, месяц, день недели) path. Чтобы отредактировать задание cron, введите команду crontab -e
.
Чтобы запланировать время запуска tinyproxy, введите следующие команды.
0 6 * * * etc/init.d/tinyproxy start
Чтобы запланировать время остановки tinyproxy, введите следующие команды.
0 23 * * * etc/init.d/tinyproxy stop
Это означает, что служба tinyproxy будет автоматически запускаться в 6 утра и заканчиваться в 23 часа каждый день.
Вывод
Tinyproxy — полезный и простой инструмент для настройки прокси HTTP/HTTPS. Это для небольших серверов, но если вы хотите, чтобы прокси-сервер работал для больших сетей, вам может потребоваться прокси-сервер squid. Здесь мы поделились лишь некоторыми советами, но они достаточно хороши. Используя это простое руководство по установке, настройке и использованию tinyproxy, вы сможете настроить свой tinyproxy.
Используемые источники:
- https://redos.red-soft.ru/base/arm/arm-network/proxy-client/
- https://www.tux.in.ua/articles/103
- https://ip-calculator.ru/blog/ask/tinyproxy-chto-eto-i-kak-nastroit/