Как сделать прокси сервер linux
В этой статье мы расскажем, как настроить прокси на Linux, а также про команды для подключения прокси в данной операционной системе.
Прокси – универсальное решение для получения доступа к удалённым ресурсам, заблокированным в вашей стране, регионе. Также они позволяют скрыть реальный IP, если пользователь не желает раскрывать личность владельцам сайта. Среди многочисленных решений наиболее быстрыми, удобными и безопасными считаются линуксовые сервера.
Но даже люди, неплохо разбирающиеся в Unix-базирующихся ОС, не всегда знают все тонкости настройки прокси-сервера в Linux, и часто допускают ошибки. Результат всегда один – отсутствие доступа в сеть.
Вариантов у пользователя два:
- Ручной, через службу;
- Через файл конфигурации.
В первом случае нужно зайти в раздел системных параметров, выбрать там сеть и пункт для доступа к сетевой службе прокси. Выберите ручной метод, поменяйте конфигурацию на желаемую. Минус в том, что сделать это невозможно в случаях, когда доступ к серверу возможен только при авторизации (логин,пароль).
Если вы оказались в подобной ситуации, настройка прокси для Линукс осуществляется через изменение файлов конфигурации. Делать это нужно с рут-правами.
Изменения применятся после перезагрузки. Учтите также, что некоторые приложения не работают с глобальными настройками. Их придётся настраивать индивидуально. Действия для Debian и Ubuntu требуются одинаковые.
Команды для подключения прокси в Линукс
Всё, что вам потребуется, хранится в DConf – базе конфигураций. Записи хранятся в простом формате, состоя из ключа и его значения. Работать с ними можно из dconf-редакторов, имеющих удобный интерфейс либо из консоли.
Для автонастройки применяются:
Как проверить proxy на работоспособность
Что делать дальше? Необходимо убедиться, что всё работает правильно. Для того чтобы проверить прокси на работоспособность, необходимо ввести в консоли строку формата curl - proxy "user:[email protected]:port". Работает она для всех дистрибутивов. Даже в Мас и Windows функционал поддерживается. Такая веб-утилита позволит вам быстро выяснить, всё ли корректно запущено.
How to Install and Configure Squid Proxy on Debian 10 Linux
В этом руководстве мы объясним, как настроить прокси-сервер Squid на Debian Buster. Мы также покажем вам, как настроить браузеры Firefox и Google Chrome для его использования.
Установка Squid на Debian
Пакет Squid входит в стандартную комплектацию репозиториев Debian 10. Для установки Squid выполните следующие команды от имени пользователя sudo :
После завершения установки служба Squid запустится автоматически.
Убедитесь, что установка прошла успешно и служба Squid запущена, проверив состояние службы Squid:
Настройка Squid
squid.conf Конфигурационный файл включает в себя комментарии , описывающие то , что делает каждый параметр конфигурации.
Перед внесением каких-либо изменений всегда рекомендуется создать резервную копию исходного файла:
Чтобы изменить конфигурацию, откройте файл в текстовом редакторе :
По умолчанию Squid прослушивает порт 3128 на всех сетевых интерфейсах.
Запуск Squid на всех интерфейсах и на порту по умолчанию должен подойти большинству пользователей.
Списки контроля доступа (ACL) позволяют контролировать, как клиенты могут получать доступ к веб-ресурсам. По умолчанию Squid разрешает доступ только с локального хоста.
Если все клиенты, которые будут использовать прокси, имеют статический IP-адрес, самым простым вариантом является создание ACL, который будет включать разрешенные IP-адреса.
Вместо добавления IP-адресов в основной файл конфигурации мы создадим новый включаемый файл, в котором будут храниться IP-адреса:
Каждый раз, когда вы вносите изменения в файл конфигурации, вам необходимо перезапустить службу Squid, чтобы изменения вступили в силу:
Squid аутентификация
Мы воспользуемся openssl утилитой для генерации паролей и добавим username:password пару в /etc/squid/htpasswd файл с помощью tee команды, как показано ниже:
Первые три выделенные строки создают новый ACL с именем, authenticated а последняя выделенная строка разрешает доступ аутентифицированным пользователям.
Перезапустите сервис Squid:
Настройка межсетевого экрана
Пользователи UFW могут открыть порт 3128 , включив профиль Squid:
Если вы используете nftables для фильтрации подключений к вашей системе, откройте необходимые порты, выполнив следующую команду:
Если Squid работает на другом порту, отличном от порта по умолчанию, вам необходимо разрешить трафик на этом порту.
Настройка вашего браузера для использования прокси
В этом разделе хорошо показано, как настроить ваш браузер для использования прокси-сервера Squid.
Fire Fox
Приведенные ниже шаги одинаковы для Windows, macOS и Linux.
В правом верхнем углу щелкните значок гамбургера, ☰ чтобы открыть меню Firefox:
Щелкните ⚙ Preferences ссылку.
Прокрутите вниз до Network Settings раздела и нажмите Settings. кнопку.
Откроется новое окно.
Чтобы вернуться к настройкам по умолчанию, перейдите к Network Settings , выберите Use system proxy settings переключатель и сохраните настройки.
Есть также несколько плагинов, которые могут помочь вам настроить параметры прокси-сервера Firefox, например FoxyProxy .
Google Chrome
Google Chrome использует системные настройки прокси по умолчанию. Вместо изменения настроек прокси-сервера операционной системы вы можете использовать надстройку, например SwitchyOmega, или запустить браузер Chrome из командной строки.
Чтобы запустить Chrome с новым профилем и подключиться к серверу Squid, используйте следующую команду:
Linux:
macOS:
Windows:
Если профиль не существует, он будет создан автоматически. Таким образом, вы можете запускать несколько экземпляров Chrome одновременно.
Заключение
Мы рассмотрели основы того, как установить Squid на Debian 10 и настроить ваш браузер для его использования.
Squid - один из самых популярных кэширующих прокси-серверов. Это увеличивает скорость веб-сервера и может помочь вам ограничить доступ пользователей к Интернету.
В этой статье поговорим о том, как можно настроить прокси в системе Linux через терминал.
Практически все утилиты командной строки, такие как curl, ssh, ftp и прочие, используют данные переменные.
Рассмотрим настройку переменных для использования прокси
Используйте следующий синтаксис, если прокси-сервер требует аутентификацию:
Если Ваш пароль содержит спец. символы, Вы должны заменить их на ASCII коды.
Настроить прокси на системном уровне можно и через конфигурационные файлы (True UNIX-way). Для этого нужно открыть на редактирования с правами root файл /etc/environment
В конец файла добавим строки:
Если прокси без авторизации, то строки должны быть вида:
Для применения настроек придется перезагрузит систему, изменения в файле /etc/environment вступили в силу при запуске процесса init — родителя всех процессов в системе и именно от него все дочерние процессы унаследуют настройки прокси в переменных окружения.
Тестирование работы
Используйте следующую команду для проверки текущих переменных прокси:
Можно проверить работу прокси, узнав ваш внешний IP адрес из командной строки:
Отключение
Используйте следующие команды для отключения прокси:
Упрощенное использование прокси
Если Вам приходится очень часто пользоваться прокси, Вы можете создать следующие bash функции (добавьте в Ваш ~/.bashrc) :
Примените настройки, перезагрузив ~/.bashrc.
Теперь, для включения и отключения прокси можно использовать команды setproxy и unsetproxy.
Как правила глобальной настройки прокси достаточно для того что бы все остальные приложения работали через прокси без необходимости настраивать прокси внутри приложения. Однако некоторые приложения не умеют работать с глобальными настройками или им нужны особенные настройки.
Прокси для команды apt
В новых версиях умеет работать с глобальными настройками, но в более старых мог работать только с персональными настройками. Для внесения нашего прокси открываем файл:
В нем указываем наш прокси и выключаем данную настройку последней строчкой:
Если сервер с авторизацией, то необходимо добавить логин:пароль@ по аналогии с предыдущими примерами.
Прокси для команды wget
И в конце дописываем необходимый прокси:
Если прокси без авторизации, то proxy-user и proxy-password нужно убрать
Настройка proxy в Ubuntu
Все настройки среды рабочего стола в Ubuntu хранятся в базе данных DConf, в том числе и настройки прокси сервера. Настройки записываются в виде пар ключ значение. Если изменить какой либо параметр из меню настроек системы все изменения сразу же запишутся в DConf. Из командной строки настройками DConf можно управлять с помощью команд gsettings и dconf. Дальше я покажу как настроить прокси в Ubuntu из терминала с помощью gsettings.
Базовое использование gsettings для работы с базой данных Dconf выглядит следующим образом. Для чтения данных используем:
Для других протоколов я думаю вы поняли что необходимо поменять в данных командах.
Если есть вопросы, то пишем в комментариях.
Также можете вступить в Телеграм канал, ВК или подписаться на Twitter. Ссылки в шапки страницы.
Заранее всем спасибо.
Прокси-сервер 3proxy является одним из самых настраиваемых прокси серверов. Кроссплатформенность 3proxy делает его популярным не только на серверах Linux, но и на серверах Windows Server.
Кроме того, поддерживает комбинированный прокси сервер, который позволяет настроить управление доступом, шириной канала, ограничением объема трафика, перенаправлением и т.д.
Автоматическая установка прокси-сервера 3proxy с помощью скрипта в Ubuntu и Debian
Редактируем файл авторизации. Меняем имя пользователя и пароль:
Сохраняем изменения и закрываем редактор: CTRL+O, CTRL+X.
Ознакомимся и если надо, то отредактируем файл конфигурации прокси-сервера:
Типовая конфигурация доступна по ссылке: 3proxy.cfg
За тип авторизации отвечает строка с названием auth strong cache.
Работают следующие типы авторизации:
- auth strong cache – по имени пользователя и паролю
- auth iponly - авторизация по IP-адресу.
Где 192.168.0.1 IP-адрес пользователя.
Можно добавить еще одну строку:
- maxconn 32 – максимально разрешённое число одновременных подключений.
Как фильтровать только определенные адреса в 3proxy
Можно разрешить фильтрацию только для определённых адресов, а все остальные заблокировать.
Подобные правила работают только при наличии авторизации, без авторизации будет разрешена фильтрация всего трафика.
Читайте также: