service:squid
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
service:squid [06.10.2023 12:19] – [Ошибки] viacheslav | service:squid [30.07.2024 19:21] (текущий) – внешнее изменение 127.0.0.1 | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Squid ====== | ||
+ | Задача: | ||
+ | |||
+ | ===== На контроллере домена ===== | ||
+ | FIXME **- для LDAP учётки не надо, LDAP вообще надо выкинуть и забыть про него. По поводу пароля для учётки - неплохо бы генерировать случайный пароль прямо из ktpass.** | ||
+ | |||
+ | Создаётся 2 учётки - одна для Kerberos, вторая для LDAP. Учётка Kerberos связана с сервером squid, поэтому удобнее называть её с включением имени сервера в имя учётки, | ||
+ | |||
+ | Весьма рекомендуется включить LDAPS в домене, | ||
+ | |||
+ | Керберос на сквиде работает через файл .keytab, который создаётся на контроллере домена. | ||
+ | <code powershell> | ||
+ | # Создать keytab-файл для работы с Kerberos | ||
+ | # Запросить пароль во время создания ключа, при вооде отображаться не будет | ||
+ | ktpass -princ HTTP/ | ||
+ | # Посмотреть присвоенные SPN учётке sa_proxy | ||
+ | setspn -L sa_proxy | ||
+ | </ | ||
+ | Параметр -pass может сам задавать пароль учётке, | ||
+ | |||
+ | https:// | ||
+ | https:// | ||
+ | |||
+ | Скопировать полученный файл на сервер Squid (WinSCP и т. п.). Этот файл критически важен, при малейшей компрометации необходимо пересоздавать его, менять пароли и т. п. | ||
+ | |||
+ | ==== Несколько SPN у одной учётки ==== | ||
+ | FIXME** - плохая практика. SPN у учётки должен быть один.** | ||
+ | |||
+ | С помощью setspn можно сделать несколько SPN у одной учётки, | ||
+ | |||
+ | 2nd command to add additional SPN to same keytab file with options **-mapOp add** and also you need to use **-in** and **-out** options. | ||
+ | |||
+ | <color # | ||
+ | |||
+ | Then the second SPN is added without updating kvno (using -in option the second SPN is added to the first one and the resulting keytab file contains both SPNs). The command also needs the previous option (-setpass) to avoid the increment of the kvno and the invalidation of the previous keytab. Basically using the command is executed using -setpass and -setupn, those options inform to not update the account password and the principal name respectively but the former has the collateral effect of not changing the kvno (the previous keytab is still valid) | ||
+ | |||
+ | <color # | ||
+ | </ | ||
+ | |||
+ | The password of the account for which the keytab file will be generated will be reset with the provided value. **Unless specified otherwise with the parameter -SetPass.** | ||
+ | |||
+ | If the userPrincipalName of the account in Active Directory is different than the one specified in the command line, then it will be updated. **Unless you set the parameter -SetUPN.** | ||
+ | |||
+ | https:// | ||
+ | |||
+ | <code powershell> | ||
+ | ktpass -princ HTTP/ | ||
+ | </ | ||
+ | [[https:// | ||
+ | |||
+ | ===== На сервере squid ===== | ||
+ | ==== Примерная настройка сети ==== | ||
+ | / | ||
+ | <code bash> | ||
+ | network: | ||
+ | ethernets: | ||
+ | eth0: | ||
+ | addresses: | ||
+ | - 192.168.1.254/ | ||
+ | nameservers: | ||
+ | addresses: | ||
+ | - 192.168.1.1 | ||
+ | - 192.168.1.2 | ||
+ | - 192.168.1.3 | ||
+ | search: | ||
+ | - domain.ru | ||
+ | eth1: | ||
+ | addresses: | ||
+ | - 10.1.0.254/ | ||
+ | gateway4: 10.1.0.1 | ||
+ | version: 2 | ||
+ | </ | ||
+ | |||
+ | ==== Установка, | ||
+ | |||
+ | <code bash> | ||
+ | apt install squid krb5-user libsasl2-modules-gssapi-mit ldap-utils | ||
+ | |||
+ | # Права на keytab-файл | ||
+ | chown proxy:proxy / | ||
+ | chmod 440 / | ||
+ | |||
+ | # Проверка Kerberos - получение билета | ||
+ | kinit -kV -p HTTP/ | ||
+ | # Удалить билет | ||
+ | kdestroy | ||
+ | </ | ||
+ | https:// | ||
+ | https:// | ||
+ | |||
+ | ==== Для использования NTLM совместно с Kerberos ==== | ||
+ | <code bash> | ||
+ | # Install Samba and Winbind | ||
+ | apt install samba winbind samba-common-bin | ||
+ | # Stop the samba and winbind daemons | ||
+ | systemctl stop smb winbind | ||
+ | # edit / | ||
+ | cp / | ||
+ | nano / | ||
+ | </ | ||
+ | |||
+ | <file / | ||
+ | [global] | ||
+ | workgroup = DOMAIN | ||
+ | security = ads | ||
+ | realm = DOMAIN.RU | ||
+ | |||
+ | winbind uid = 10000-20000 | ||
+ | winbind gid = 10000-20000 | ||
+ | winbind use default domain = yes | ||
+ | winbind enum users = yes | ||
+ | winbind enum groups = yes | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | # Now join the proxy to the domain. | ||
+ | net ads join -U Administrator | ||
+ | # Start samba and winbind and test acces to the domain. | ||
+ | wbinfo -t | ||
+ | |||
+ | # This command should output something like this: | ||
+ | checking the trust secret for domain EXAMPLE via RPC calls succeeded | ||
+ | wbinfo -a EXAMPLE\\testuser%' | ||
+ | # Output should be similar to this. | ||
+ | plaintext password authentication succeeded | ||
+ | challenge/ | ||
+ | |||
+ | # Set Permissions so the proxy user account can read / | ||
+ | gpasswd -a proxy winbindd_priv | ||
+ | |||
+ | # append the following to cron to regularly change the computer account password (Samba might do this automatically, | ||
+ | # change the computer account PROXY password in AD | ||
+ | 5 4 * * * | ||
+ | |||
+ | </ | ||
+ | https:// | ||
+ | |||
+ | В '' | ||
+ | <file / | ||
+ | auth_param negotiate program / | ||
+ | </ | ||
+ | ==== / | ||
+ | |||
+ | < | ||
+ | [libdefaults] | ||
+ | default_realm = DOMAIN.RU | ||
+ | default_keytab_name = / | ||
+ | |||
+ | [realms] | ||
+ | DOMAIN.RU = { | ||
+ | kdc = vmws-dc1.domain.ru | ||
+ | kdc = vmws-dc2.domain.ru | ||
+ | kdc = ws-dc3.domain.ru | ||
+ | admin_server = ws-dc3.domain.ru | ||
+ | default_domain = domain.ru | ||
+ | } | ||
+ | |||
+ | [domain_realm] | ||
+ | .domain.ru = DOMAIN.RU | ||
+ | domain.ru = DOMAIN.RU | ||
+ | </ | ||
+ | |||
+ | ==== / | ||
+ | <code bash> | ||
+ | # Аутентификация Kerberos | ||
+ | # auth_param negotiate program / | ||
+ | auth_param negotiate program / | ||
+ | auth_param negotiate children 300 startup=50 idle=10 | ||
+ | auth_param negotiate keep_alive on | ||
+ | |||
+ | # Аутентификация Basic | ||
+ | auth_param basic program / | ||
+ | auth_param basic children 20 startup=10 idle=5 | ||
+ | auth_param basic realm proxy | ||
+ | # auth_param basic credentialsttl 9 hours | ||
+ | |||
+ | # Авторизация по группам через Kerberos. Справка по хэлперу: | ||
+ | external_acl_type ext_anon_access grace=15 %LOGIN / | ||
+ | external_acl_type ext_blocked_access grace=15 %LOGIN / | ||
+ | external_acl_type ext_restricted_access grace=15 %LOGIN / | ||
+ | external_acl_type ext_full_access grace=15 %LOGIN / | ||
+ | external_acl_type ext_standard_access grace=15 %LOGIN / | ||
+ | external_acl_type ext_vk_access grace=15 %LOGIN / | ||
+ | |||
+ | |||
+ | ################################################################ | ||
+ | ### acl (http:// | ||
+ | ### https:// | ||
+ | ################################################################ | ||
+ | # Авторизованные пользователи | ||
+ | acl auth_users proxy_auth REQUIRED | ||
+ | # Списки доступа по группам | ||
+ | acl anon_access | ||
+ | acl blocked_access | ||
+ | acl restricted_access | ||
+ | acl full_access | ||
+ | acl standard_access | ||
+ | # Без авторизации | ||
+ | acl unauth_access | ||
+ | # Доступ ко Вконтакте | ||
+ | acl vk_access | ||
+ | |||
+ | ### Сайты | ||
+ | # Заблокированные сайты, которые не пишутся в логи (например, | ||
+ | acl | ||
+ | # Разрешённые сайты для restricted_access (кому запрещено всё остальное) | ||
+ | acl | ||
+ | # Заблокированные сайты для стандартного доступа | ||
+ | acl | ||
+ | # Сайты, куда можно всем без авторизации | ||
+ | acl | ||
+ | # Нелогируемые сайты | ||
+ | acl | ||
+ | # Некэшируемые сайты | ||
+ | acl | ||
+ | # Сайты Вконтакте | ||
+ | acl | ||
+ | |||
+ | ### Локальные сети | ||
+ | acl | ||
+ | # Доступ к статистике | ||
+ | acl | ||
+ | |||
+ | ### Порты | ||
+ | acl | ||
+ | # 9443 - Сбербанк-бизнес, | ||
+ | acl | ||
+ | acl | ||
+ | |||
+ | ################################################################ | ||
+ | ### Правила (http:// | ||
+ | ################################################################ | ||
+ | # Доступ к серверу только из локальных сетей | ||
+ | http_access allow localhost to_localhost | ||
+ | http_access deny !localnet to_localhost | ||
+ | # | ||
+ | # Разрешить подключение к только к указанным портам (стандартная настройка) | ||
+ | http_access deny !Safe_ports | ||
+ | http_access deny CONNECT !SSL_ports | ||
+ | # Доступ к статистике (стандартная настройка), | ||
+ | # https:// | ||
+ | http_access allow localhost manager | ||
+ | http_access allow stat_access manager | ||
+ | http_access deny manager | ||
+ | # Разрешить трафик с локалхоста | ||
+ | http_access allow localhost | ||
+ | # Запретить доступ к сайтам и не логировать их | ||
+ | http_access deny nolog_blocked_sites | ||
+ | # Не кэшировать nocache_sites | ||
+ | cache deny nocache_sites | ||
+ | # Разрешить доступ к определённым сайтам и серверам без авторизации | ||
+ | http_access allow nolog_sites | ||
+ | http_access allow unrestricted_sites | ||
+ | # IP (исходящие) с доступом без авторизации | ||
+ | http_access allow unauth_access | ||
+ | # Далее запрещаем весь неавторизованный доступ | ||
+ | http_access deny !auth_users | ||
+ | # Заблокированные пользователи | ||
+ | http_access deny blocked_access | ||
+ | # Доступ группе анонимусов и полный доступ | ||
+ | http_access allow anon_access | ||
+ | http_access allow full_access | ||
+ | # Ограниченный доступ - только к разрешённым сайтам | ||
+ | http_access allow restricted_access allowed_sites | ||
+ | # Доступ к Вконтакте | ||
+ | http_access allow vk_access vk_sites | ||
+ | # Стандартный доступ, | ||
+ | http_access allow standard_access !blocked_sites | ||
+ | # Нижнее правило - блокировать всё, что не разрешено выше | ||
+ | http_access deny all | ||
+ | |||
+ | ################################################################ | ||
+ | ### Прочие настройки | ||
+ | ################################################################ | ||
+ | # http:// | ||
+ | http_port 3128 | ||
+ | # http:// | ||
+ | access_log daemon:/ | ||
+ | # http:// | ||
+ | httpd_suppress_version_string on | ||
+ | # http:// | ||
+ | visible_hostname proxy.domain.ru | ||
+ | # http:// | ||
+ | error_directory / | ||
+ | # http:// | ||
+ | error_default_language ru | ||
+ | # http:// | ||
+ | dns_v4_first on | ||
+ | # WARNING! Your cache is running out of filedescriptors | ||
+ | # https:// | ||
+ | # https:// | ||
+ | # http:// | ||
+ | max_filedescriptors 8192 | ||
+ | # Limit connections from a single IP | ||
+ | # http:// | ||
+ | client_ip_max_connections 150 | ||
+ | ### Anonymizing traffic | ||
+ | # http:// | ||
+ | forwarded_for delete | ||
+ | via off | ||
+ | |||
+ | ################## | ||
+ | ### Cache | ||
+ | ################## | ||
+ | # http:// | ||
+ | # cachemgr_passwd P@ssw0rd all | ||
+ | cachemgr_passwd disable config offline_toggle shutdown | ||
+ | cache_mgr proxy@domain.ru | ||
+ | |||
+ | # http:// | ||
+ | cache_mem 1 GB | ||
+ | # http:// | ||
+ | maximum_object_size_in_memory 2 MB | ||
+ | # http:// | ||
+ | cache_dir ufs / | ||
+ | # http:// | ||
+ | maximum_object_size 100 MB | ||
+ | </ | ||
+ | |||
+ | Применение настроек Squid: | ||
+ | <code bash> | ||
+ | squid -k reconfigure | ||
+ | </ | ||
+ | |||
+ | http:// | ||
+ | http:// | ||
+ | https:// | ||
+ | |||
+ | ==== Кэш ==== | ||
+ | <code bash> | ||
+ | # Создать каталоги под кэш | ||
+ | mkdir / | ||
+ | chown proxy:proxy / | ||
+ | squid -z | ||
+ | </ | ||
+ | |||
+ | ==== WARNING! Your cache is running out of filedescriptors ==== | ||
+ | Предупреждение в cache.log после подачи нагрузки на прокси (примерно 350 человек). | ||
+ | Решение: | ||
+ | <code bash> | ||
+ | # добавить строку в / | ||
+ | * – nofile 8192 | ||
+ | # добавить в / | ||
+ | max_filedescriptors 8192 | ||
+ | # перечитать конфиг | ||
+ | squid -k reconfigure | ||
+ | </ | ||
+ | https:// | ||
+ | https:// | ||
+ | http:// | ||
+ | |||
+ | ==== Высокая загрузка процессора при использовании auth_param negotiate ==== | ||
+ | > Kerberos can keep a replay cache to detect the reuse of Kerberos | ||
+ | > possible | ||
+ | > proxy authentication requests the replay cache checks can create high CPU load. If the | ||
+ | > environment | ||
+ | > based Kerberos implementations by adding the below to the startup script | ||
+ | |||
+ | < | ||
+ | auth_param negotiate program / | ||
+ | </ | ||
+ | ===== lightsquid ===== | ||
+ | http:// | ||
+ | |||
+ | ==== Установка ==== | ||
+ | <code bash> | ||
+ | # Требования | ||
+ | apt install apache2 perl libcgi-session-perl libgd-perl # | ||
+ | wget https:// | ||
+ | mkdir / | ||
+ | tar xzf lightsquid-1.8.tgz --strip=1 -C / | ||
+ | chown -R www-data: | ||
+ | |||
+ | nano / | ||
+ | < | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | |||
+ | nano / | ||
+ | </ | ||
+ | http:// | ||
+ | |||
+ | ==== Файл преобразований имён ==== | ||
+ | / | ||
+ | Ссылка на этот файл должна быть в конфиге lightsquid, чтобы корректно работало отображение имён и групп. Взял из интернета как есть, работает нормально. | ||
+ | <code bash> | ||
+ | # | ||
+ | #do nothing | ||
+ | #simple version | ||
+ | |||
+ | use Socket; | ||
+ | |||
+ | sub StartIp2Name() { | ||
+ | } | ||
+ | |||
+ | sub Ip2Name($$$) { | ||
+ | # $Lhost, | ||
+ | my ($ip, $user) = @_; | ||
+ | return $user if $user ne " | ||
+ | if (!defined $hIP{$ip}) { | ||
+ | |||
+ | my $iaddr = inet_aton($ip); | ||
+ | my $user = scalar gethostbyaddr($iaddr, | ||
+ | $user =~ s/\..+$// if defined $user; | ||
+ | $user = uc($user) if defined $user; | ||
+ | |||
+ | # if gethostbyaddr failed to get host, use ip | ||
+ | $user = $ip unless defined $user; | ||
+ | |||
+ | $hIP{$ip}=$user; | ||
+ | } | ||
+ | return $hIP{$ip}; | ||
+ | |||
+ | } | ||
+ | |||
+ | sub StopIp2Name() { | ||
+ | } | ||
+ | |||
+ | #warning !!! | ||
+ | 1; | ||
+ | |||
+ | </ | ||
+ | https:// | ||
+ | |||
+ | ==== Формирование списков пользователей и групп ==== | ||
+ | / | ||
+ | |||
+ | Идея в получении всей информации из AD и автоматическом формировании списков. Необходимо иметь номера подразделений в атрибуте departmentNumber, | ||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | |||
+ | realnamecfgUTF8="/ | ||
+ | realnamecfg="/ | ||
+ | groupcfgUTF8="/ | ||
+ | groupcfg="/ | ||
+ | rm -f $realnamecfgUTF8 $realnamecfg $groupcfgUTF8 $groupcfg && touch $realnamecfgUTF8 $realnamecfg $groupcfgUTF8 $groupcfg | ||
+ | |||
+ | kinit HTTP/ | ||
+ | |||
+ | for i in `ldapsearch -H ldap:// | ||
+ | do | ||
+ | nameRaw=`ldapsearch -H ldap:// | ||
+ | depRaw=`ldapsearch -H ldap:// | ||
+ | depNum=`ldapsearch -H ldap:// | ||
+ | |||
+ | if [[ $nameRaw =~ '::' | ||
+ | then | ||
+ | name=`echo $nameRaw |sed " | ||
+ | else | ||
+ | name=`echo $nameRaw |sed " | ||
+ | fi | ||
+ | |||
+ | if [[ $depRaw =~ '::' | ||
+ | then | ||
+ | dep=`echo $depRaw |sed " | ||
+ | else | ||
+ | dep=`echo $depRaw |sed " | ||
+ | fi | ||
+ | |||
+ | loginLow=`echo $i |tr " | ||
+ | if [[ $depNum =~ [0-9] ]] | ||
+ | then | ||
+ | login=`echo " | ||
+ | echo -e " | ||
+ | else | ||
+ | login=`echo " | ||
+ | fi | ||
+ | |||
+ | |||
+ | #echo -e " | ||
+ | #echo -e " | ||
+ | #echo -e " | ||
+ | |||
+ | echo -e " | ||
+ | |||
+ | done | ||
+ | |||
+ | iconv -f utf-8 -t cp1251 -o $realnamecfg $realnamecfgUTF8 | ||
+ | iconv -f utf-8 -t cp1251 -o $groupcfg $groupcfgUTF8 | ||
+ | </ | ||
+ | ldapsearch выдаёт результаты с двумя двоеточиями, | ||
+ | |||
+ | https:// | ||
+ | https:// | ||
+ | https:// | ||
+ | |||
+ | |||
+ | ==== / | ||
+ | <code bash> | ||
+ | # lightparser reads logs 3 times an hour | ||
+ | 19,39,59 * * * * root / | ||
+ | |||
+ | # users and groups lists creation for lightparser | ||
+ | 0 23 * * * root / | ||
+ | </ | ||
+ | |||
+ | ===== Контроль доступа к Apache ===== | ||
+ | В куче источников используют libapache2-mod-auth-kerb, | ||
+ | <code bash> | ||
+ | apt install libapache2-mod-auth-gssapi | ||
+ | # Для сертификата надо в качестве FQDN указывать " | ||
+ | # иначе Керберос не будет работать, | ||
+ | # Если заходить на https:// | ||
+ | openssl req -x509 -sha256 -nodes -days 3650 -newkey rsa:4096 -keyout / | ||
+ | chmod 0600 / | ||
+ | a2enmod ssl authnz_ldap | ||
+ | a2ensite | ||
+ | </ | ||
+ | |||
+ | ==== / | ||
+ | <code bash> | ||
+ | < | ||
+ | ServerAdmin webmaster@localhost | ||
+ | ServerName proxy | ||
+ | DocumentRoot / | ||
+ | |||
+ | Redirect / https:// | ||
+ | |||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== / | ||
+ | <code bash> | ||
+ | < | ||
+ | < | ||
+ | ServerAdmin webmaster@localhost | ||
+ | ServerName proxy | ||
+ | |||
+ | DocumentRoot / | ||
+ | |||
+ | ErrorLog ${APACHE_LOG_DIR}/ | ||
+ | CustomLog ${APACHE_LOG_DIR}/ | ||
+ | |||
+ | SSLEngine on | ||
+ | SSLCertificateFile | ||
+ | SSLCertificateKeyFile / | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | |||
+ | # Set Forward Secrecy | ||
+ | SSLProtocol -all +TLSv1.2 +TLSv1.3 | ||
+ | SSLHonorCipherOrder on | ||
+ | SSLCipherSuite HIGH: | ||
+ | # Strict transport security | ||
+ | < | ||
+ | Header always set Strict-Transport-Security " | ||
+ | Header always set Referrer-Policy " | ||
+ | </ | ||
+ | # Stapling | ||
+ | SSLUseStapling on | ||
+ | |||
+ | # Default settings | ||
+ | < | ||
+ | SSLOptions +StdEnvVars | ||
+ | </ | ||
+ | < | ||
+ | SSLOptions +StdEnvVars | ||
+ | </ | ||
+ | |||
+ | # Keytab можно не указывать, | ||
+ | # Если не сработает прозрачная, | ||
+ | < | ||
+ | AuthType GSSAPI | ||
+ | AuthName "Enter your login and password" | ||
+ | # GssapiCredStore keytab:/ | ||
+ | GssapiBasicAuth On | ||
+ | AuthLDAPUrl ldap:// | ||
+ | AuthLDAPBindDN CN=sa_ldap, | ||
+ | AuthLDAPBindPassword VerySecurePasswordHere123456 | ||
+ | Require ldap-group CN=GRP-Inet-Stat, | ||
+ | </ | ||
+ | |||
+ | </ | ||
+ | SSLStaplingCache shmcb:/ | ||
+ | </ | ||
+ | </ | ||
+ | https:// | ||
+ | https:// | ||
+ | https:// | ||
+ | |||
+ | ===== Мониторинг ===== | ||
+ | Штатная страница статуса - ''/ | ||
+ | Может быть запрошена из командной строки | ||
+ | <code bash> | ||
+ | # Список страниц | ||
+ | squidclient mgr:menu | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | </ | ||
+ | |||
+ | <code bash> | ||
+ | # Используемые дескрипторы (Shell parameter expansion для обработки строки) | ||
+ | fd=`squidclient mgr:info |grep ' | ||
+ | </ | ||
+ | ===== Прочее ===== | ||
+ | ==== Проверка соединения с интернетом Windows ==== | ||
+ | Называется Microsoft NCSI или Network Connectivity Status Indicator. Чтобы это работало через прокси, | ||
+ | < | ||
+ | .msftconnecttest.com | ||
+ | .msftncsi.com | ||
+ | </ | ||
+ | https:// | ||
+ | |||
+ | ==== Показать список пользователей в access.log ==== | ||
+ | <code bash> | ||
+ | cat / | ||
+ | </ | ||
+ | |||
+ | ===== Ошибки ===== | ||
+ | Типичные ошибки в логах: | ||
+ | |||
+ | * <color # | ||
+ | * <color # | ||
+ | * <color # | ||
+ | * <color # | ||
+ | * <color # | ||
+ | * <color # | ||
+ | Keytab name: FILE:/ | ||
+ | KVNO Principal | ||
+ | ---- -------------------------------------------------------------------------- | ||
+ | 5 HTTP/ | ||
+ | 5 HTTP/ | ||
+ | 5 HTTP/ | ||
+ | 5 HTTP/ | ||
+ | 5 HTTP/ | ||
+ | |||
+ | $ kinit -k -t / | ||
+ | $ kvno HTTP/ | ||
+ | HTTP/ | ||
+ | * <color # | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | ===== Литература ===== | ||
+ | |||
+ | [[https:// | ||
+ | [[https:// | ||
+ | [[https:// | ||
+ | [[https:// | ||
+ | |||