15 февраля 2017 г.

Прокси-сервер на Ubuntu 16.04 и Squid 3.5.12

Как ни пытался избежать этого момента, но он настал. Установленный прокси на Ubuntu 14.04 с squid 3.3.8 уже достал меня угрозами, что на мою версию перестанут(ли) выпускаться обновления и предлагает мне сделать апгрейд. Делать это на боевом сервере как-то рука не подымается, ведь так не хочется нарушать целостность всем известного органа подсознания =) Но тут подвернулся старенький сервер в виде HP Proliant DL160 G5, с которого установленная ОС вместе с приложениями были переведены в вид виртуальной машины с помощью несложных манипуляций. Его-то мы и будем превращать в новый прокси-сервер. Зачем это надо, ведь всё и так прекрасно работает? - спросите вы. Просто хотелось бы перевести на более современную платформу, прокси и всё-таки переделать ext_ldap_group на ext_kerberos_ldap_group, т.к. в случае падения одного из прописанных в конфигурации КД у пользователей перестаёт работать интернет. Возможно эта проблема связана и не с этим, поэтому за одно и проверю эту гипотезу.

На цикл постараюсь не разбивать, а уложиться в размер одной статьи. Наполнять буду постепенно по ходу установки, настройки и устранения проблем в случае их появления.

С чего начать?

Предполагается наличие загруженного установочного образа ОС Ubuntu 16.04, которая на момент написания имеет уже 2 релиз. Загрузить его можно на сайте разработчика по ссылке https://www.ubuntu.com/download/server

Исходные данные

OS: Ubuntu 16.04.2
FQDN: proxy.ad.local
NIC: 192.168.0.4 (да, прокси с одним интерфейсом, такова топология сети и требования СБ)
DC: AD.LOCAL
AD: dc1.ad.local - 192.168.0.2
AD: dc2.ad.local - 192.168.0.3
GW: 192.168.0.1

Кэширование использовать не предполагается, но это легко исправить в случае необходимости.

Установка ОС

Как ни прискорбно, но процесс установки описывать не буду. Возможно в дальнейшем я изменю своё решение, но пока это так, ведь процесс установки Ubuntu не сильно отличается от установки обычной программы (Далее - Далее - Далее - Готово). Исключение составляет лишь разметка диска, но этот процесс также индивидуален и зависит от того, что вы хотите получить в итоге.

Первая стадия

В связи с тем, что первоначальная установка происходит в серверной (ну нет у меня на нём iLO), поэтому хочется быстрее свинтить с этого шумного и холодного места. Для этого первым делом настроим интерфейс и поставим openssh-server. Так сделаем это:
sudo vi /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface

auto lo
iface lo inet loopback

# LAN network interface

auto eth0
iface eth0 inet static
    address 192.168.0.4
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255
    gateway 192.168.0.1
    dns-nameservers 192.168.0.2 10.160.0.3
    dns-search ad.local
После чего перезагрузим сервер:
sudo reboot
и продолжим:
sudo apt install openssh-server
Отредактируем его конфигурационный файл:
sudo vi /etc/ssh/sshd_config
в котором раскомментируем строку и приведём её к виду:
ListenAddress 192.168.0.4
и перезапустим службу:
systemctl restart sshd.service
Теперь быстренько сбегаем из этого холодильника, пока не простыли, и садимся в своё тёплое и удобное кресло Администратора. Надеюсь кофе с плюшками запаслись? Нет? Тогда дальше ни в коем случаем не читать!!!

Вторая стадия

В тёплое место перебрались? Кофе запаслись? Тогда продолжим =)
Берём в руки консоль DNS и добавляем туда записи A и PTR согласно исходным данным, т.е. proxy.ad.local - 192.168.0.4

Теперь уже можно установить то, ради чего мы все здесь собрались, Squid'а:
sudo apt-get install squid3 ldap-utils krb5-user
Последний пакет нам пригодится, когда перейдём к настройке Kerberos.

Наш прокси-сервер мы будем использоваться в сети с Active Directory, которая очень не любит большого разброса времени. Чтобы не нарваться на неприятности, поднимем демона синхронизации:
sudo apt install ntp
и отредактируем его конфигурационный файл, закомментировав серверы времени Ubuntu и указав свои:
sudo vi /etc/ntp.conf
server dc1.ad.local
server dc2.ad.local
. . .
interface listen 192.168.0.4
По завершении перезапускаем службу и убеждаемся в работоспособности:
systemctl reload ntp.service
sudo ntpq -p

Третья стадия

20170227 Проблема с реализацией аутентификации Kerberos. Как только разберусь в причинах продолжу повествование.

... to be continued =)










Комментариев нет:

Отправить комментарий

Уважаемый комментатор, пишите грамотно.
С благодарностью, автор блога.