Образовательный проект «SnakeProject» Михаила Козлова

Навигация

⇒ FreeBSD and Nix ⇐

CISCO

Voice(Asterisk\Cisco)

Microsoft

Powershell

Python

SQL\T-SQL

Общая

WEB Разработка

ORACLE SQL \ JAVA

Мото

Стрельба, пневматика, оружие

Саморазвитие и психология


Squid установка и настройка на Ubuntu


Squid установка и настройка на Ubuntu


Включение IP forwarding:
echo 1 > /proc/sys/net/ipv4/ip_forward

vi /etc/sysctl.conf
net.ipv4.ip_forward = 1

sudo sysctl -p


Установка и настройка

Установка squid:
apt update
apt upgrade

apt install chrony
timedatectl set-timezone Europe/Moscow

apt install iptables iptables-persistent
iptables -I INPUT -p tcp --dport 3128 -j ACCEPT
netfilter-persistent save

apt install squid

vi /etc/squid/squid.conf
Пример локальной сети добавить в acl, например:
#  TAG: acl
acl localnet src 192.168.0.0/24
Разрешаем доступ для acl localnet выше опции http_access deny all:
#  TAG: http_access
http_access allow localnet
Кэш:
#  TAG: cache_dir
cache_dir ufs /var/spool/squid 4096 32 256
* где
ufs — файловая система;
/var/spool/squid — директория хранения кэша;
4096 — объем пространства в мегабайтах, которое будет выделено под кэш;
32 — количество каталогов первого уровня, которое будет создано для размещение кэша;
256 — количество каталогов второго уровня, которое будет создано для размещение кэша.
Отключить кэш:
cache deny all

Применяем изменения конфигурациии, создаем структуру папок, включаем автозагрузку:
systemctl stop squid
squid -z
systemctl enable squid --now


Прозрачный прокси

Позволяет использовать squid не настраивая браузер

vi /etc/squid/squid.conf

Находим строчку:
#  TAG: http_port
http_port 3128
приводим к следующему виду:
#  TAG: http_port
http_port 3128
http_port 3129 intercept

squid -k reconfigure

Пример правил iptables для прозрачного проксирования:
iptables -t nat -A OUTPUT -o lo -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
iptables -t nat -A OUTPUT -o lo -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 3128
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 3128


Авторизация по логину и паролю

vi /etc/squid/squid.conf
#  TAG: auth_param
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/auth_users
auth_param basic children 30
auth_param basic realm SQUID PROXY
auth_param basic credentialsttl 4 hours
* где
/usr/lib/squid/basic_ncsa_auth — в зависимости от ос может находиться в другом каталоге;
/etc/squid/auth_users — файл с логинами и паролями;
children 30 разрешает 30 одновременных подключений;
SQUID PROXY — произвольная фраза приветствия;
credentialsttl 4 hours будет держать сессию 4 часа, после потребуется повторный ввод логина и пароля.

acl пользователей, которые должны пройти обязательную регистрацию:
#  TAG: acl
acl auth_users proxy_auth REQUIRED
После опции:
http_access deny !Safe_ports
Добавляем:
http_access allow auth_users

Создаем файл учеток и создаем пару логинов и паролей:
apt install apache2-utils
htpasswd -c /etc/squid/auth_users rozario_agro1
htpasswd /etc/squid/auth_users agro_rozario2

squid -k reconfigure


Слушаем на указанном ip адресе

vi /etc/squid/squid.conf
#  TAG: http_port
http_port 192.168.1.1:3128

squid -k reconfigure


Указываем исходящий сетевой интерфейс

vi /etc/squid/squid.conf
acl 1_1_1_1 localip 1.1.1.1
tcp_outgoing_address 1.1.1.1 1_1_1_1

squid -k reconfigure

 


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

Контакты Группа ВК Сборник материалов по Cisco, Asterisk, Windows Server, Python и Django, SQL и T-SQL, FreeBSD и LinuxКод обмена баннерами Видео к IT статьям на YoutubeВидео на другие темы Смотреть
Мои друзья: Советы, помощь, инструменты для сис.админа, статическая и динамическая маршрутизация, FreeBSD

© Snakeproject.ru создан в 2013 году.
При копировании материала с сайта - оставьте ссылку.
Весь материал на сайте носит ознакомительный характер,
за его использование другими людьми, автор ответственности не несет.

Рейтинг@Mail.ru
Рейтинг@Mail.ru Яндекс.Метрика





Поддержать автора и проект