Как установить прокси сервер Squid на Debian 12
Squid — это программный пакет, реализующий функцию кэширующего прокси-сервера для протоколов HTTP, FTP, Gopher и (в случае соответствующих настроек) HTTPS.
В этом руководстве я покажу, как установить прокси сервер Squid на операционной системе Debian 12. Установку будем выполнять из исходников и актуальную на момент написания статьи версию Squid.
Установка зависимостей
Устанавливаем необходимые пакеты зависимостей.
Сборка и установка
Актуальную версию пакета можно посмотреть по ссылке:
Клонируем репозиторий Squid с GitHub:
Переходим в клонированный репозиторий.
Актуальная версия
JUQwJTk1JUQxJTgxJUQwJUJCJUQwJUI4JTIwJUQwJUJEJUQxJTgzJUQwJUI2JUQwJUJEJUQwJUIwJTIwJUQxJTgxJUQwJUIwJUQwJUJDJUQwJUIwJUQxJThGJTIwJUQwJUIwJUQwJUJBJUQxJTgyJUQxJTgzJUQwJUIwJUQwJUJCJUQxJThDJUQwJUJEJUQwJUIwJUQxJThGJTIwJUQwJUIyJUQwJUI1JUQxJTgwJUQxJTgxJUQwJUI4JUQxJThGJTIwJUQxJTgwJUQwJUI1JUQwJUJCJUQwJUI4JUQwJUI3JUQwJUIwJTJDJTIwJUQxJTgyJUQwJUJFJTIwJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUI1JUQwJUJBJUQwJUJCJUQxJThFJUQxJTg3JUQwJUI4JUQxJTgyJUQxJTgxJUQxJThGJTIwJUQwJUJEJUQwJUIwJTIwJUQwJUJEJUQwJUI1JUQwJUI1JTIwJUQwJUJDJUQwJUJFJUQwJUI2JUQwJUJEJUQwJUJFJTIwJUQwJUIyJUQxJThCJUQwJUJGJUQwJUJFJUQwJUJCJUQwJUJEJUQwJUI4JUQwJUIyJTIwJUQwJUJBJUQwJUJFJUQwJUJDJUQwJUIwJUQwJUJEJUQwJUI0JUQxJTgzJTNB
Определенная версия
JUQwJTkyJTIwJUQxJTgxJUQwJUJCJUQxJTgzJUQxJTg3JUQwJUIwJUQwJUI1JTIwJUQwJUI1JUQxJTgxJUQwJUJCJUQwJUI4JTIwJUQwJUJEJUQwJUI1JUQwJUJFJUQwJUIxJUQxJTg1JUQwJUJFJUQwJUI0JUQwJUI4JUQwJUJDJUQwJUJFJTIwJUQwJUIyJUQxJThCJUQwJUJGJUQwJUJFJUQwJUJCJUQwJUJEJUQwJUI4JUQxJTgyJUQxJThDJTIwJUQxJTgxJUQwJUIxJUQwJUJFJUQxJTgwJUQwJUJBJUQxJTgzJTIwJUQwJUJBJUQwJUIwJUQwJUJBJUQwJUJFJUQwJUI5JTIwJUQxJTgyJUQwJUJFJTIwJUQwJUJFJUQwJUJGJUQxJTgwJUQwJUI1JUQwJUI0JUQwJUI1JUQwJUJCJUQwJUI1JUQwJUJEJUQwJUJEJUQwJUJFJUQwJUI5JTIwJUQwJUIyJUQwJUI1JUQxJTgwJUQxJTgxJUQwJUI4JUQwJUI4JTJDJTIwJUQxJTgyJUQwJUJFJTIwJUQxJTgxJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUIyJUQwJUIwJTIwJUQwJUJDJUQwJUJFJUQwJUI2JUQwJUJEJUQwJUJFJTIwJUQwJUIyJUQxJThCJUQwJUIyJUQwJUI1JUQxJTgxJUQxJTgyJUQwJUI4JTIwJUQxJTgxJUQwJUJGJUQwJUI4JUQxJTgxJUQwJUJFJUQwJUJBJTIwJUQwJUI0JUQwJUJFJUQxJTgxJUQxJTgyJUQxJTgzJUQwJUJGJUQwJUJEJUQxJThCJUQxJTg1JTIwJUQxJTgwJUQwJUI1JUQwJUJCJUQwJUI4JUQwJUI3JUQwJUJFJUQwJUIyJTNB
А затем переключаемся на нужную ветку:
Подготовка
JUQwJTkyJUQxJThCJUQwJUJGJUQwJUJFJUQwJUJCJUQwJUJEJUQwJUI4JUQwJUJDJTIwYm9vdHN0cmFwcGluZyUyMCglRDAlQkYlRDAlQkUlRDAlQjQlRDAlQjMlRDAlQkUlRDElODIlRDAlQkUlRDAlQjIlRDAlQkElRDElODMpJTIwJUQwJUI4JUQxJTgxJUQxJTg1JUQwJUJFJUQwJUI0JUQwJUJEJUQwJUI4JUQwJUJBJUQwJUJFJUQwJUIyJTIwJUQwJUJBJTIwJUQxJTgxJUQwJUIxJUQwJUJFJUQxJTgwJUQwJUJBJUQwJUI1Lg==
configure
, Makefile
и других вспомогательных файлов, необходимых для сборки.JUQwJUEzJUQxJTgxJUQwJUJGJUQwJUI1JUQxJTg4JUQwJUJEJUQxJThCJUQwJUI5JTIwJUQwJUIyJUQxJThCJUQwJUIyJUQwJUJFJUQwJUI0JTNB
Сборка
JUQwJTkyJUQxJThCJUQwJUJGJUQwJUJFJUQwJUJCJUQwJUJEJUQxJThGJUQwJUI1JUQwJUJDJTIwJUQwJUJBJUQwJUJFJUQwJUJEJUQxJTg0JUQwJUI4JUQwJUIzJUQxJTgzJUQxJTgwJUQwJUI4JUQxJTgwJUQwJUJFJUQwJUIyJUQwJUIwJUQwJUJEJUQwJUI4JUQwJUI1JTIwJUQxJTgxJTIwJUQwJUJGJUQwJUJFJUQwJUI0JUQwJUI0JUQwJUI1JUQxJTgwJUQwJUI2JUQwJUJBJUQwJUJFJUQwJUI5JTIwSFRUUFMlM0E=
Собираем и устанавливаем пакет Squid:
Post-Install настройка
Создаем необходимые каталоги для работы Squid и назначаем для них соответствующие права доступа:
Logrotate
Создаем файл ротации логов /etc/logrotate.d/squid
:
System V Init
Для управление запуском Squid создадим стартовый скрипт /etc/init.d/squid
для System V Init
.
JTIzISUyMCUyRmJpbiUyRnNo
JTIz
JTIzJTIwc3F1aWQlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTdGFydHVwJTIwc2NyaXB0JTIwZm9yJTIwdGhlJTIwU1FVSUQlMjBIVFRQJTIwcHJveHktY2FjaGUu
JTIz
# Version: @(#)squid.rc 1.0 07-Jul-2006 luigi@debian.org
JTIz
JTIzJTIwcGlkZmlsZSUzQSUyMCUyRnZhciUyRnJ1biUyRnNxdWlkLnBpZA==
#
### BEGIN INIT INFO
JTIzJTIwUHJvdmlkZXMlM0ElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBzcXVpZA==
# Required-Start: $network $remote_fs $syslog
JTIzJTIwUmVxdWlyZWQtU3RvcCUzQSUyMCUyMCUyMCUyMCUyMCUyNG5ldHdvcmslMjAlMjRyZW1vdGVfZnMlMjAlMjRzeXNsb2c=
# Should-Start: $named
JTIzJTIwU2hvdWxkLVN0b3AlM0ElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjRuYW1lZA==
# Default-Start: 2 3 4 5
JTIzJTIwRGVmYXVsdC1TdG9wJTNBJTIwJTIwJTIwJTIwJTIwJTIwMCUyMDElMjA2
# Short-Description: Squid HTTP Proxy version 4.x
JTIzJTIzJTIzJTIwRU5EJTIwSU5JVCUyMElORk8=
NAME=squid
DESC="Squid HTTP Proxy"
REFFTU9OJTNEJTJGdXNyJTJGc2JpbiUyRnNxdWlk
UElERklMRSUzRCUyRnZhciUyRnJ1biUyRiUyNE5BTUUucGlk
CONFIG=/etc/squid/squid.conf
SQUID_ARGS="-YC -f $CONFIG"
[ ! -f /etc/default/squid ] || . /etc/default/squid
LiUyMCUyRmxpYiUyRmxzYiUyRmluaXQtZnVuY3Rpb25z
PATH=/bin:/usr/bin:/sbin:/usr/sbin
[ -x $DAEMON ] || exit 0
dWxpbWl0JTIwLW4lMjA2NTUzNQ==
find_cache_dir () {
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdyUzRCUyMiUyMCUyMCUyMCUyMCUyMCUyMiUyMCUyMyUyMHNwYWNlJTIwdGFi
res=`$DAEMON -k parse -f $CONFIG 2>&1 |
grep "Processing:" |
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc2VkJTIwcyUyRi4qUHJvY2Vzc2luZyUzQSU1QyUyMCUyRiUyRiUyMCU3Qw==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc2VkJTIwLW5lJTIwJw==
s/^['"$w"']*'$1'['"$w"']\+[^'"$w"']\+['"$w"']\+\([^'"$w"']\+\).*$/\1/p;
t end;
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZCUzQg==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNBZW5kJTIwcSclNjA=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCJTIwLW4lMjAlMjIlMjRyZXMlMjIlMjAlNUQlMjAlN0MlN0MlMjByZXMlM0QlMjQy
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZWNobyUyMCUyMiUyNHJlcyUyMg==
JTdE
grepconf () {
w=" " # space tab
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmVzJTNEJTYwJTI0REFFTU9OJTIwLWslMjBwYXJzZSUyMC1mJTIwJTI0Q09ORklHJTIwMiUzRSUyNjElMjAlN0M=
grep "Processing:" |
sed s/.*Processing:\ // |
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc2VkJTIwLW5lJTIwJw==
s/^['"$w"']*'$1'['"$w"']\+\([^'"$w"']\+\).*$/\1/p;
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdCUyMGVuZCUzQg==
d;
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNBZW5kJTIwcSclNjA=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCJTIwLW4lMjAlMjIlMjRyZXMlMjIlMjAlNUQlMjAlN0MlN0MlMjByZXMlM0QlMjQy
echo "$res"
JTdE
create_run_dir () {
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcnVuX2RpciUzRCUyRnZhciUyRnJ1biUyRnNxdWlk
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXNyJTNEJTYwZ3JlcGNvbmYlMjBjYWNoZV9lZmZlY3RpdmVfdXNlciUyMHByb3h5JTYw
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZ3JwJTNEJTYwZ3JlcGNvbmYlMjBjYWNoZV9lZmZlY3RpdmVfZ3JvdXAlMjBwcm94eSU2MA==
if [ "$(dpkg-statoverride --list $run_dir)" = "" ] &&
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCJTIwISUyMC1lJTIwJTI0cnVuX2RpciUyMCU1RCUyMCUzQiUyMHRoZW4=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWtkaXIlMjAtcCUyMCUyNHJ1bl9kaXI=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2hvd24lMjAlMjR1c3IlM0ElMjRncnAlMjAlMjRydW5fZGly
[ -x /sbin/restorecon ] && restorecon $run_dir
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZmk=
}
start () {
cache_dir=`find_cache_dir cache_dir`
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FjaGVfdHlwZSUzRCU2MGdyZXBjb25mJTIwY2FjaGVfZGlyJTYw
run_dir=/var/run/squid
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIz
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIzJTIwQ3JlYXRlJTIwcnVuJTIwZGlyJTIwKG5lZWRlZCUyMGZvciUyMHNldmVyYWwlMjB3b3JrZXJzJTIwb24lMjBTTVAp
#
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY3JlYXRlX3J1bl9kaXI=
#
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIzJTIwQ3JlYXRlJTIwc3Bvb2wlMjBkaXJzJTIwaWYlMjB0aGV5JTIwZG9uJ3QlMjBleGlzdC4=
#
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjB0ZXN0JTIwLWQlMjAlMjIlMjRjYWNoZV9kaXIlMjIlMjAtYSUyMCElMjAtZCUyMCUyMiUyNGNhY2hlX2RpciUyRjAwJTIy
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGhlbg==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX3dhcm5pbmdfbXNnJTIwJTIyQ3JlYXRpbmclMjAlMjRERVNDJTIwY2FjaGUlMjBzdHJ1Y3R1cmUlMjI=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTI0REFFTU9OJTIwLXolMjAtZiUyMCUyNENPTkZJRw==
[ -x /sbin/restorecon ] && restorecon -R $cache_dir
fi
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdW1hc2slMjAwMjc=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdWxpbWl0JTIwLW4lMjA2NTUzNQ==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2QlMjAlMjRydW5fZGly
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc3RhcnQtc3RvcC1kYWVtb24lMjAtLXF1aWV0JTIwLS1zdGFydCUyMCU1Qw==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLS1waWRmaWxlJTIwJTI0UElERklMRSUyMCU1Qw==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLS1leGVjJTIwJTI0REFFTU9OJTIwLS0lMjAlMjRTUVVJRF9BUkdTJTIwJTNDJTIwJTJGZGV2JTJGbnVsbA==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTI0JTNG
JTdE
c3RvcCUyMCgpJTIwJTdC
PID=`cat $PIDFILE 2>/dev/null`
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc3RhcnQtc3RvcC1kYWVtb24lMjAtLXN0b3AlMjAtLXF1aWV0JTIwLS1waWRmaWxlJTIwJTI0UElERklMRSUyMC0tZXhlYyUyMCUyNERBRU1PTg==
#
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIzJTIwJTIwJTIwJTIwJTIwJTIwJTIwTm93JTIwd2UlMjBoYXZlJTIwdG8lMjB3YWl0JTIwdW50aWwlMjBzcXVpZCUyMGhhcyUyMF9yZWFsbHlfJTIwc3RvcHBlZC4=
#
sleep 2
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjB0ZXN0JTIwLW4lMjAlMjIlMjRQSUQlMjIlMjAlMjYlMjYlMjBraWxsJTIwLTAlMjAlMjRQSUQlMjAyJTNFJTJGZGV2JTJGbnVsbA==
then
log_action_begin_msg " Waiting"
cnt=0
while kill -0 $PID 2>/dev/null
do
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY250JTNEJTYwZXhwciUyMCUyNGNudCUyMCUyQiUyMDElNjA=
if [ $cnt -gt 24 ]
then
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2FjdGlvbl9lbmRfbXNnJTIwMQ==
return 1
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZmk=
sleep 5
log_action_cont_msg ""
done
log_action_end_msg 0
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwMA==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZWxzZQ==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwMA==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZmk=
}
cfg_pidfile=`grepconf pid_filename`
if test "${cfg_pidfile:-none}" != "none" -a "$cfg_pidfile" != "$PIDFILE"
then
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX3dhcm5pbmdfbXNnJTIwJTIyc3F1aWQuY29uZiUyMHBpZF9maWxlbmFtZSUyMG92ZXJyaWRlcyUyMGluaXQlMjBzY3JpcHQlMjI=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwUElERklMRSUzRCUyMiUyNGNmZ19waWRmaWxlJTIy
Zmk=
case "$1" in
start)
res=`$DAEMON -k parse -f $CONFIG 2>&1 | grep -o "FATAL: .*"`
if test -n "$res";
then
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2ZhaWx1cmVfbXNnJTIwJTIyJTI0cmVzJTIy
exit 3
else
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2RhZW1vbl9tc2clMjAlMjJTdGFydGluZyUyMCUyNERFU0MlMjIlMjAlMjIlMjROQU1FJTIy
if start ; then
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2VuZF9tc2clMjAlMjQlM0Y=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZWxzZQ==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2VuZF9tc2clMjAlMjQlM0Y=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZmk=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZmk=
;;
stop)
log_daemon_msg "Stopping $DESC" "$NAME"
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjBzdG9wJTIwJTNCJTIwdGhlbg==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2VuZF9tc2clMjAlMjQlM0Y=
else
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2VuZF9tc2clMjAlMjQlM0Y=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZmk=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNCJTNC
reload|force-reload)
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmVzJTNEJTYwJTI0REFFTU9OJTIwLWslMjBwYXJzZSUyMC1mJTIwJTI0Q09ORklHJTIwMiUzRSUyNjElMjAlN0MlMjBncmVwJTIwLW8lMjAlMjJGQVRBTCUzQSUyMC4qJTIyJTYw
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjB0ZXN0JTIwLW4lMjAlMjIlMjRyZXMlMjIlM0I=
then
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2ZhaWx1cmVfbXNnJTIwJTIyJTI0cmVzJTIy
exit 3
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZWxzZQ==
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2FjdGlvbl9tc2clMjAlMjJSZWxvYWRpbmclMjAlMjRERVNDJTIwY29uZmlndXJhdGlvbiUyMGZpbGVzJTIy
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc3RhcnQtc3RvcC1kYWVtb24lMjAtLXN0b3AlMjAtLXNpZ25hbCUyMDElMjAlNUM=
--pidfile $PIDFILE --quiet --exec $DAEMON
log_action_end_msg 0
fi
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNCJTNC
JTIwJTIwJTIwJTIwcmVzdGFydCk=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmVzJTNEJTYwJTI0REFFTU9OJTIwLWslMjBwYXJzZSUyMC1mJTIwJTI0Q09ORklHJTIwMiUzRSUyNjElMjAlN0MlMjBncmVwJTIwLW8lMjAlMjJGQVRBTCUzQSUyMC4qJTIyJTYw
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjB0ZXN0JTIwLW4lMjAlMjIlMjRyZXMlMjIlM0I=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGhlbg==
log_failure_msg "$res"
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXhpdCUyMDM=
else
log_daemon_msg "Restarting $DESC" "$NAME"
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc3RvcA==
if start ; then
log_end_msg $?
else
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbG9nX2VuZF9tc2clMjAlMjQlM0Y=
fi
fi
;;
JTIwJTIwJTIwJTIwc3RhdHVzKQ==
status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit 3
;;
JTIwJTIwJTIwJTIwKik=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZWNobyUyMCUyMlVzYWdlJTNBJTIwJTJGZXRjJTJGaW5pdC5kJTJGJTI0TkFNRSUyMCU3QnN0YXJ0JTdDc3RvcCU3Q3JlbG9hZCU3Q2ZvcmNlLXJlbG9hZCU3Q3Jlc3RhcnQlN0NzdGF0dXMlN0QlMjI=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXhpdCUyMDM=
JTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNCJTNC
esac
ZXhpdCUyMDA=
Настройка Squid для автозапуска, обновление конфигурации systemd, запуск и проверка работы службы:
ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ
Добрый вечер! При вводе команды $ sudo apt-get -y build-dep squid3
Выдает:
Чтение списков пакетов… Готово
E: Невозможно найти пакет с исходным кодом для squid3
Как можно это исправить?
Данная статья уже морально устарела.. пожалуйста воспользуйтесь вариантом установки более новой версии Squid — https://jakondo.ru/ustanovka-iz-ishodnikov-proksi-servera-squid-4-6-na-debian-9-stretch/
Добрый день! Спасибо огромное за ваши подробнейшие статьи:)
Подскажите пожалуйста, есть ли нюансы при обновлении squid 3.5.8 до 4.13?
Стоит Ubuntu 14.04
Добрый день! Рад что статьи приносят полезности для других
Не думаю что есть какие то ньюансы при апгрейде версии squid. Скачиваете новую версию, собираете ее, выполняете удаление старой версии Squid, устанавливаете новую. (да, предварительно файл конфигурации старого Squid рекомендую сохранить)
Рекомендую посмотреть мои свежие статьи:
https://jakondo.ru/ustanovka-iz-ishodnikov-proksi-servera-squid-4-6-na-debian-9-stretch/
https://jakondo.ru/perehvat-i-prosmotr-https-trafika-na-proksi-servere-squid-4-9/
«Squid будет у нас работать в обычном режиме. (В идеале хотелось бы конечно работать по прозрачному протоколу, но как только не пытался, не удается завернуть трафик с Mikrotik на Squid на прозрачные порты 80, 443, поэтому я остановился на работе по обычному режиму работы Squid).»
А что такое «обычный режим»? С указанием адреса прокси в браузерах?
Я так понял, что сквид у вас подключен либо к коммутаторы, либо к бриджу микротике, тому же самому, что и вся подсеть. А если пользователи уберут из конфигов браузеров указание ходить через прокси, они же пойдут без контроля? Ведь для этого не нужны права администратора компьютера (если только не используется ослик, а хосты с доменной политикой). При транспарентом режиме мы на бридже могли бы заблокировать обращение к портам 80 и 443, а здесь у нас такой возможности нет.
Вопрос такой, поставил систему Ubuntu 18.04 + squid Version 3.5.27 + поддержка https
все работает и все замечательно, но вот захотел я тут оплатить с сайта билеты и при клике на кнопку оплатить страница улетела в ошибку ))))
по логам смотрю нет с этого ip каких то ошибок и все сайты с кодом 200
Но подозреваю что проблема с ssl сертификтаом.
Какие могут быть нюансы с генерацией сертификата который мы создаем на сервере squid при работе с HTTPS/
Заранее спасибо!
Если честно, то я давно уже не использую https в кальмаре, т.к. мне на текущий момент хватает простого контроля посещения сайтов, а что делаю пользователи конкретно при запросах на https сайты мне не особо интересно.
Не смогу вам помочь в данном вопросе..
Хм.. почему то ругается на сертификат
admen@proxy:~$ /usr/sbin/squid -NCd1
2019/08/09 11:54:59| FATAL: No valid signing certificate configured for HTTPS_port 192.168.1.175:3129
2019/08/09 11:54:59| Squid Cache (Version 4.8): Terminated abnormally.
CPU Usage: 0.011 seconds = 0.008 user + 0.004 sys
Maximum Resident Size: 59328 KB
Page faults with physical i/o: 0
# Путь к списку IP-адресов пользователей, для которых не действуют запреты
acl AdminsIP src «/etc/squid/AdminsIP.txt»
Тут у вас указаны айпишники, а как указать группу из AD, чтобы рулить не конкретными машинами, а авторизованными пользователями?
Вы там выше в комментах где-то писали, что вы управляете группами из AD
Я немного не понял этот момент:
# Подключения через прозрачный порт
http_port 192.168.5.2:3128 intercept options=NO_SSLv3:NO_SSLv2
# Подключение через указания прокси-сервера на стороне клиента
http_port 192.168.5.2:3130 options=NO_SSLv3:NO_SSLv2
# Подключение по HTTPS через прозрачный порт с параметрами подставки сертификата
https_port 192.168.5.2:3129 intercept ssl-bump options=ALL:NO_SSLv3:NO_SSLv2 connection-auth=off cert=/etc/squid/squidca.pem
# Принимаем сертификаты, даже если они не прошли проверку.
А дальше у вас: «В моем случае осталось прописать на ПК пользователей в Свойствах обозревателя, параметры прокси-сервера и проверить работу.»
Так у нас HTTPS заработал или нет?
Щас вот по статье делаю и через настройки на клиентах работает, а по-другому — нет.
Так у вас же за комментирована строка для блокировки сайтов из списка:
# Блокировать запрещенные сайты
# http_access deny BlackList
снимите комментарий перед
http_access deny BlackList
Вот тут:
Измените ковычки с «» на
""
И попробуйте
Замените пожалуйста предыдущий мой комментарий ( не хочу кэширования в яндексе) на
.odnoklassniki.ru
.ok.ru
.vk.me
.vk.com
.vk.ru
.vk.me
.vk.cc
.vkadre.ru
.vkuservideo.net
.facebook.com
.mycdn.me
А ковычкие нормальные , видимо такой текстовый редактор в вродпрессе
Покажите ACL-ы все в конфиге, с виду вроде правильно все.
.odnoklassniki.ru
.ok.ru
.vk.me
.vk.com
.vk.ru
.vk.me
.vk.cc
.vkadre.ru
.vkuservideo.net
.facebook.com
.mycdn.me