Прокси в Ubuntu: объяснение HTTP и SOCKS5
В этом руководстве разберём, как настроить прокси в Ubuntu — как HTTP, так и SOCKS5. Сначала кратко пройдёмся по теории, а затем перейдём к практике: настройка через CLI и инструменты вроде Squid.
Что такое прокси в Ubuntu?
Прокси в Ubuntu — это посредник между вашим компьютером и интернетом. Вместо прямого соединения весь трафик проходит через прокси-сервер, который может фильтровать, изменять или перенаправлять запросы.
Схема простая: запрос → прокси → сервер назначения. Но именно в этом промежуточном шаге и происходит основная работа.
Зачем это нужно:
- Повышение приватности
- Обход географических ограничений
- Фильтрация и управление трафиком
Forward и Reverse прокси
Эти понятия часто путают.
Forward proxy (прямой прокси) работает на стороне клиента. Он отправляет ваши запросы в интернет от вашего имени.
Reverse proxy (обратный прокси) работает на стороне сервера. Он принимает входящие запросы и распределяет их между backend-серверами.
В этом руководстве рассматривается только forward proxy.
HTTP и SOCKS5 прокси
Теперь к практике.
HTTP прокси предназначен для веб-трафика: браузеры, API, парсинг. Работает только с HTTP/HTTPS.
SOCKS5 прокси более универсален — поддерживает приложения, игры, торренты и любой другой трафик.
SOCKS5 гибче, но иногда чуть медленнее.
Основные различия
| Характеристика | HTTP прокси | SOCKS5 прокси |
|---|---|---|
| Поддержка протоколов | HTTP/HTTPS | Почти любой трафик |
| Производительность | Выше для веба | Ниже из-за универсальности |
| Анонимность | Средняя | Более высокая |
| Использование | Браузеры, API | Приложения, игры, торренты |
| Гибкость | Ограниченная | Широкая |
| Обход фаерволов | Базовый | Расширенный |
Требования
Перед началом убедитесь:
- Ubuntu установлен и работает
- Есть доступ к терминалу (
Ctrl + Alt + T) - Есть интернет
Обновите систему:
sudo apt update
sudo apt upgrade
Проверьте соединение:
ping google.com
Также понадобятся данные прокси:
- Хост (IP или домен)
- Порт
- Логин
- Пароль
Настройка HTTP прокси в Ubuntu
Есть два основных способа: через CLI и через Squid.
Настройка через CLI
Самый быстрый вариант.
Установка переменных
export http_proxy="http://username:password@proxy-server:port"
export https_proxy="http://username:password@proxy-server:port"
Сделать настройки постоянными
nano ~/.bashrc
Добавьте:
export http_proxy="http://username:password@proxy-server:port"
export https_proxy="http://username:password@proxy-server:port"
Примените:
source ~/.bashrc
Проверка
curl ifconfig.me
Если отображается IP прокси — всё работает.
Отключение прокси
unset http_proxy
unset https_proxy
Настройка Squid
Squid — более продвинутый вариант с кэшированием, логированием и контролем доступа.
Установка
sudo apt update
sudo apt install squid
Конфигурация
sudo nano /etc/squid/squid.conf
Убедитесь, что есть:
http_port 3128
Настройка доступа
Для теста:
acl all src 0.0.0.0/0
http_access allow all
(в реальной среде доступ нужно ограничивать)
Запуск
sudo systemctl start squid
sudo systemctl enable squid
Проверка
curl -x http://localhost:3128 http://ifconfig.me
Настройка SOCKS5 в Ubuntu
SOCKS5 не поддерживается через переменные окружения, поэтому нужны дополнительные инструменты.
Способ 1: SSH туннель
ssh -D 1080 user@remote-server-ip
Прокси будет доступен на localhost:1080.
Проверка:
curl --socks5 localhost:1080 ifconfig.me
Способ 2: proxychains
Установка
sudo apt update
sudo apt install proxychains
Настройка
sudo nano /etc/proxychains.conf
Добавьте:
socks5 username password proxy-server port
Использование
proxychains curl ifconfig.me
Squid и SOCKS5
Squid не поддерживает SOCKS5 — только HTTP/HTTPS.
Для SOCKS5 используйте Dante.
Dante (SOCKS5 сервер)
Установка
sudo apt update
sudo apt install dante-server
Конфигурация
sudo nano /etc/danted.conf
Пример:
logoutput: syslog
internal: [server-ip] port = [port]
external: [server-ip]
method: username none
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
}
socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
}
Запуск
sudo systemctl start danted
sudo systemctl enable danted
Проверка
curl --socks5 [server-ip]:[port] ifconfig.me
Итог
Настройка прокси в Ubuntu несложная, но требует внимания к деталям.
HTTP прокси — проще и быстрее для веба. SOCKS5 — универсальнее, но требует дополнительных инструментов.
Главное — всегда проверяйте, куда уходит трафик (например, через curl ifconfig.me).
Готовы протестировать с реальными IP?
Зарегистрируйтесь сейчас, чтобы получить мгновенный доступ к нашим прокси-пулам.