Участник:Petr-akhlamov/Test

Материал из ALT Linux Wiki
Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.
Примечание: Пожалуйста, обратите внимание, что страница в разработке. Информация может быть неполной и не достоверной.

Тестирование и диагностика Samba и ActiveDirectory

Проверка постоянства имени компьютера (Check hostname persistance) +

Постоянство имени компьютера - это сохранение имени компьютера после перезагрузки.

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

Следующая команда покажет временное (не сохраненное) имя:

$ hostname

А данная постоянное:

$ hostnamectl --static

Если вывод команд различаются, то измененное имя не сохранится.

Проверка имени хоста в FQDN [не короткое] (Test hostname is FQDN [not short])

FQDN (от англ. Fully Qualified Domain Name — «полностью определённое имя домена», иногда сокращается до «полное имя домена») — имя домена, не имеющее неоднозначностей в определении.

test_hostname()
{
    local host="$HOSTNAME_COMMON"
    echo $host
    echo
    test "$host" != "${host/.}" || return 2
}

Если значение:

  • 0, то ...
  • 2, то ...

Метод аутентификации системы (System authentication method) +

Проверить метод входа в систему можно тремя командами:

# /usr/sbin/control system-auth
# readlink -f /etc/pam.d/system-auth
# cat /etc/pam.d/system-auth

Первая команда отобразит:

  • local - если у Вас локальные учетные записи
  • sss - если у Вас доменные учетные записи через Samba

Вторая команда отобразит:

  • /etc/pam.d/system-auth-local - если у Вас локальные учетные записи
  • /etc/pam.d/system-auth-sss - если у Вас доменные учетные записи через Samba

Третья команда отобразит:

  • политики со значениями system-auth-local-only и system-auth-common - если у Вас локальные учетные записи
  • политики со значениями pam_permit.so, system-auth-sss-only, system-auth-local-only и system-auth-common - если у Вас доменные учетные записи через Samba

Методы системных политик (System policy method) +

Чтобы узнать, какие системные политики применяются, локальные или удаленные, нужно выполнить три команды:

/usr/sbin/control system-policy
readlink -f /etc/pam.d/system-policy
cat /etc/pam.d/system-policy

По результатам этих команд можно определить тип политик.

Если команды вывели:

  • remote
  • /etc/pam.d/system-policy-remote
#%PAM-1.0
session required pam_mkhomedir.so silent

То, политики доменные.

Если команды вывели:

  • local
  • /etc/pam.d/system-policy-local
#%PAM-1.0

То, политики локальные.

Включение системных групповых политик (System group policy enabled)

test -n "$SYSTEM_POLICY" ||
       SYSTEM_POLICY=local
   _command /usr/sbin/control system-policy
   _command test "$SYSTEM_POLICY" == "gpupdate" || return 2

Проверка существующих настроек Kerberos (Check Kerberos configuration exists)

   local retval=0
   _command ls -l /etc/krb5.conf
   if ! test -e /etc/krb5.conf; then
       is_system_auth_local && retval=2 || retval=1
   else
       _command -x cat /etc/krb5.conf
   fi
   return $retval

Статус кеша учетных данных Kerberos (Kerberos credential cache status)

local ccache=
   ccache=$(/usr/sbin/control krb5-conf-ccache)
   _command /usr/sbin/control krb5-conf-ccache
   test -n "$ccache" -a "$ccache" != "unknown"

Использование связки ключей в качестве кеша учетных данных Kerberos (Using keyring as kerberos credential cache)

 local ccache=
   ccache=$(/usr/sbin/control krb5-conf-ccache)
   _command /usr/sbin/control krb5-conf-ccache
   _command test -n "$ccache" -a "$ccache" == "keyring" || return 2

Проверка состояния поиска DNS kerberos KDC (Check DNS lookup kerberos KDC status)

local retval=0
   echo -n "/etc/krb5.conf: dns_lookup_kdc "
   if grep -q '^\s*dns_lookup_kdc\s*=\s*\([Tt][Rr][Uu][Ee]\|1\|[Yy][Ee][Ss]\)\s*$' /etc/krb5.conf; then
       echo "is enabled"
   else
       if grep -q '^\s*dns_lookup_kdc\s*=' /etc/krb5.conf; then
           echo "is disabled"
           retval=1
       else
           echo "is enabled by default"
           retval=2
       fi
   fi
   echo
   return $retval

Проверка существования кэша учетных данных компьютера (Check machine crendetial cache is exists) +

ls -l /etc/krb5.keytab

Если файл будет найден, кэш доменных учетных данных существует, если нет, то используются локальные учетные записи.

Проверка списка учетных данных компьютера в keytab-файле (Check machine credentials list in keytab) +

# klist -ke

Проверка конфигурации преобразователя имен (Check nameserver resolver configuration) +

Следующие команды проверят наличие конфигурационного файла преобразователя имен (resolv.conf) и выведут его содержимое.

$ ls -l /etc/resolv.conf
$ cat /etc/resolv.conf

Сравнение мира[i] krb5 и первого поискового домена (Compare krb5 realm and first search domain)


Проверка конфигурации Samba (Check Samba configuration) +

ls -l /etc/samba/smb.conf
grep -v -e "'^\s*[#;]'" -e "'^\s*$'" /etc/samba/smb.conf
testparm -l -s

Сравнение миров [i] Samba и krb5 (Compare Samba and krb5 realms)


Проверка мира[i] домена Samba (Check Samba domain realm)


Проверка хост-имени доменного имени FQDN (Check hostname FQDN domainname)


Проверка статуса синхронизации времени (Check time synchronization) +

$ timedatectl

Смотрим значение строки System clock synchronized.

Проверка, включена ли синхронизация времени (Time synchronization enabled) +

$ timedatectl show -p NTPSynchronized --value

Если результатом команды будет yes - синхронизация включена, если no - то выключена.

Проверка доступности серверов имен (Check nameservers availability)


Вывод списка контроллеров домена (Check domain controllers list) +

Следующая команда выведет список контроллеров в указанном домене (в примере domain.ru):

host -t srv _ldap._tcp.domain.ru | cut -d ' ' -f 8

Проверка записей Kerberos и LDAP SRV (Check Kerberos and LDAP SRV-records)+

$ host -t srv "_kerberos._udp.domain.ru."
$ host -t srv "_ldap._tcp.domain.ru."

Где domain.ru - Ваш домен.

Вы должны получить ответ со списком всех контроллеров домена в Вашей сети:

$ host -t srv "_kerberos._udp.domain.ru."
_kerberos._udp.domain.ru has SRV record 0 100 88 samba.domain.ru.
_kerberos._udp.domain.ru has SRV record 0 100 88 dc2.domain.ru.
_kerberos._udp.domain.ru has SRV record 0 100 88 ad-replice.domain.ru.
$ host -t srv "_ldap._tcp.domain.ru."
_ldap._tcp.domain.ru has SRV record 0 100 389 samba.domain.ru.
_ldap._tcp.domain.ru has SRV record 0 100 389 ad-replice.domain.ru.
_ldap._tcp.domain.ru.ru has SRV record 0 100 389 dc2.domain.ru.

Сравнение имени NetBIOS и имени хоста (Compare NetBIOS name and hostname)

compare_netbios_name()
{
    local netbios=
    local host=
    netbios=$(echo "$SMB_NETBIOS_NAME" | tr '[:upper:]' '[:lower:]')
    host=$(echo "$HOSTNAME_SHORT" | tr '[:upper:]' '[:lower:]')

    echo "SMB_NETBIOS_NAME = '$SMB_NETBIOS_NAME'"
    echo "HOSTNAME_SHORT = '$HOSTNAME_SHORT'"
    echo
    test "$netbios" = "$host" || return 1
}

Проверка общих пакетов (Check common packages) +

Чтобы проверить, что у Вас установлены все общие пакеты, выполните следующие команды:

# rpm -q alterator-auth
# rpm -q libnss-role
# rpm -q libkrb5
# rpm -q libsmbclient

Все вышеуказанные пакеты должны быть установлены.

Проверка пакетов групповых политик (Check group policy packages) +

 # rpm -q local-policy
 # rpm -q gpupdate

Если обе команды сработают, то у Вас установлены пакеты для групповых политик.

Проверка пакетов SSSD AD (Check SSSD AD packages) +

# rpm -q task-auth-ad-sssd

Если команда сработает, то у Вас используется Samba с AD-SSSD.

Проверка пакетов SSD Winbind (Check SSSD Winbind packages) +

# rpm -q task-auth-ad-winbind

Если команда сработает, то у Вас используется Samba с WinBind.