LINUX.ORG.RU
ФорумAdmin

Скрипт инициализации для сквида

 ,


0

2

Хочу развернуть сквид согласно вот этой инструкции: https://habrahabr.ru/post/272733/ (с фильтрацией HTTP и прочими ништяками).

На данный момент на этой машине уже установлен и работает сквид из репов убунты-сервера 14.04, но он не может в прозрачный SSL-прокси.

Так вот, с настройкой всего и вся, компиляцией и т. д. проблем не возникло, тем более, что до этого я обкатал процесс на тестовой машине, но на убунте 17.04.

И все бы хорошо, но вот цитата автора:

service squid start

И тоже видим большую ФИГУ. Почему? Потому что checkinstall не включил в пакет файлы сервиса Squid.
На самом деле, этот самый сервис есть в архиве с исходниками Squid'a. По каким причинам Checkinstall его не включил в пакет, не известно.

Далее автор рассказывает, как надо создать скрипт инициализации для systemd, но проблема в том, что у меня на сервере 14.04, где systemd пока еще нет. И, откровенно говоря, я не могу понять, как запускается squid в 14.04, то есть он может все то, что обычно могут сервисы:

sudo service squid3 start/stop/restart/reload
Но файла /etc/init.d/squid3 в системе нет, так что я совcем запутался и не понимаю, как оно стартует, но это ладно.

Основной вопрос: после

sudo dpkg -i squid_3.5.8-1_i386.deb
что нужно сделать, чтобы в ubuntu-server 14.04 сквид так же можно было бы запускать, перезапускать и т. д.?

я не могу понять, как запускается squid в 14.04

Через upstart

но он не может в прозрачный SSL-прокси

С какой целью тебе нужен MitM? Это мало того, что весьма нехорошо, так ещё и браузеры будут громко ругаться, а, например, банковский софт просто отвалится.

И не стоит собирать сквид так, как описывает автор статьи, более правильным будет установить сборочные зависимости и пересобрать libecap3 и squid из 16.04 штатными сборочными средствами (если в пакете 16.04 есть только systemd service, то положить в пакет текущую upstart'овую приблуду).

redgremlin ★★★★★
()
Ответ на: комментарий от redgremlin

С какой целью тебе нужен MitM

Это не оно, подмены сертификата не происходит, если коротко: кальмар представляется клиентом, запрашивает сертификат и берет название домена из SNI сертификата, так что все норм, более подробно тут: https://habrahabr.ru/post/267851/ (достаточно прочитать 3 и 4 абзац)

..пересобрать libecap3 и squid из 16.04 штатными сборочными средствами

Тут критична версия 3.5.8, «дебианизированных» исходников которой нет, поэтому их приходится качать с офсайта сквида. Версии чуть выше или ниже не работают (в более ранних фичи небыло, в более поздних что-то сломалось, подробности по 2м ссылкам, оставленным ранее).

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

то положить в пакет текущую upstart'овую приблуду

а вот это интересно, я, конечно, пошел в гуголь, но можно поподробнее?

stiflerwen
() автор топика

в мануале все хорошо описано , единственное у меня libecap не получилось собрать самому, я его брал из тех пакетов ставил, в конце мануала есть скрипт старта squid. Читайте пост полностью

dispancer
()
Ответ на: комментарий от dispancer

Читайте пост полностью

Конечно, но если Вы сами полностью прочитали ОП-пост, то поняли бы, что там скрипт инициализации для systemd, который в ubuntu server 14.04 не завезли..

Да и я уже практически победил эту фигню, как только все разверну на рабочее железо, распишу, что делал.

stiflerwen
() автор топика

Короче, когда пакет squid-3.5.8 установлен, все зависимости удовлетворены и необходимые каталоги, не созданные автоматически, созданы, нужно засунуть squid.conf в /etc/init - это скрипт инициализации для upstart.

После этого service squid start/stop заработает, можно открывать в отдельном терминале:

tail -f /var/log/squid/cache.log
и смотреть, на что он там еще ругается.

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

sudo squid -k reconfigure
и посмотреть, на что ругнется в консоль. В частности, мне пришлось доставить (в 14.04):
gcc-7-base_7.2.0-2_i386.deb
libnettle6_3.2-1ubuntu0.16.04.1_i386.deb
libstdc++6_7.2.0-2_i386.deb
libnetfilter-conntrack3
libltdl7

После этого все завелось.

stiflerwen
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.