- Лучшие прокси серверы Linux
- 1. Squid
- 2. Privoxy
- 3. Polipo
- 4. TinyProxy
- 5. 3Proxy
- 6. Gate.js
- 7. Varnish Cache
- 8. Nginx
- Выводы
- How to Configure Proxy Settings on Ubuntu 20.04
- Setting Up Proxy with Ubuntu Desktop GUI
- Setting up Proxy With Ubuntu Desktop Terminal
- Setting Up Temporary Proxy for a Single User
- Setting Up Permanent Proxy for a Single User
- Setting Up Permanent Proxy for All Users
- Setting Up Proxy for APT
Лучшие прокси серверы Linux
В современных сетях прокси серверы используются достаточно часто. Особенно они полезны на предприятиях, здесь кэширующие прокси серверы могут применяться для снижения нагрузки на сеть, увеличения пропускной способности, экономии трафика и даже для отслеживания действий пользователей и блокировки нежелательных сайтов.
Другая сфера применения прокси серверов — это веб-сайты. Они используются для кэширования сгенерированных страниц, чтобы ускорить загрузку сайтов. В этой статье мы рассмотрим лучшие прокси серверы для Linux, которые вы можете использовать в своих конфигурациях.
1. Squid
Squid — это лучший прокси серевер для Linux с поддержкой таких протоколов, как: HTTP, HTTPS, FTP и многих других. Он позволяет повысить пропускную способность сети и сократить время отклика сайтов путем кэширования ресурсов и страниц. Страницы и файлы, которые запрашиваются часто могут быть использованы повторно. Вы можете настроить кэширование как в оперативную память, так и на жесткий диск, если нужно кэшировать много данных при медленном интернете.
Кроме того, в Squid есть очень широкие возможности контроля доступа к сетевым ресурсам. Вы можете блокировать не только банальные запросы к доменам или загрузку файлов определенных форматов, но и доступ к сети в определенное время, работу протоколов и портов, а также многое другое. Squid поддерживает не только операционную систему Linux, но и Windows. Изначально программа могла работать только в Linux, но затем была портирована и для Windows. Мы уже рассматривали настройку Squid в Ubuntu в одной из предыдущих статей.
2. Privoxy
Это ещё один кэширующий прокси сервер Linux, который устанавливается на стороне клиента. Поддерживаются все основные веб-протоколы. Но он направлен больше не на кэширование контента, а на фильтрацию и защиту конфиденциальности пользователей. С помощью него вы можете изменять интернет-страницы, вырезать рекламу, управлять cookies, ограничивать доступ к некоторым веб-сайтам, а также удалять любой нежелательный контент, управлять отправляемыми заголовками браузера.
В отличие от Squid программа настраивается через веб-интерфейс, и надо сказать, что достаточно удобный. Хотя в некоторых пунктах можно запутаться. При включенном прокси его настройка будет доступна по адресу config.privoxy.org. Кроме веб-интерфейса, можно использовать конфигурационный файл, но он намного сложнее.
3. Polipo
Небольшой, но быстрый кэширующий прокси сервер с открытым исходным кодом, поддерживающий протокол HTTP и DNS. Polipo можно использовать для фильтрации рекламы, повышения приватности или ускорения работы веб-сайтов с помощью кэширования страниц. Также как и Privoxy он рассчитан больше на обеспечение приватности. Настройка программы выполняется через веб-интерфейс, но кроме него, есть несколько графических оболочек, для интерактивного взаимодействия с программой. Поддерживается как Linux, так и Windows.
4. TinyProxy
TinyProxy — это очень простой и легкий прокси сервер с открытым исходным кодом для операционных систем Unix. Он разработан, чтобы быть маленьким и очень быстрым и поддерживает протоколы HTTP и HTTPS. Несмотря на легковесность этот прокси сервер linux поддерживает все необходимые функции, такие как удаленный доступ с помощью веб-интерфейса, фильтрация доступа к ресурсам, фильтрация на основе URL и другое.
5. 3Proxy
Это простой, универсальный прокси сервер, рассчитанный больше на контроль доступа к ресурсам. Поддерживаются протоколы работы HTTP, HTTPS, FTP и SOCKS причём для каждого протокола можно настроить и запустить отдельный сервис. Для контроля доступа можно использовать ACL списки. Доступ к прокси можно ограничивать по паролю. Для мониторинга активности пользователей можно использовать лог файл.
6. Gate.js
Gate.js — это что-то новое и очень интересное. Это полнофункциональный кэширующий прокси сервер, написанный на JavaScript с использованием Node.js. Он написан с нуля и призван заменить Squid и Nginx. Он позволяет кэшировать контент, облегчая работу веб-серверам, а также ускоряя загрузку сайтов на стороне клиента. Его главная особенность в масштабируемости, поскольку программа написана на интерпретируемом языке, она может быть легко дополнена.
7. Varnish Cache
В отличие от вышеперечисленных программ, этот прокси сервер рассчитан больше для работы на стороне сервера. Он предназначен для ускорения веб-сайтов. Его современная архитектура дает ему значительную производительность. Varnish Cache хранит веб-страницы в памяти сервера, чтобы программа веб-сервера Apache или Nginx не генерировала ее еще раз. Веб-сервер только обновляет страницы при изменении содержимого. Получение содержимого из памяти выполняется намного быстрее чем полная генерация.
8. Nginx
Все знают Nginx как отличный веб-сервер, рассчитанный на работу под большой нагрузкой. Но кроме этого, он может использоваться в качестве прокси сервера. Nginx не умеет кэшировать или фильтровать содержимое страниц. Но его задача принимать запросы от клиентов на сервере, передача их другим программам, а затем возврат ответа клиенту. Nginx выгодно использовать, потому что эта программа оптимизирована для максимальной производительности и может принимать до 10 000 запросов от пользователей одновременно.
Выводы
В этой статье мы рассмотрели лучшие прокси серверы Linux, возможно, это далеко не все программы, которые стоило бы добавить в этот список. Какие прокси серверы вы используете в своих системах? Какие считаете лучшими? Напишите в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
How to Configure Proxy Settings on Ubuntu 20.04
Using a proxy server as an internet access intermediary is a common business scenario. However, personal users can also benefit from increased network security, privacy, and speed provided by proxies.
In this tutorial, you will learn how to set up your Ubuntu 20.04 system to work with a proxy server.
- Ubuntu 18.04 or later
- Access to terminal with sudo privileges
- Proxy info (web or IP address, username, and password)
Note: If you wish to set up one of your machines to act as a proxy, refer to How to Set Up & Install Squid Proxy Server on Ubuntu.
Setting Up Proxy with Ubuntu Desktop GUI
1. To access proxy settings using the Ubuntu GUI, open Ubuntu’s main Settings.
2. Select the Network setting in the menu on the left side of the window.
3. Then, click the cog in the Network Proxy section.
4. A Network Proxy dialogue appears. Choose Manual and enter your proxy info into the fields below.
5. Exit the dialogue and Ubuntu will automatically apply the proxy settings.
Setting up Proxy With Ubuntu Desktop Terminal
Use the command line interface for more granular control of proxy settings. This allows you to:
- Make temporary or permanent changes to the configuration.
- Set up proxy for a single user or for all users.
Setting Up Temporary Proxy for a Single User
A temporary proxy connection resets after a system reboot. To establish such a connection for the current user, use the export command.
The syntax for establishing a temporary proxy connection is:
export HTTP_PROXY=[username]:[password]@[proxy-web-or-IP-address]:[port-number] export HTTPS_PROXY=[username]:[password]@[proxy-web-or-IP-address]:[port-number] export FTP_PROXY=[username]:[password]@ [proxy-web-or-IP-address]:[port-number] . export NO_PROXY=localhost,127.0.0.1. 1
Provide the proxy address (web or IP), followed by the port number. If the proxy server requires authentication, add your proxy username and password as the initial values.
This is what the set of commands should look like in terminal:
The purpose of the NO_PROXY line is to tell the system that local traffic should ignore the proxy.
Setting Up Permanent Proxy for a Single User
As stated above, proxy settings configured through a terminal window reset after you reboot your system. To make permanent changes for a single user, edit the .bashrc file.
1. Open the file with a text editor of your choice:
2. Now add the following lines at the bottom of the .bashrc file:
export HTTP_PROXY="[username]:[password]@[proxy-web-or-IP-address]:[port-number]" export HTTPS_PROXY="[username]:[password]@[proxy-web-or-IP-address]:[port-number]" export FTP_PROXY="[username]:[password]@ [proxy-web-or-IP-address]:[port-number]" . export NO_PROXY="localhost,127.0.0.1. 1"
4. Then, run the following command in to apply the new settings to the current session:
Setting Up Permanent Proxy for All Users
To permanently set up proxy access for all users, you have to edit the /etc/environment file.
1. First, open the file in a text editor:
2. Next, update the file with the same information you added to the .bashrc file in the previous scenario:
export HTTP_PROXY="[username]:[password]@[proxy-web-or-IP-address]:[port-number]" export HTTPS_PROXY="[username]:[password]@[proxy-web-or-IP-address]:[port-number]" export FTP_PROXY="[username]:[password]@ [proxy-web-or-IP-address]:[port-number]" . export NO_PROXY="localhost,127.0.0.1. 1"
3. Save the file and exit. The changes will be applied the next time you log in.
Setting Up Proxy for APT
On some systems, the apt command-line utility needs a separate proxy configuration, because it does not use system environment variables.
1. To define proxy settings for apt, create or edit (if it already exists) a file named apt.conf in /etc/apt directory:
2. Add the following lines to the file:
Acquire::http::Proxy "http://[username]:[password]@ [proxy-web-or-IP-address]:[port-number]"; Acquire::https::Proxy "http://[username]:[password]@ [proxy-web-or-IP-address]:[port-number]";
3. Save the file and exit. The configuration will be applied after a reboot.
This tutorial provided instructions on how to set up proxy settings on Ubuntu 20.04. You should now know how to make temporary and permanent changes to your system’s proxy configuration, for a single user or for the entire system.