🦑 Тестирование конфигурационного файла Squid на наличие синтаксических ошибок |

🦑 Тестирование конфигурационного файла Squid на наличие синтаксических ошибок

Мануал

Я установил прокси-сервер Squid на Ubuntu.

Как мне убедиться, что в моем файле squid.conf нет синтаксических ошибок, и проверить этот файл конфигурации на наличие ошибок?

Где бы вы ни ставили или обновляли прокси-сервер Squid, вы должны убедиться, что ваш файл squid.conf не содержит ошибок.

Это простая задача.

Чтобы проверить файл squid.conf на наличие синтаксических ошибок и предупреждений, введите следующие команды.

Проверка файла конфигурации прокси-сервера Squid на наличие ошибок

Откройте окно терминала и введите следующую команду для удаленного входа на сервер Linux и Unix с помощью команды ssh:

$ ssh mitya@itsecforu

Теперь выполните следующую команду от имени пользователя root:
# squid -k parse
## или используя полный путь ##
$ sudo /usr/sbin/squid3 -k parse
## Отфильтруем ошибки с grep / egrep ##
# squid -k parse | grep 'error'
# squid -k parse | egrep 'foo|bar'

Пример сеанса:

2020/08/08 08:16:42| Startup: Initializing Authentication Schemes ...
2020/08/08 08:16:42| Startup: Initialized Authentication Scheme 'basic'
2020/08/08 08:16:42| Startup: Initialized Authentication Scheme 'digest'
2020/08/08 08:16:42| Startup: Initialized Authentication Scheme 'negotiate'
2020/08/08 08:16:42| Startup: Initialized Authentication Scheme 'ntlm'
2020/08/08 08:16:42| Startup: Initialized Authentication.
2020/08/08 08:16:42| Processing Configuration File: /etc/squid/squid.conf (depth 0)
2020/08/08 08:16:42| Processing: acl mylan src 10.8.0.0/24
2020/08/08 08:16:42| Processing: acl mylan src 172.16.0.0/24
2020/08/08 08:16:42| Processing: acl SSL_ports port 443
2020/08/08 08:16:42| Processing: acl Safe_ports port 80          # http
2020/08/08 08:16:42| Processing: acl Safe_ports port 21          # ftp
2020/08/08 08:16:42| Processing: acl Safe_ports port 443         # https
2020/08/08 08:16:42| Processing: acl Safe_ports port 70          # gopher
2020/08/08 08:16:42| Processing: acl Safe_ports port 210         # wais
2020/08/08 08:16:42| Processing: acl Safe_ports port 1025-65535  # unregistered ports
2020/08/08 08:16:42| Processing: acl Safe_ports port 280         # http-mgmt
2020/08/08 08:16:42| Processing: acl Safe_ports port 488         # gss-http
2020/08/08 08:16:42| Processing: acl Safe_ports port 591         # filemaker
2020/08/08 08:16:42| Processing: acl Safe_ports port 777         # multiling http
2020/08/08 08:16:42| Processing: acl CONNECT method CONNECT
2020/08/08 08:16:42| Processing: http_access deny !Safe_ports
2020/08/08 08:16:42| Processing: http_access deny CONNECT !SSL_ports
2020/08/08 08:16:42| Processing: http_access allow localhost manager
2020/08/08 08:16:42| Processing: http_access deny manager
2020/08/08 08:16:42| Processing: http_access allow localhost
2020/08/08 08:16:42| Processing: http_access allow mylan
2020/08/08 08:16:42| Processing: http_access deny all
2020/08/08 08:16:42| Processing: http_port 10.8.0.1:3128
2020/08/08 08:16:42| Processing: dns_v4_first on
2020/08/08 08:16:42| Processing: tcp_outgoing_address 13.xxx.yyy.zzz
2020/08/08 08:16:42| Processing: cache_mem 256 MB
2020/08/08 08:16:42| Processing: cache_dir diskd /var/spool/squid 1024 16 256 Q1=72 Q2=64
2020/08/08 08:16:42| Processing: access_log daemon:/var/log/squid/access.log squid
2020/08/08 08:16:42| Processing: coredump_dir /var/spool/squid
2020/08/08 08:16:42| Processing: refresh_pattern ^ftp:           1440    20%     10080
2020/08/08 08:16:42| Processing: refresh_pattern ^gopher:        1440    0%      1440
2020/08/08 08:16:42| Processing: refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
2020/08/08 08:16:42| Processing: refresh_pattern (Release|Packages(.gz)*)$      0       20%     2880
2020/08/08 08:16:42| Processing: refresh_pattern .               0       20%     4320
2020/08/08 08:16:42| Processing: forwarded_for delete
2020/08/08 08:16:42| Processing: via off
2020/08/08 08:16:42| Processing: forwarded_for off
2020/08/08 08:16:42| Processing: follow_x_forwarded_for deny all
2020/08/08 08:16:42| Processing: request_header_access X-Forwarded-For deny all
2020/08/08 08:16:42| Processing: forwarded_for delete
2020/08/08 08:16:42| Processing: dns_nameservers 10.8.0.1
2020/08/08 08:16:42| WARNING: HTTP requires the use of Via
2020/08/08 08:16:42| Initializing https:// proxy context

Пример сообщения об ошибке при проверке файла конфигурации Squid на наличие синтаксических ошибок

# squid -k parse

Вывод:

2020/08/08 08:21:07| Processing: viaproxy off
2020/08/08 08:21:07| /etc/squid/squid.conf:40 unrecognized: 'viaproxy'
Отредактируйте файл конфигурации и исправьте эту ошибку:
# vim +40 /etc/squid/squid.conf
Найдите эту ошибку:
viaproxy off
Замените на:
via off
Сохраните и закройте файл.
Теперь проверьте  еще раз:
# squid -k parse
Теперь мы можем перезагрузить наш прокси-сервер squid без перезапуска демона squid следующим образом:
# squid -k reconfigure

Как проверить синтаксис файла конфигурации squid

Всегда полезно запускать команды «squid -k parse» и «squid -k debug» для проверки синтаксической ошибки конфигурации всякий раз, когда вы меняете конфигурацию прокси-сервера.

Обратите внимание, что Squid отказывает запускаться, если обнаружил ошибку.

Если ошибка существует, Squid не будет работать до тех пор, пока системный администратор не исправит синтаксические ошибки.

Другие полезные параметры прокси Squid

Синтаксис:

# squid -k command

или

$ sudo squid -k command

Где command может быть любая команда из следующих:

  • reconfigure: Посылает Squid сигнал HUP для повторного чтения его файлов конфигурации.
  • rotate: ротировать файлы журнала.
  • shutdown: отправляет Squid сигнал TERM, чтобы ненадолго дождаться завершения текущих соединений, а затем завершить работу сервера. Время ожидания указывается параметрами shutdown_lifetime в файле squid.conf.
  • restart: перезапустить сервер
  • interrupt: отправляет сигнал INT серверу Squid. Он немедленно отключается, не дожидаясь текущих подключений.
  • kill: убить прокси-сервер, отправив сигнал KILL.
  • debug: запустить squid в режиме полной отладки.
  • check: отправляет сигнал «ZERO» серверу Squid. Команда просто проверяет, действительно ли сервер / процесс запущен на вашем Linux / Unix / BSD.
  • parse: анализирует файл squid.conf на наличие синтаксических ошибок.

Заключение

Вы узнали, как анализировать файл конфигурации прокси-сервера Squid, затем отправлять сигнал в запущенную копию и выходить из интерфейса командной строки.

Это полезно для проверки синтаксических ошибок в squid.conf и других файлах.

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий