Linux синхронизация времени с контроллером домена windows

Зачастую возникает необходимость ввести Linux-машину в существующий домен Windows. Например, чтобы сделать файловый сервер с помощью Samba. Сделать это очень просто, для этого вам понадобятся клиент Kerberos, Samba и Winbind.

Содержание

Введение

Зачастую возникает необходимость ввести Linux-машину в существующий домен Windows. Например, чтобы сделать файловый сервер с помощью Samba. Сделать это очень просто, для этого вам понадобятся клиент Kerberos, Samba и Winbind.

Перед установкой желательно обновиться:

sudo aptitude update
sudo aptitude upgrade

Установить всё это добро можно командой:

sudo aptitude install krb5-user samba winbind 

Также может понадобиться установить следующие библиотеки:

sudo aptitude install libpam-krb5 libpam-winbind libnss-winbind

Либо, если вы используете Ubuntu Desktop, те же пакеты можно поставить через менеджер пакетов Synaptic.

Далее вам потребуется настроить все вышеперечисленные инструменты для работы с вашим доменом. Допустим, вы хотите войти в домен DOMAIN.COM, доменконтроллером которого является сервер dc.domain.com с IP адресом 192.168.0.1. Этот же сервер является и первичным DNS сервером домена. Кроме того допустим у вас есть второй доменконтроллер1), он же DNSdc2.domain.com с IP 192.168.0.2. Ваш же компьютер будет называться smbsrv01.

Настройка DNS

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

Если у вас статический IP-адрес, то в Ubuntu Desktop это можно сделать через Network Manager, в Ubuntu Server необходимо изменить содержимое файла /etc/resolv.conf на примерно такое:

domain domain.com
search domain.com
nameserver 192.168.0.1
nameserver 192.168.0.2

В современных дистрибутивах файл resolv.conf создается автоматически и править вручную его не нужно.
Для получение нужного результата нужно добавить необходимые изменения в файл: /etc/resolvconf/resolv.conf.d/head
Данные которые будут добавлены в него, будут автоматически вставлены в файл /etc/resolv.conf

Если IP-адрес динамический и присваивается DHCP сервером то после перезагрузки resolv.conf может формироваться «неправильный» resolv.conf’ , например присутствует только один nameserver 192.168.0.1 и не указаны domain и search. Нужно отредактировать /etc/dhcp/dhclient.conf. Чтобы появились записи domain и search нужно убрать комментарий перед строкой supersede domain-name, и вписать свой домен:

supersede domain-name "domain.com";

Чтобы добавить еще один nameserver нужно убрать комментарий перед prepend domain-name-servers и указать ip сервера:

prepend domain-name-servers 192.168.0.2;

Для применения изменений остается перезапустить службу:

/etc/init.d/networking restart

Теперь убедитесь, что вы задали нужное имя компьютера в файле /etc/hostname:

smbsrv01

Кроме того необходимо отредактировать файл /etc/hosts так, чтобы в нём была запись с полным доменным именем компьютера и обязательно коротким именем хоста, ссылающаяся на один из внутренних IP:

# Имена этого компьютера
127.0.0.1	localhost
127.0.1.1	smbsrv01.domain.com	smbsrv01

Сразу нужно проверить что нормально пингуется наш контроллер домена, по короткому и полному имени, чтобы в будушем не получать ошибки что контроллер домена не найден:

ping dc
ping dc.domain.com

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

Настройка синхронизации времени

Далее необходимо настроить синхронизацию времени с доменконтроллером. Если разница будет более 5 минут мы не сможем получить лист от Kerberos.
Для единовременной синхронизации можно воспользоваться командой:

sudo net time set dc

Если в сети существует сервер точного времени, то можно воспользоваться им или любым публичным:

ntpdate ntp.mobatime.ru

Автоматическая же синхронизация настраивается с помощью ntpd, это демон будет периодически выполнять синхронизацию. Для начала его необходимо установить:

sudo aptitude install ntp

Теперь исправьте файл /etc/ntp.conf, добавив в него информацию о вашем сервере времени:

# You do need to talk to an NTP server or two (or three).
server dc.domain.com

После чего перезапустите демон ntpd:

sudo /etc/init.d/ntp restart

Теперь пора настраивать непосредственно взаимодействие с доменом.

Настройка авторизации через Kerberos

Начнём с настройки авторизации в домене через протокол Kerberos. Вам потребуется изменить файл /etc/krb5.conf. В общем случае он выглядит так:

[libdefaults]
	default_realm = DOMAIN.COM
	kdc_timesync = 1
	ccache_type = 4
	forwardable = true
	proxiable = true
	v4_instance_resolve = false
	v4_name_convert = {
		host = {
			rcmd = host
			ftp = ftp
		}
		plain = {
			something = something-else
		}
	}
	fcc-mit-ticketflags = true

[realms]
	DOMAIN.COM = {
		kdc = dc
		kdc = dc2
		admin_server = dc
		default_domain = DOMAIN.COM
	}

[domain_realm]
	.domain.com = DOMAIN.COM
	domain.com = DOMAIN.COM
[login]
	krb4_convert = false
	krb4_get_tickets = false

Вам, конечно, нужно изменить domain.com на ваш домен и dc и dc2 на ваши доменконтроллеры. Кстати, возможно вам понадобится написать полные имена доменконтроллеров dc.domain.com и dc2.domain.com. Поскольку у меня прописан домен поиска в DNS, то мне это делать не нужно.

Обратите особое внимание на регистр написания имени домена — везде, где домен написан в верхнем регистре, его обязательно нужно писать именно в верхнем регистре. Иначе волшебным образом ничего может не заработать.

Это не все возможные опции настройки Kerberos, только основные. Однако их обычно достаточно.

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

kinit username@DOMAIN.COM

Вместо username естественно стоит вписать имя существующего пользователя домена.

Имя домена необходимо писать заглавными буквами!

Если вы не получили никаких ошибок — значит вы настроили всё верно и домен отдаёт вам билет Kerberos. Кстати, некоторые распространённые ошибки перечислены чуть ниже.

Убедиться в том, что билет получен, можно выполнив команду

klist

Удалить все билеты (они вам вообще говоря не нужны) можно командой

kdestroy

Итак, будем считать, что авторизацию вы настроили, пора настроить непосредственно вход в домен, об этом после списка распространённых ошибок kinit.

Распространённые ошибки kinit

kinit(v5): Clock skew too great while getting initial credentials

Это значит, что у вашего компьютера не синхронизировано время с доменконтроллером (см. выше).

kinit(v5): Preauthentication failed while getting initial credentials

Вы ввели неверный пароль.

kinit(v5): KDC reply did not match expectations while getting initial credentials

Самая странная ошибка. Убедитесь, что имя realm в krb5.conf, а так же домен в команде kinit введены большими буквами:

DOMAIN.COM = {
# ...
kinit username@DOMAIN.COM
kinit(v5): Client not found in Kerberos database while getting initial credentials

Указанного пользователя не существует в домене.

Настройка Samba и вход в домен

Для того, чтобы войти в домен, необходимо прописать правильные настройки в файле /etc/samba/smb.conf. На данном этапе вас должны интересовать только некоторые опции из секции [global]. Ниже — пример части файла конфигурации Samba с комментариями по поводу значения важных параметров:

[global]
   # Эти две опции нужно писать именно в заглавном регистре, причём workgroup без
   # последней секции после точки, а realm - полное имя домена 
   workgroup = DOMAIN
   realm = DOMAIN.COM

   # Эти две опции отвечают как раз за авторизацию через AD
   security = ADS
   encrypt passwords = true
   # Просто важные 
   dns proxy = no 
   socket options = TCP_NODELAY

   # Если вы не хотите, чтобы самба пыталась при случае вылезти в лидеры в домене или рабочей группе,
   # или даже стать доменконтроллером, то всегда прописывайте эти пять опций именно в таком виде
   domain master = no
   local master = no
   preferred master = no
   os level = 0
   domain logons = no

   # Отключить поддержку принтеров
   load printers = no
   show add printer wizard = no
   printcap name = /dev/null
   disable spoolss = yes

После того, как вы отредактируете smb.conf выполните команду

testparm

Она проверит вашу конфигурацию на ошибки и выдаст суммарную сводку о нём:

# testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_DOMAIN_MEMBER
Press enter to see a dump of your service definitions

Как видно мы задали правильные параметры для того, чтобы наш компьютер стал членом домена. Теперь пора попытаться непосредственно войти в домен. Для этого введите команду:

net ads join -U username -D DOMAIN

И в случае успеха вы увидите что-то похожее на:

# net ads join -U username -D DOMAIN
Enter username's password:
Using short domain name -- DOMAIN
Joined 'SMBSRV01' to realm 'domain.com'

Используемые параметры команды net

-U username%password: Обязательный параметр, вместо username необходимо подставить имя пользователя с правами администратора домена, и указать пароль.

-D DOMAIN: DOMAIN — собственно сам домен, домен можно и не указывать, но лучше всё же это всегда делать — хуже не будет.

-S win_domain_controller: win_domain_controller, можно не указывать, но бывают случаи когда автоматически сервер не находит контроллер домена.

createcomputer=«OU/OU/…» : В AD часто используется OU (Organizational Unit), есть в корне домена OU = Office, в нем OU = Cabinet, чтобы сразу добавить в нужный можно указать так: sudo net ads join -U username createcomputer=«Office/Cabinet».

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

Так же можно набрать команду:

net ads testjoin

Если все хорошо, можно увидеть:

#net ads testjoin
Join is OK

Но иногда после сообщения о присоединении к домену выдаётся ошибка наподобие3):

DNS update failed!

Это не очень хорошо, и в этом случае рекомендуется ещё раз прочитать раздел про настройку DNS чуть выше и понять, что же вы сделали не так. После этого нужно удалить компьютер из домена и попытаться ввести его заново. Если вы твердо уверены, что всё настроили верно, а DNS всё равно не обновляется, то можно внести вручную запись для вашего компьютера на ваш DNS сервер и всё будет работать. Конечно, если нет никаких других ошибок, и вы успешно вошли в домен. Однако лучше всё же разберитесь, почему DNS не обновляется автоматически. Это может быть связано не только с вашим компьютером, но и с некорректной настройкой AD.

Прежде чем выяснять, почему же не обновляется DNS, не забудьте перезагрузить компьютер после введения в домен! Вполне возможно, что это решит проблему.

Если всё прошло без ошибок, то поздравляем, вы успешно вошли в домен! Можете заглянуть в AD и убедиться в этом. Кроме того хорошо бы проверить, что вы можете видеть ресурсы в домене. Для этого установите smbclient:

sudo aptitude install smbclient

Теперь можно просматривать ресурсы компьютеров домена. Но для этого нужно иметь билет kerberos, т.е. если мы их удалили, то получаем опять через kinit (см. выше). Посмотрим какие ресурсы предоставлены в сеть компьютером workstation:

smbclient -k -L workstation

Вы должны увидеть список общих ресурсов на этом компьютере.

Настройка Winbind

Если вам необходимо как-либо работать с пользователями домена, например, настраивать SMB-шары с разграничением доступа, то вам понадобится кроме самой Samba ещё и Winbind — специальный демон, служащий для связи локальной системы управления пользователями и группами Linux с сервером Active Directory. Проще говоря Winbind нужен, если вы хотите видеть пользователей домена на своём компьютере с Ubuntu.

Winbind позволяет спроецировать всех пользователей и все группы AD в вашу Linux систему, присвоив им ID из заданного диапазона. Таким образом вы сможете назначать пользователей домена владельцами папок и файлов на вашем компьютере и выполнять любые другие операции, завязанные на пользователей и группы.

Для настройки Winbind используется всё тот же файл /etc/samba/smb.conf. Добавьте в секцию [global] следующие строки:

   # Опции сопоставления доменных пользователей и виртуальных пользователей в системе через Winbind.
   # Диапазоны идентификаторов для виртуальных пользователей и групп.
   idmap uid = 10000 - 40000
   idmap gid = 10000 - 40000
   # Эти опции не стоит выключать.
   winbind enum groups = yes
   winbind enum users = yes
   # Использовать домен по умолчанию для имён пользователей. Без этой опции имена пользователей и групп
   # будут использоваться с доменом, т.е. вместо username - DOMAINusername.
   # Возможно именно это вам и нужно, однако обычно проще этот параметр включить. 
   winbind use default domain = yes
   # Если вы хотите разрещить использовать командную строку для пользователей домена, то
   # добавьте следующую строку, иначе в качестве shell'а будет вызываться /bin/false
   template shell = /bin/bash
   # Для автоматического обновления билета Kerberos модулем pam_winbind.so нужно добавить строчку
   winbind refresh tickets = yes

Параметры :

idmap uid = 10000 — 40000

idmap gid = 10000 — 40000

в новых версиях Samba уже устарели и при проверке конфига самбы с помощью testparm
будет выдваться предупреждение:

WARNING: The «idmap uid» option is deprecated

WARNING: The «idmap gid» option is deprecated

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

idmap config * : range = 10000-20000

idmap config * : backend = tdb

Теперь перезапустите демон Winbind и Samba в следующем порядке:

sudo /etc/init.d/winbind stop
sudo smbd restart
sudo /etc/init.d/winbind start 

Запускаем

sudo testparm

Смотрим есть ли ошибки или предупреждения, если появится:

«rlimit_max: rlimit_max (1024) below minimum Windows limit (16384)»

Без перезагрузки можно устранить так:

ulimit -n 16384

Для сохранения после перезагрузки отредактировать файл /etc/security/limits.conf

# Добавить в конец файла строки:
*               -    nofile            16384
root            -    nofile            16384

После перезапуска проверьте, что Winbind установил доверительные отношения с AD командой:

# wbinfo -t
checking the trust secret for domain DCN via RPC calls succeeded

А так же, что Winbind увидел пользователей и группы из AD командами4):

wbinfo -u
wbinfo -g

Эти две команды должны выдать список пользователей и групп из домена соответственно. Либо с префиксом DOMAIN, либо без него — в зависимости от того, какое значение вы указали параметру «winbind use default domain» в smb.conf.

Итак, Winbind работает, однако в систему он ещё не интегрирован.

Добавление Winbind в качестве источника пользователей и групп

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

Для этого измените две строчки в файле /etc/nsswitch.conf:

passwd:         compat
group:          compat

добавив к ним в конец winbind:

passwd:         compat winbind
group:          compat winbind

также рекомендую привести строку files в файле /etc/nsswitch.conf к виду:

files:          dns mdns4_minimal[NotFoud=return] mdns4

ubuntu server 14.04, файл /etc/nsswitch.conf не содержал строку
«files: dns mdns4_minimal[NotFoud=return] mdns4»
вместо неё было:
«hosts: files mdns4_minimal [NOTFOUND=return] dns wins»
Которую я преобразовал в:
«hosts: dns mdns4_minimal[NotFoud=return] mdns4 files»
после чего всё заработало

Теперь проверьте, что Ubuntu запрашивает у Winbind информацию о пользователях и группах, выполнив

getent passwd
getent group 

Первая команда должна вам вернуть всё содержимое вашего файла /etc/passwd, то есть ваших локальных пользователей, плюс пользователей домена с ID из заданного вами в smb.conf диапазона. Вторая должна сделать тоже самое для групп.

Теперь вы можете взять любого пользователя домена и сделать его, например, владельцем какого-нибудь файла.

Авторизация в Ubuntu через пользователей домена

Несмотря на то, что все пользователи домена фактически стали полноценными пользователями системы (в чём можно убедиться, выполнив последние две команды из предыдущего раздела), зайти ни под кем из них в систему всё ещё нельзя. Для включения возможности авторизации пользователей домена на компьютере с Ubuntu необходимо настроить PAM на работу с Winbind.

Он-лайн авторизация

Для Ubuntu 10.04 и выше добавьте всего одну строку в файле /etc/pam.d/common-session, т.к. PAM и так неплохо справляется с авторизацией:

session  optional  pam_mkhomedir.so skel=/etc/skel/ umask=0077

Для Ubuntu 13.10 чтобы появилось поле ручного ввода логина необходимо в любой файл из папки /etc/lightdm/lightdm.conf/ снизу добавить строку:

greeter-show-manual-login=true

Для Ubuntu 9.10 и ниже придется редактировать несколько файлов (но никто не запрещает использовать этот способ и в 10.04 — он тоже работает):

Последовательность строк в файлах имеет значение!

/etc/pam.d/common-auth

auth        required      pam_env.so
auth        sufficient    pam_unix.so likeauth nullok try_first_pass
auth        sufficient    pam_winbind.so use_first_pass krb5_auth krb5_ccache_type=FILE
auth        required      pam_deny.so

/etc/pam.d/common-account

account     sufficient    pam_winbind.so
account     required      pam_unix.so

/etc/pam.d/common-session

session     optional      pam_mkhomedir.so skel=/etc/skel/ umask=0077
session     optional      pam_ck_connector.so nox11
session     required      pam_limits.so
session     required      pam_env.so
session     required      pam_unix.so

/etc/pam.d/common-password

password    sufficient    pam_unix.so try_first_pass use_authtok nullok sha512 shadow
password    sufficient    pam_winbind.so
password    required      pam_deny.so

И, наконец, необходимо перенести запуск Winbind при загрузке системы после всех остальных служб (по умолчанию он запускается с индексом 20). Для этого в терминале выполните следующую команду:

sudo bash -c "for i in 2 3 4 5; do mv /etc/rc$i.d/S20winbind /etc/rc$i.d/S99winbind; done"

Что эквивалентно запуску для каждого уровня (в примере — 4) команды:

mv /etc/rc4.d/S20winbind /etc/rc4.d/S99winbind

В некоторых случаях winbind может иметь иной уровень запуска (например, S02winbind). Поэтому сначала проверьте имена файлов, вполнив команду «ls /etc/rc{2,3,4,5}.d/ | grep winbind» (без кавычек).

Готово, все настройки завершены. Перезагружайтесь и пытайтесь войти с учетной записью пользователя домена.

Офф-лайн авторизация

Часто возникает ситуация, когда домен-контроллер недоступен по различным причинам — профилактика, отключение света или вы принесли ноутбук домой и хотите поработать. В этом случае для Winbind можно настроить кэширование учетных записей пользователей домена. Для этого необходимо сделать следующее.
Добавьте в секцию [global] файла /etc/samba/smb.conf следующие строки:

[global]
   # Возможность оффлайн-авторизации при недоступности доменконтроллера
   winbind offline logon = yes
   # Период кэширования учетных записей, по умолчанию равен 300 секунд
   winbind cache time = 300
   # Необязательная настройка, но избавляет от нудных пауз, указываем контроллер домена dc, 
   # можно указать и ip, но это является плохим тоном
   password server = dc

Обычно этого достаточно. Если же возникают ошибки, то необходимо создать файл /etc/security/pam_winbind.conf со следующим содержанием5):

Внимание! При использовании советов ниже может возникать совершенно случайная ошибка «Сбой аутентификации»! Поэтому все что Вы делаете, Вы делаете на свой страх и риск!

#
# pam_winbind configuration file
#
# /etc/security/pam_winbind.conf
#
[global]
  # turn on debugging
  debug = no
  # request a cached login if possible
  # (needs "winbind offline logon = yes" in smb.conf)
  cached_login = yes
  # authenticate using kerberos
  krb5_auth = yes
  # when using kerberos, request a "FILE" krb5 credential cache type
  # (leave empty to just do krb5 authentication but not have a ticket
  # afterwards)
  krb5_ccache_type = FILE
  # make successful authentication dependend on membership of one SID
  # (can also take a name)
  ;require_membership_of =
  silent = yes

Файл /etc/pam.d/gnome-screensaver в таком случае принимает вид:

auth    sufficient      pam_unix.so nullok_secure
auth    sufficient      pam_winbind.so use_first_pass
auth    required        pam_deny.so

А также изменяется файл /etc/pam.d/common-auth:

auth    optional        pam_group.so
auth    sufficient      pam_unix.so nullok_secure  use_first_pass
auth    sufficient      pam_winbind.so use_first_pass
auth    required        pam_deny.so

Ссылки


Прочитано:
26 227

Задача: разобрать действия по организации сервиса времени для всей локальной сети дабы рабочие станции, сервера получали точное время и оно везде было одинаковым. Сервис времени организовывается на домен контроллере под управлением операционной системы Windows Server 2012 R2, также действия ниже аналогичны и для Server 2008 R2

Схема: интернет — Mikrotik — DC — Workstations

Открываю на srv-dc консоль командной строки с правами администратора:

Win + X — Command Prompt (Admin)

Определяю какой домен контроллер (Windows Server 2012 R2 Std) имеет роль PDC если домен контроллеров несколько в домене:

C:Windowssystem32>netdom query fsmo

  • Schema master srv-dc.polygon.local
  • Domain naming master srv-dc.polygon.local
  • PDC srv-dc.polygon.local
  • RID pool manager srv-dc.polygon.local
  • Infrastructure master srv-dc.polygon.local

The command completed successfully.

Как видно из вывода, это контроллер домена srv-dc.polygon.local, подключаюсь теперь к нему по RDP или VNC соединению для выполнения следующих команд:

C:Windowssystem32>net stop w32time

Настраиваем внешний источник времени:

C:Windowssystem32>w32tm /config /syncfromflags:manual /manualpeerlist:"0.pool.ntp.org"

Cделать ваш контроллер домена PDC доступным для клиентов:

C:Windowssystem32>w32tm /config /reliable:yes

Запускаю службу времени:

C:Windowssystem32>net start w32time

Также можно изменения вносить и через реестр в ключе: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters

Чтобы после принудительно запросить получение точного времени проделываем:

C:Windowssystem32>W32tm /config /reliable:yes

The command completed successfully.

C:Windowssystem32>W32tm /config /update

The command completed successfully.

C:Windowssystem32>W32tm /resync

Sending resync command to local computer

The command completed successfully.

Вот и все, служба времени Windows начинает синхронизацию времени с внешним источником, посмотреть этот процесс можно так:

C:Windowssystem32>w32tm /query /configuration

После нужно добавить параметр в DHCP оснастку, что сервер времени это наш домен контроллер:

Win + X — Control Panel — Administrative Tools — запускаю оснастку DHCP: DHCP → srv-dc.polygon.local → IPv4 → Scope [10.10.10.0] local → и через правый клик мышью по Scope Options вызываю меню Configure Options… где добавляю опцию для всего домена: 042 NTP Servers

Параметр времени для роли DHCP домен контроллера Server 2012 R2Теперь доменные Windows станции будут знать, что сервер времени это домен контроллер, а для моих Ubuntu системы после установке sudo apt-get install ntp -y в файле /etc/ntp.conf нужно будет в параметре server указать IP адрес этого домен контроллера и перезапустить службу времени sudo service ntp restart.

Если же у Вас DHCP сервис развернут не на Windows, то донести до всех где брать точное время можно через групповые политики GPO. Создаем GPO_NTP и предопределяем, что ориентирована она будет на текущий домен и все рабочие станции посредством WMI-фильтра.

Открываю оснастку на srv-dc управления групповыми политиками домена:

Win + X — Control Panel — Administrative Tools — Group Policy Management, открываю на редактирование: Group Policy Management → Forest: polygon.local → Domains → polygon.local → и через правый клик мышью по WMI Filters вызываю меню New…

  • Name: W7
  • Decription: Windows 7 x86/x64
  • Queries:Add
  • Namespace: rootCIMv2
  • Query: Select
    * from WIN32_OperatingSystem where ((Version > "6") and
    (ProductType = 1))

и
нажимаю OK, OK, Save

После перехожу к редактированию групповой политики для рабочих станции домена, через правый клик мышью по GPO_NTP вызываю меню Edit.

Computer Configuration → Policies → Administrative Tools → System → Windows Time Service → Time Providers → Configure Windows NTP Client, включаю ее Enabled и определяю настройки:

Настройки NTP через GPO для рабочих станций

NtpServer: srv-dc.polygon.local,0x9

все остальное оставляю по умолчанию.
После нажимаю Apply & OK.

И не забываем к политике добавить WMI фильтр. В конечном итоге политика должна выглядеть так:

Итоговый вид групповой политики

После когда политика применится к системам согласно WMI-фильтру можно будет проверить куда смотрит рабочая станции если ей нужно точное время:

C:Usersalektest>w32tm /query /status

Индикатор помех: 0(предупреждений нет)

Страта: 4 (вторичная ссылка - синхронизирована с помощью (S)NTP)

Точность: -6 (15.625ms за такт времени)

Задержка корня: 0.0876923s

Дисперсия корня: 7.8503892s

Идентификатор опорного времени: 0x0A0A0A02 (IP-адрес источника: 10.10.10.2)

Время последней успешной синхронизации: 30.04.2017 16:46:38

Источник: srv-dc.polygon.local

Интервал опроса: 10 (1024s)

C:Usersalektest>w32tm /monitor

srv-dc.polygon.local *** PDC ***[10.10.10.2:123]:

ICMP: 0ms задержка

NTP: +0.0000000s смещение относительно srv-dc.polygon.local

RefID: ground.corbina.net [85.21.78.91]

Страта: 3

Работает.

На замету: Если же в локальной сети появятся рабочие станции под управлением Windows 8 и выше, то нужно будет модифицировать WMI фильтр.

Но как известно, в случае чего с домен контроллером его роли можно забирать, так может произойти в случае различных проблем. Вот забрали роль PDC и время поехало во всем домене, чтобы этого не произошло нужно создать групповую политику ориентированную только на домен контроллер с ролью PDC: GPO_PDC и WMI фильтр с именем PDC следующего содержания:

Select * from Win32_ComputerSystem where DomainRole = 5

Computer Configuration → Policies → Administrative Tools → System → Windows Time Service → Time Providers → Configure Windows NTP Client, включаю ее Enabled и определяю настройки:

Настройки NTP через GPO для домен контроллера с ролью PDC

NtpServer: 0.pool.ntp.org,0x9

все
остальное оставляю по умолчанию.
После нажимаю Apply & OK.

и Computer Configuration → Policies → Administrative Tools → System → Windows Time Service → Time Providers -> Enable Windows NTP Client включить Enable.

Также параметр Type вместо NT5DS можно использовать и NTP

И не забываем к политике добавить WMI фильтр ← PDC. Теперь не важно кто является домен контроллером, точное время на нем будет.

А раз так, что рабочие станции не обязательно привязывать/создавать к политике назначения точного времени, ведь по умолчанию рабочие станции домена, итак, забирают точное время с контроллера домена по умолчанию.

Подведу итог:

  • Настраиваю GPO и привязываю ее через WMI фильтр к серверу у которого есть роль PDC
  • В оснастке DHCP указываю параметр кто в домене является сервером у которого клиентским рабочим станциям запрашивать точное время.
  • Если DHCP не на базе Windows, то можно настроить GPO и сделать нацеливание на определенную ось.

На заметку: Если домен контроллер развернут на виртуальной системе, то следует проверить, что время берется не с гипервизора, а через настройку этой заметки.

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

На этом у меня все. Задача выполнена и задокументирована, с уважением автор блога Олло Александр aka ekzorchik.



Linux


26.09.201926.09.2019

1 Minute

Во первых определяем источник точного времени, как правило это один из Domain Controller. Для этого на Windows находящейся в домене выполняем команду :

netdom query DC

Получим список контроллеров домена. Либо получаем имя сервера с которого данная Windows машина обновляет время, выполняем команду :

net time

(Выполнение данной команды может занять некоторое время)

На Линукс сервере проверяем доступность полученого сервера точного времени — пингуем его.

Далее в файле /etc/systemd/timesyncd.conf раскомментируем строку NTP и добавляем в нее IP сервера времени :

[Time]
NTP=<IP Domain Controller>

Закомментируем строку с FallbackNTP

Добавляем в файл /etc/ntp.conf строку :

pool <IP Domain Controller> prefer

закомментируем остальные строки начинающиеся с pool …

перезапускаем службу ntp:

sudo systemctl ntp restart

Проверяем работу ntp выполнив команду :

ntpq -np.

будет выведена таблица, где:

  • remote — имя ntp сервера
  • refid — ip вышестоящего NTP сервера
  • st — stratum — уровент данного ntp сервера , может быть число от 1 до 16
  • t — Тип удаленного сервера
  • when — как давно было последнее обновление времени
  • poll — период опроса сервера в секундах
  • reach — успешность выполнения предыдущих попыток 377 — все попытки были успешными
  • delay — задержка ответов от сервера
  • offset — разница во времени между локальным и удаленным сервером. Чем меньше данное значение тем лучше.
  • jitter — дисперсия отклонения удаленных часов относительно локальных.

Активируем синхронизацию времени по NTP, для этого выполняем:

sudo timedatectl set-ntp true

проверяем что NTP sync активировано:

sudo timеdatectl status

Синхронизация времени закончена.

Опубликовано
26.09.201926.09.2019

ad-pdc-ntp-000.pngСинхронизация времени — важный и во многом достаточно критичный аспект работы Active Directory, особенно сегодня, когда широко используется взаимодействие с внешними системами и работа с сотрудниками, которые могут находиться в различных часовых поясах. Применение систем виртуализации вносит дополнительные особенности, которые также следует учитывать. Поэтому данный вопрос может оказаться не столь простым, как кажется, а синхронизация с внешним источником точного времени становится одной из актуальных задач.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Прежде всего вспомним, как происходит синхронизация времени в Active Directory. В качестве эталона времени выступает контроллер, владеющий ролью эмулятора PDC. Это FSMO-роль и эмулятором PDC может являться только один контроллер в каждом домене. С ним синхронизируют время остальные контроллеры домена. Доменные ПК и рядовые серверы сверяют часы с ближайшим контроллером домена.

ad-pdc-ntp-001.png

Сам эмулятор PDC в качестве источника точного времени может использовать либо аппаратные часы материнской платы, либо внешний источник точного времени, при нахождении в виртуальной среде также может быть использовано время хоста виртуализации.

О последней поговорим более подробно. Раньше все было довольно просто, источником времени в домене обычно служили аппаратные часы эмулятора PDC, ну отстали или убежали на пару минут, в конце концов можно и подвести. Когда добавилось требование взаимодействия с внешними системами критичными к точному времени (например, использующих криптографию), то в качестве источника времени стал выступать внешний сервер. От него получал время эмулятор PDC, с ним синхронизировались контроллеры, а от них точное время расходилось на остальных участников домена.

С приходом виртуализации все изменилось, появился еще один источник времени — время хоста виртуализации. Многие гипервизоры по умолчанию имеют включенной настройку синхронизации времени гостевых систем и при попадании в виртуальную среду контроллера может возникнуть следующая коллизия: контроллер синхронизирует время с хостом, но сам хост, являясь членом домена, в свою очередь синхронизируется с контроллером.

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

Давайте перейдем от теории к практике. Начнем с того, что выясним кто из контроллеров является эмулятором PDC и эталоном времени для домена. Это можно сделать на любом контроллере домена командой:

 netdom query fsmo

В выводе будут показаны все хозяева операций, нас интересует только эмулятор PDC.

ad-pdc-ntp-002.pngЗатем перейдем на указанный контроллер и узнаем источник времени для него, для этого выполните команду:

w32tm /query /source

Если в выводе вы увидите:

Local CMOS Clock

то источником времени являются аппаратные часы. А если там будет:

VM IC Time Synchronization Provider

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

Данную настройку следует исправить, это можно сделать в настройках виртуальной машины, отключив синхронизацию времени с хостом, либо в самой системе, для этого откройте ветвь реестра:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersVMICTimeProvider

и установите для параметра Enabled значение 0.

ad-pdc-ntp-003.pngПосле данного изменения следует перезапустить Службу времени Windows или перезагрузить компьютер.

Следующим шагом будет настройка нашего эмулятора PDC на работу с внешними источниками точного времени. Все изменения также будут вноситься через реестр. Прежде всего изменим тип сервера на NTP, для этого откроем ветку

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters

и для параметра Type укажем строковое значение NTP. А для параметра NtpServer зададим адреса серверов точного времени, после каждого из которых, через запятую укажем 0x8, если мы хотим работать как стандартный NTP-клиент или 0x1 если будем использовать собственные параметры, например:

0.ru.pool.ntp.org,0x1 1.ru.pool.ntp.org,0x1 2.ru.pool.ntp.org,0x1

После чего в

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpServer

Параметр Enabled установим в значение 1.

Затем перейдем в

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig

и установим для параметра AnnounceFlags значение A.

Следующие параметры будут работать, только если мы при указании серверов добавили 0x1, иначе будут использоваться настройки, предлагаемые сервером. Чтобы задать период синхронизации откройте ветку

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient

и для параметра SpecialPollInterval укажите десятичное значение в секундах.

Вернемся в

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig

и зададим максимальное время опережения и отставания часов, после которых синхронизация производиться не будет. Для этого используются параметры MaxPosPhaseCorrection (опережение) и MaxNegPhaseCorrection (отставание) для которых также следует задать десятичное значение в секундах. По умолчанию стоит 48 часов. Это значит, что если время на эмуляторе PDC уйдет от точного источника более чем на 48 часов в любую сторону, то синхронизация производиться не будет.

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

Выполнив настройки перезапустите Службу времени Windows, это также можно сделать в командной строке:

net stop w32time
net start w32time

После чего еще раз выполним

w32tm /query /source

и убедимся, что источником времени для эмулятора PDC является внешний сервер.

ad-pdc-ntp-004.pngЗатем выполним данную команду на рядовых контроллерах домена, в качестве источника времени там должен быть указан эмулятор PDC, и на обычных ПК, где в выводе будет присутствовать любой из контроллеров домена. Обязательно выполните контроль для виртуальных машин, чтобы быть уверенным, что они используют время домена, а не хоста виртуализации.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Большинство людей следят за временем. Мы встаём вовремя, чтобы выполнить наши утренние ритуалы и отправиться на работу, сделать перерыв на обед, уложиться в сроки проекта, отметить дни рождения и праздники, сесть на самолёт и так далее.

Более того: некоторые из нас одержимы временем. Мои часы питаются от солнечной энергии и получают точное время из Национального института стандартов и технологий (NIST) в Форт-Коллинз (штат Колорадо) через длинноволновую радиостанцию WWVB. Сигналы времени синхронизируются с атомными часами, также расположенными в форте Коллинз. Мой Fitbit синхронизируется с моим телефоном, который синхронизируется с сервером NTP, который в конечном итоге синхронизируется с атомными часами.

Устройства тоже следят за временем

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

Наши телефоны, планшеты, автомобили, системы GPS и компьютеры требуют точной настройки времени и даты. Я хочу, чтобы часы на рабочем столе моего компьютера показывали правильное время. Я хочу, чтобы в моём локальном календаре напоминания появлялись в нужное время. Правильное время также гарантирует, что задания cron и systemd запускались в нужное время.

Дата и время также важны для ведения журнала, поэтому немного проще найти те или иные логи, ориентируясь по дате и времени. Например, однажды я работал в DevOps (в то время его так не называли) и занимался настройкой системы электронной почты в штате Северная Каролина. Раньше мы обрабатывали более 20 миллионов писем в день. Отслеживание электронной почты через серию серверов или определение точной последовательности событий с использованием файлов журналов на географически разнесенных хостах может быть намного проще, если соответствующие компьютеры синхронизированы по времени.

Время одно — часов много

Хосты Linux должны учитывать, что существует системное время и время RTC. RTC (Real Time Clock — часы реального времени) является немного странным и не особо точным названием для аппаратных часов.

Аппаратные часы работают непрерывно, даже когда компьютер выключен, используя аккумулятор на материнской плате системы. Основная функция RTC — хранить время, когда соединение с сервером времени недоступно. В те времена, когда нельзя было подключиться к серверу времени через интернет каждый компьютер должен был иметь точные внутренние часы. Операционные системы должны были обращаться к RTC во время загрузки, и пользователь должен был вручную установить системное время, используя аппаратный интерфейс конфигурации BIOS, чтобы убедиться, что оно правильное.

Аппаратные часы не понимают концепцию часовых поясов; в RTC хранится только время, а не часовой пояс или смещение от UTC (Всемирное координированное время, которое также известно как GMT или среднее время по Гринвичу). Вы можете установить RTC с помощью инструмента, о котором я расскажу позже в этой статье.

Системное время — это время, которое ОС отображает на часах GUI на вашем рабочем столе, в выходных данных команды date, в метках времени журналов. Это также относится ко времени создания, изменения и открытия файлов.

На странице man для rtc есть полное описание RTC и системных часов.

Что там у NTP?

Компьютеры во всем мире используют NTP (сетевой протокол времени) для синхронизации своего времени со стандартными эталонными часами через интернет с помощью иерархии серверов NTP. Основные серверы времени находятся на уровне 1, и они напрямую подключены к различным национальным службам времени на уровне 0 через спутник, радио или даже модемы по телефонным линиям. Службы времени на уровне 0 могут быть атомными часами, радиоприёмником, который настроен на сигналы, передаваемые атомными часами, или приёмником GPS, использующим высокоточные сигналы часов, передаваемые спутниками GPS.

На подавляющем большинстве эталонных серверов открыто несколько тысяч общедоступных серверов NTP stratum 2, которые доступны для всех. Многие организации и пользователи (включая меня) с большим количеством хостов, которым требуется NTP-сервер, предпочитают устанавливать свои собственные серверы времени, поэтому только один локальный хост обращается к stratum 2 или 3. Затем они настраивают оставшиеся узлы в сети для использования локального сервера времени. В случае моей домашней сети это сервер уровня 3.

Различные реализации NTP

Первоначальная реализация NTP — это ntpd. Затем к ней присоединились две более новых, chronyd и systemd-timesyncd. Все три синхронизируют время локального хоста с сервером времени NTP. Служба systemd-timesyncd не так надёжна, как chronyd, но этого достаточно для большинства целей. Если RTC не синхронизирован, она может постепенно корректировать системное время, чтобы синхронизироваться с NTP-сервером, когда локальное системное время немного смещается. Служба systemd-timesync не может использоваться в качестве сервера времени.

Chrony — это реализация NTP, содержащая две программы: демон chronyd и интерфейс командной строки под названием chronyc. У Chrony есть некоторые функции, которые во многих случаях просто незаменимы:

  • Chrony может синхронизироваться с сервером времени намного быстрее, чем старый сервис ntpd. Это хорошо для ноутбуков или настольных компьютеров, которые не работают постоянно.
  • Он может компенсировать колебания тактовых частот, например, когда хост переключается в спящий режим или входит в спящий режим, или когда тактовая частота изменяется из-за скачкообразного изменения частоты, которое замедляет тактовые частоты при низких нагрузках.
  • Он решает проблемы со временем, связанные с нестабильным сетевым соединением или перегрузкой сети.
  • Он регулирует задержки в сети.
  • После начальной временной синхронизации Chrony никогда не останавливает часы. Это обеспечивает стабильные и согласованные временные интервалы для многих системных служб и приложений.
  • Chrony может работать даже без подключения к сети. В этом случае локальный хост или сервер можно обновить вручную.
  • Chrony может выступать в качестве NTP-сервера.

Ещё раз: NTP — это протокол, который может быть реализован на хосте Linux с использованием Chrony или systemd-timesyncd.

RPM-пакеты NTP, Chrony и systemd-timesyncd доступны в стандартных репозиториях Fedora. RPM systemd-udev — это менеджер событий ядра, который в Fedora установлен по умолчанию, но не является обязательным для использования.

Вы можете установить все три и переключаться между ними, но это создаст лишнюю головную боль. Так что лучше не стоит. Современные релизы Fedora, CentOS и RHEL перешли на Chrony как стандартную реализацию, и кроме того, у них есть systemd-timesyncd. Я считаю, что Chrony работает хорошо, обеспечивает лучший интерфейс, чем служба NTP, предоставляет гораздо больше информации и повышает контроль, что безусловно понравится системным администраторам.

Отключение служб NTP

Возможно, на вашем хосте уже запущена служба NTP. Если это так, вам нужно отключить её перед переключением на что-то другое. У меня был запущен chronyd, поэтому я использовал следующие команды, чтобы остановить и отключить его. Запустите соответствующие команды для любого демона NTP, который вы используете на своем хосте:

[root@testvm1 ~]# systemctl disable chronyd ; systemctl stop chronyd
Removed /etc/systemd/system/multi-user.target.wants/chronyd.service.
[root@testvm1 ~]#

Проверьте, что служба остановлена и отключена:

[root@testvm1 ~]# systemctl status chronyd
● chronyd.service - NTP client/server
     Loaded: loaded (/usr/lib/systemd/system/chronyd.service; disabled; vendor preset: enabled)
     Active: inactive (dead)
       Docs: man:chronyd(8)
             man:chrony.conf(5)
[root@testvm1 ~]#

Проверка статуса перед запуском

Статус системной синхронизации часов позволяет определить, запущена ли служба NTP. Поскольку вы ещё не запустили NTP, команда timesync-status намекнёт на это:

[root@testvm1 ~]# timedatectl timesync-status
Failed to query server: Could not activate remote peer.

Прямой запрос статуса даёт важную информацию. Например, команда timedatectl без аргумента или параметров выполняет подкоманду status по умолчанию:

[root@testvm1 ~]# timedatectl status
           Local time: Fri 2020-05-15 08:43:10 EDT  
           Universal time: Fri 2020-05-15 12:43:10 UTC  
                 RTC time: Fri 2020-05-15 08:43:08      
                Time zone: America/New_York (EDT, -0400)
System clock synchronized: no                          
              NTP service: inactive                    
          RTC in local TZ: yes                    

Warning: The system is configured to read the RTC time in the local time zone.
         This mode cannot be fully supported. It will create various problems
         with time zone changes and daylight saving time adjustments. The RTC
         time is never updated, it relies on external facilities to maintain it.
         If at all possible, use RTC in UTC by calling
         'timedatectl set-local-rtc 0'.
[root@testvm1 ~]#

Так вы получите местное время для вашего хоста, время UTC и время RTC. В данном случае системное время установлено на часовой пояс America / New_York (TZ), RTC установлено на время в местном часовом поясе, а служба NTP не активна. Время RTC начало немного отклоняться от системного времени. Это нормально для систем, часы которых не были синхронизированы. Величина смещения на хосте зависит от времени, прошедшего с момента последней синхронизации системы.

Мы также получили предупреждение об использовании местного времени для RTC — это относится к изменениям часового пояса и настройкам летнего времени. Если компьютер выключен в тот момент, когда необходимо внести изменения, время RTC не изменится. Но для серверов или других хостов, которые работают круглосуточно, это вообще не проблема. Кроме того, любая служба, которая обеспечивает синхронизацию времени NTP, будет корректировать время хоста ещё на начальном этапе запуска, поэтому после завершения запуска время вновь станет правильным.

Установка часового пояса

Обычно вы указываете часовой пояс во время процедуры установки, и у вас нет задачи менять его в дальнейшем. Однако бывают случаи, когда необходимо изменить часовой пояс. Есть несколько инструментов, которые могут помочь. Для определения местного часового пояса хоста Linux использует файлы часовых поясов. Эти файлы находятся в каталоге /usr/share/zoneinfo. По умолчанию для моего часового пояса система прописывает вот это: /etc/ localtime -> ../usr/share/zoneinfo/America/New_York. Но вам не нужно знать такие тонкости, чтобы изменить часовой пояс.

Главное — знать официальное название часового пояса для вашего местоположения и соответствующую команду. Скажем, вы хотите изменить часовой пояс на Лос-Анджелес:


[root@testvm2 ~]# timedatectl list-timezones | column
<SNIP>
America/La_Paz                  Europe/Budapest
America/Lima                    Europe/Chisinau
America/Los_Angeles             Europe/Copenhagen
America/Maceio                  Europe/Dublin
America/Managua                 Europe/Gibraltar
America/Manaus                  Europe/Helsinki
<SNIP>

Теперь вы можете установить часовой пояс. Я использовал команду date для проверки изменений, но вы также можете использовать timedatectl:

[root@testvm2 ~]# date
Tue 19 May 2020 04:47:49 PM EDT
[root@testvm2 ~]# timedatectl set-timezone America/Los_Angeles
[root@testvm2 ~]# date
Tue 19 May 2020 01:48:23 PM PDT
[root@testvm2 ~]#

Теперь вновь можете изменить часовой пояс своего хоста на местное время.

systemd-timesyncd

Демон systemd timesync предоставляет реализацию NTP, которой легко управлять в контексте systemd. Он устанавливается по умолчанию в Fedora и Ubuntu. Однако запускается он по умолчанию только в Ubuntu. Я не уверен насчёт других дистрибутивов. Вы можете проверить у себя сами:

[root@testvm1 ~]# systemctl status systemd-timesyncd

Конфигурирование systemd-timesyncd

Файл конфигурации для systemd-timesyncd — это /etc/systemd/timesyncd.conf. Это простой файл с меньшим количеством включенных опций, чем в старых сервисах NTP и chronyd. Вот содержимое этого файла (без дополнительных изменений) на моей виртуальной машине с Fedora:

#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# Entries in this file show the compile time defaults.
# You can change settings by editing this file.
# Defaults can be restored by simply deleting this file.
#
# See timesyncd.conf(5) for details.

[Time]
#NTP=
#FallbackNTP=0.fedora.pool.ntp.org 1.fedora.pool.ntp.org 2.fedora.pool.ntp.org 3.fedora.pool.ntp.org
#RootDistanceMaxSec=5
#PollIntervalMinSec=32
#PollIntervalMaxSec=2048

Единственный раздел, который он содержит, кроме комментариев, это [Time]. Все остальные строки закомментированы. Это значения по умолчанию, их не нужно менять (если у вас нет для этого причин). Если у вас нет сервера времени NTP, определенного в строке NTP =, по умолчанию в Fedora используется резервный сервер времени Fedora. Я обычно добавляю свой сервер времени:

NTP=myntpserver

Запуск timesync

Запустить и сделать systemd-timesyncd активным можно так:

[root@testvm2 ~]# systemctl enable systemd-timesyncd.service
Created symlink /etc/systemd/system/dbus-org.freedesktop.timesync1.service → /usr/lib/systemd/system/systemd-timesyncd.service.
Created symlink /etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service → /usr/lib/systemd/system/systemd-timesyncd.service.
[root@testvm2 ~]# systemctl start systemd-timesyncd.service
[root@testvm2 ~]#

Установка аппаратных часов

Вот как выглядит ситуация после запуска timesyncd:

[root@testvm2 systemd]# timedatectl
               Local time: Sat 2020-05-16 14:34:54 EDT  
           Universal time: Sat 2020-05-16 18:34:54 UTC  
                 RTC time: Sat 2020-05-16 14:34:53      
                Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes                          
              NTP service: active                      
          RTC in local TZ: no    

Изначально разница между RTC и местным временем (EDT) не превышает секунды, и расхождение возрастает ещё на пару секунд в течение следующих нескольких дней. Поскольку в RTC нет понятия часовых поясов, команда timedatectl должна выполнить сравнение, чтобы определить нужный часовой пояс. Если время RTC точно не соответствует местному времени, то значит, оно не соответствует и местному часовому поясу.

В поисках дополнительной информации я проверил состояние systemd-timesync и обнаружил вот что:

[root@testvm2 systemd]# systemctl status systemd-timesyncd.service
● systemd-timesyncd.service - Network Time Synchronization
     Loaded: loaded (/usr/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: disabled)
     Active: active (running) since Sat 2020-05-16 13:56:53 EDT; 18h ago
       Docs: man:systemd-timesyncd.service(8)
   Main PID: 822 (systemd-timesyn)
     Status: "Initial synchronization to time server 163.237.218.19:123 (2.fedora.pool.ntp.org)."
      Tasks: 2 (limit: 10365)
     Memory: 2.8M
        CPU: 476ms
     CGroup: /system.slice/systemd-timesyncd.service
             └─822 /usr/lib/systemd/systemd-timesyncd

May 16 09:57:24 testvm2.both.org systemd[1]: Starting Network Time Synchronization...
May 16 09:57:24 testvm2.both.org systemd-timesyncd[822]: System clock time unset or jumped backwards, restoring from recorded timestamp: Sat 2020-05-16 13:56:53 EDT
May 16 13:56:53 testvm2.both.org systemd[1]: Started Network Time Synchronization.
May 16 13:57:56 testvm2.both.org systemd-timesyncd[822]: Initial synchronization to time server 163.237.218.19:123 (2.fedora.pool.ntp.org).
[root@testvm2 systemd]#

Обратите внимание на сообщение журнала, в котором говорится, что системное время не установлено или сброшено назад. Служба Timesync устанавливает системное время на основе временной метки. Метки времени поддерживаются демоном timesync и создаются при каждой успешной синхронизации.

Команда timedatectl не имеет возможности взять значение аппаратных часов из системных часов. Она может установить время и дату только из значения, введённого в командной строке. Вы можете установить RTC на то же значение, что и системное время, используя команду hwclock:

[root@testvm2 ~]# /sbin/hwclock --systohc --localtime
[root@testvm2 ~]# timedatectl
               Local time: Mon 2020-05-18 13:56:46 EDT  
           Universal time: Mon 2020-05-18 17:56:46 UTC  
                 RTC time: Mon 2020-05-18 13:56:46      
                Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes                          
              NTP service: active                      
          RTC in local TZ: yes

Опция —localtime говорит о том, что аппаратные часы показывают местное время, а не UTC.

Зачем вам вообще RTC?

Любая реализация NTP установит системные часы во время запуска. И зачем тогда RTC? Это не совсем так: это произойдет только в случае, если у вас есть сетевое соединение с сервером времени. Однако многие системы не имеют постоянного доступа к сетевому соединению, поэтому аппаратные часы полезны для того, чтобы Linux мог на их основе установить системное время. Это лучше, чем установка времени вручную, даже если оно может отклоняться от реального времени.

Заключение

В этой статье рассмотрены некоторые инструменты для управления датой, временем и часовыми поясами. Инструмент systemd-timesyncd предоставляет NTP-клиента, который может синхронизировать время на локальном хосте с NTP-сервером. Однако systemd-timesyncd не предоставляет серверную службу, поэтому, если вам нужен NTP-сервер в вашей сети, вы должны использовать что-то ещё — например, Chrony, для работы в качестве сервера.

Я предпочитаю иметь единственную реализацию для любой служб в моей сети, поэтому использую Chrony. Если вам не нужен локальный NTP-сервер или если вы не против использовать Chrony в качестве сервера и systemd-timesyncd в качестве SNTP-клиента. Ведь нет необходимости использовать дополнительные возможности Chrony как клиента, если вас устраивает функционал systemd-timesyncd.

Еще одно замечание: вы не обязаны использовать инструменты systemd для реализации NTP. Вы можете использовать старую версию ntpd, Chrony или другую реализацию NTP. Ведь systemd состоит из большого количества сервисов; многие из них являются необязательными, поэтому их можно отключить и использовать вместо них что-то ещё. Это не огромный монолитный монстр. Можно не любить systemd или его части, но вы должны принять обоснованное решение.

Мне нравится реализация NTP в systemd, но я предпочитаю Chrony, потому что он лучше отвечает моим потребностям. Это Linux, детка -)


На правах рекламы

VDSina предлагает серверы под любые задачи, огромный выбор операционных систем для автоматической установки, есть возможность установить любую ОС с собственного ISO, удобная панель управления собственной разработки и посуточная оплата. Напомним, у нас есть вечные серверы, которые точно неподвластны времени ;)

Всем привет.

Синхронизация времени — важный и во многом достаточно критичный аспект работы Active Directory, особенно сегодня, когда широко используется взаимодействие с внешними системами и работа с сотрудниками, которые могут находиться в различных часовых поясах. Применение систем виртуализации вносит дополнительные особенности, которые также следует учитывать. Поэтому данный вопрос может оказаться не столь простым, как кажется, а синхронизация с внешним источником точного времени становится одной из актуальных задач.

Прежде всего вспомним, как происходит синхронизация времени в Active Directory. В качестве эталона времени выступает контроллер, владеющий ролью эмулятора PDC. Это FSMO-роль и эмулятором PDC может являться только один контроллер в каждом домене. С ним синхронизируют время остальные контроллеры домена. Доменные ПК и рядовые серверы сверяют часы с ближайшим контроллером домена.

Сам эмулятор PDC в качестве источника точного времени может использовать либо аппаратные часы материнской платы, либо внешний источник точного времени, при нахождении в виртуальной среде также может быть использовано время хоста виртуализации.

С приходом виртуализации все изменилось, появился еще один источник времени — время хоста виртуализации. Многие гипервизоры по умолчанию имеют включенной настройку синхронизации времени гостевых систем и при попадании в виртуальную среду контроллера может возникнуть следующая коллизия: контроллер синхронизирует время с хостом, но сам хост, являясь членом домена, в свою очередь синхронизируется с контроллером.

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

Давайте перейдем от теории к практике. Моделируем ситуацию когда PDC крутиться на Hyper-V. Начнем с того, что выясним кто из контроллеров является эмулятором PDC и эталоном времени для домена. Это можно сделать на любом контроллере домена командой:

 netdom query fsmo

В выводе будут показаны все хозяева операций, нас интересует только эмулятор PDC. 

Затем перейдем на указанный контроллер и узнаем источник времени для него, для этого выполните команду:

w32tm /query /source

Если в выводе вы увидите:

Local CMOS Clock

то источником времени являются аппаратные часы. Это может быть справедливо для самого сервера Hyper-V, но для сервера PDC это таже эмуляция. Это та самая коллизия, про которую писали выше.

Если в выводе вы увидите:

Free running system clock

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

Ну а если там будет:

VM IC Time Synchronization Provider

то вы имеете дело с виртуальной машиной, которая синхронизирует время с хостом, т.е. с сервером Hyper-V. Здесь уже важно как синхронизируется время самого сервера Hyper-V. Будем полагать что он является членом домена где рулит PDC.

Поэтому далее будем править настройки самого PDC. 

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

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersVMICTimeProvider

и установите для параметра Enabled значение 0.

После данного изменения следует перезапустить Службу времени Windows (net stop w32time, net start w32time) или перезагрузить компьютер. 

Получить список всех VM с HyperV-сервера, к примеру,  srv-hyperv01, которые нуждаются в перенастройке можно так:

$Hyper = «srv-hyperv01»

$servers = Get-VM -ComputerName $Hyper | Where-Object {$_.State -eq ‘Running’}

foreach ($server in $servers)

{ Get-VMIntegrationService -ComputerName $Hyper -VMName $Server.Name -Name ‘Синхронизация времени’ | Where-Object {($_.Enabled -eq $True)} | Select VMName,Enabled | fl }

Следующим шагом будет настройка нашего эмулятора PDC на работу с внешними источниками точного времени. Все изменения также будут вноситься через реестр. Прежде всего изменим тип сервера на NTP, для этого откроем ветку

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters

и для параметра Type укажем строковое значение NTP.  Для клиентов домена лучше ставить значение NT5DS. Ежели наблюдаете проблемы, то можете начать с AllSync. А для параметра NtpServer зададим адреса серверов точного времени, после каждого из которых, через запятую укажем 0x8, если мы хотим работать как стандартный NTP-клиент или 0x1 если будем использовать собственные параметры, например:

0.ru.pool.ntp.org,0x1 1.ru.pool.ntp.org,0x1 2.ru.pool.ntp.org,0x1

После чего в

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpServer

Параметр Enabled установим в значение 1.

Затем перейдем в

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig

и установим для параметра AnnounceFlags значение A.

Следующие параметры будут работать, только если мы при указании серверов добавили 0x1, иначе будут использоваться настройки, предлагаемые сервером. Чтобы задать период синхронизации откройте ветку

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient

и для параметра SpecialPollInterval укажите десятичное значение в секундах.

Вернемся в

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig

и зададим максимальное время опережения и отставания часов, после которых синхронизация производиться не будет. Для этого используются параметры MaxPosPhaseCorrection (опережение) и MaxNegPhaseCorrection (отставание) для которых также следует задать десятичное значение в секундах. По умолчанию стоит 48 часов. Это значит, что если время на эмуляторе PDC уйдет от точного источника более чем на 48 часов в любую сторону, то синхронизация производиться не будет.

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

Выполнив настройки перезапустите Службу времени Windows, это также можно сделать в командной строке:

net stop w32time

net start w32time

После чего еще раз выполним

w32tm /query /source

и убедимся, что источником времени для эмулятора PDC является внешний сервер.

Затем выполним данную команду на рядовых контроллерах домена, в качестве источника времени там должен быть указан эмулятор PDC, и на обычных ПК, где в выводе будет присутствовать любой из контроллеров домена. Обязательно выполните контроль для виртуальных машин, чтобы быть уверенным, что они используют время домена, а не хоста виртуализации.

Правку параметров синхронизации можно выполнить и одной строкой: 

w32tm /config /manualpeerlist:»0.ru.pool.ntp.org» /syncfromflags:manual /reliable:yes /update

или через GPO:

Как лучше, смотрите по результатам работы, но обязательно проверяйте чтобы не было накладок где, к примеру, вы правите значения вручную, а следом или после ребута прибегает GPO.

Удачи.

Содержание

  1. Astra linux синхронизация времени с сервером
  2. Панель инструментов
  3. Боковая панель
  4. «Сервер»
  5. «Клиент»
  6. «Общее»
  7. Синхронизация времени на AstraLinux в Windows домене
  8. Сервис времени высокой точности PTP (Precision Time Protocol)
  9. Проверка оборудования
  10. Установка пакета
  11. Настройка службы timemaster
  12. Включение службы домена точного времени (ptp_domain)
  13. Включение и настройка службы ntp
  14. Настройка автоматического запуска timemaster
  15. Настройка службы ptp4l
  16. Настройка службы phc2sys
  17. Запуск всех служб

Astra linux синхронизация времени с сервером

Программа предназначена для настройки и управления сервером ntpd, позволяет сразу же применить сделанные настройки путем сохранения их в конфигурационный файл и перезапуском сервера ntpd. Также существует возможность полностью управлять сервером, т.е. осуществлять его запуск, перезапуск, останов и получать информацию о текущем состоянии. Запускается в режиме администратора. Для вызова привилегированных действий запрашивается авторизация.

Главное окно программы (рис. 1) содержит меню (Меню), панель инструментов (Панель инструментов) и боковую панель (Боковая панель) с рабочей панелью справа.

    Меню программы содержит следующие пункты:

  • «Файл»:
    • «Выход» — работа программы завершается;
  • «Сервер»:
    • «Пуск» — запуск сервера;
    • «Останов» — остановка сервера;
    • «Перезапуск» — перезапуск сервера;
  • «Справка»:
    • «Содержание» — вызов окна справки;
    • «О программе. » — вызов окна с краткой информацией о программе.

Панель инструментов

На панели инструментов (см. рис. 1) располагаются кнопки [Пуск], [Останов] и [Перезапуск], которые повторяют аналогичные пункты меню «Сервер» (см. Меню).

Боковая панель

На боковой панели (см. рис. 1) в виде дерева содержится список функциональных категорий и разделов настройки. Двойным щелчком любой кнопки мыши на названии категории или одним щелчком любой кнопки мыши на знаке в вершине рядом с этим названием вершина дерева сворачивается, и знак в вершине изменяется. Повторением щелчков на названии или щелчка на знаке в вершине дерево снова разворачивается, а знак в вершине возвращается к первоначальному виду

Щелчком любой кнопки мыши на названии раздела этот раздел выделяется. На рабочей панели справа панели справа появляются элементы управления для установки значений параметров настройки, входящих в этот функциональнйы раздел. Разделы функциональных категорий настройки: «Сервер» («Сервер»), «Клиент» («Клиент»), «Общее» («Общее»).

«Сервер»

    Категория «Сервер» содержит разделы:

  • «Широковещательный режим» (рис. 2) — рабочая панель содержит элементы для настройки широковещательных NTP-сообщений:
  • поле «Режим работы» — кнопки-переключатели «Только клиент» и «Клиент и сервер» включают для широковещательных NTP-сообщений режим, соответственно, приема или приема и рассылки;
  • в табличном виде отображается список установленных широковещательных режимов. Щелчком левой кнопки мыши элемент списка выделяется. Щелчком правой кнопки мыши открывается контекстное меню:
    • [Добавить] — открывается окно «Настройки широковещания» (рис. 3) для установки нового элемента списка.

    В окне устанавливаются значения параметров: IP-адрес сети (в строке ввода), минимальный интервал обновления (в числовом поле в сек.), время жизни (в числовом поле в сек.) и номер версии NTP (в числовом поле). После подтверждения или отмены окно закрывается и новый элемент, соответственно, устанавливается или не устанавливается в таблице;

  • [Изменить] — открывается окно «Настройки широковещания» (см. рис. 3) для правки значений настройки выделенного элемента списка. После подтверждения или отмены окно закрывается и новые значения, соответственно, устанавливаются или не устанавливаются в таблице;
  • [Удалить] — выделенный элемент списка удаляется;
  • [Удалить], [Изменить], [Добавить] — повторяют аналогичные пункты контекстного меню таблицы;
  • «Аппаратные часы» (рис. 4) — рабочая панель содержит элементы для настройки взаимодействия программы ntpd с внешним оборудованием, используемым в качестве источника точного времени:
    • флаг «Использовать калибровку драйвера» — включает использование калибровки драйвера;
    • в табличном виде отображается список установленных внешних источников. Щелчком левой кнопки мыши элемент списка выделяется. Щелчком правой кнопки мыши открывается контекстное меню:
      • [Добавить] — открывается окно «Аппаратные часы» (рис. 5) для установки нового элемента списка.

      В окне устанавливаются значения параметров для настройки часов и драйверов. Для часов: тип устройства (из списка), метка предпочтительного источника (флагом), порядковый номер устройства (в числовом поле), номер режима работы устройства (в числовом поле) и минимальный и максимальный интервалы (в числовых полях). Для драйверов: номер слоя (в числовом поле), константа смещения (в стоке ввода), константа драйвера (в стоке ввода), идентификатор(в стоке ввода) и флаги 1-4. После подтверждения или отмены окно закрывается и новый элемент, соответственно, устанавливается или не устанавливается в таблице;

    • [Изменить] — открывается окно «Аппаратные часы» (см. рис. 5) для правки значений настройки выделенного элемента списка. После подтверждения или отмены окно закрывается и новые значения, соответственно, устанавливаются или не устанавливаются в таблице;
    • [Удалить] — выделенный элемент списка удаляется;
  • [Удалить], [Изменить], [Добавить] — повторяют аналогичные пункты контекстного меню таблицы;
  • «Управление доступом» (рис. 6) — рабочая панель содержит элементы для настройки режима аутентификации при доступе к серверу ntpd:
      в табличном виде отображается список установленных режимов доступа. Щелчком левой кнопки мыши элемент списка выделяется. Щелчком правой кнопки мыши открывается контекстное меню:

        [Добавить] — открывается окно «Настройки доступа» (рис. 7) для установки нового элемента списка.

      В окне устанавливаются значения параметров сети и доступа. Для сети во вкладке «Адрес и маска» (см. рис. 7): IP-адрес и маска (в строках ввода) и флаг включения остальных. Для доступа во вкладке «Режим доступа и флаги» (рис. 8): кнопками переключателями устанавливается свободный, запрещенный (с флагом включения отправления kod-пакета) или специальный (с флагами включения из списка) режимы.

      После подтверждения или отмены окно закрывается и новый элемент, соответственно, устанавливается или не устанавливается в таблице;

    • [Изменить] — открывается окно «Настройки доступа» (см. рис. 7) для правки значений настройки выделенного элемента списка. После подтверждения или отмены окно закрывается и новые значения, соответственно, устанавливаются или не устанавливаются в таблице;
    • [Удалить] — выделенный элемент списка удаляется;
  • [Удалить], [Изменить], [Добавить] — повторяют аналогичные пункты контекстного меню таблицы;
  • «Клиент»

      Категория «Клиент» содержит разделы:

    • «Синхронизация с сервером» (рис. 9) — рабочая панель содержит элементы для настройки синхронизации с удаленным сервером в режиме «Клиент-сервер» и задания настроек для этого режима:
      в табличном виде отображается список установленных удаленных серверов. Щелчком левой кнопки мыши элемент списка выделяется. Щелчком правой кнопки мыши открывается контекстное меню:

        [Добавить] — открывается окно «Настройки синхронизации» (рис. 10) для установки нового элемента списка.

      В окне устанавливаются значения параметров настройки сервера: адрес (из списка), минимальный и максимальный интервалы (в числовых полях), пакетный режим (флагами включения «burst» и «iburst» технологий передачи данных ), метка предпочтительного сервера (флагом) и номер версии сервера NTP (в числовом поле). После подтверждения или отмены окно закрывается и новый элемент, соответственно, устанавливается или не устанавливается в таблице;

    • [Изменить] — открывается окно «Настройки синхронизации» (см. рис. 3) для правки значений настройки выделенного элемента списка. После подтверждения или отмены окно закрывается и новые значения, соответственно, устанавливаются или не устанавливаются в таблице;
    • [Удалить] — выделенный элемент списка удаляется;
  • [Удалить], [Изменить], [Добавить] — повторяют аналогичные пункты контекстного меню таблицы;
  • [Синхронизировать] — запускает операцию синхронизации времени с сервером.
  • «Общее»

      Категория «Общее» содержит разделы:

    • «Журналирование сообщений» (рис. 11) — рабочая панель содержит элементы для настройки процесса сбора, хранения и просмотра сообщений, записываемых в общий системный журнал:
    • вкладки «Сообщения часов», «Сообщения соседей», «Сообщения системы» и «Сообщения синхронизации» — флагами устанавливаются регистрируемые сообщения, получаемые, соответственно, от часов, соседей, системы и сообщения синхронизации. Включается регистрация сообщений:
      • флаг «Все сообщения» — всех;
      • флаг «Информационные сообщения» — информационных;
      • флаг «Сообщения о событиях» — о событиях;
      • флаг «Сообщения статистики» — статистики;
      • флаг «Сообщения о статусе синхронизации» — о статусе синхронизации;
  • «Сообщения статистики» (рис. 12) — рабочая панель содержит элементы для настройки процесса сбора, хранения и просмотра различных типов сообщений, записываемых в специально создаваемые журналы статистики:
    • «Путь к каталогу с файлами статистики» — в строке или из диалогового окна устанавливается путь к каталогу с файлами статистики. Диалоговое окно открывается кнопкой [. ] (справа от строки). После подтверждения или отмены окно закрывается, и установленный путь, соответственно, отображается или не отображается в строке;
    • вкладки «Модификация локальных часов», «Взаимодействие с соседями», «Драйвер локальных часов» и «Временные метки NTP» — устанавливаются параметры настройки для журналов ведения статистики, соответственно, модификации локальных часов, взаимодействия с соседями, драйверов локальных часов и временных меток NTP:
      • флаги «Включено», «Link», «Разрешить запись в файл» — включают запись, соответственно, включения, соединения и записи в файл;
      • «Правила генерации файлов» — из списка устанавливается правило генерации файла с журналом;
      • «Сообщения о событиях» — о событиях;
      • «Имя создаваемого файла (без расширения)» — в строке устанавливается имя файла с журналом. [Просмотр. ] (справа от строки) — просмотр журнала;
  • «Дополнительные настройки» (рис. 13) — рабочая панель содержит:
    • «Использовать альтернативный файл журнала» — в строке или из диалогового окна устанавливается маршрутное имя альтернативного файла, который будет использоваться вместо системного. Диалоговое окно открывается кнопкой [. ] (справа от строки). После подтверждения или отмены окно закрывается, и установленный путь, соответственно, отображается или не отображается в строке;
    • «Коррекция сетевой задержки» — в числовом поле устанавливается значение сетевой задержки, если оно не было определено автоматически.
  • Источник

    Синхронизация времени на AstraLinux в Windows домене

    Во первых определяем источник точного времени, как правило это один из Domain Controller. Для этого на Windows находящейся в домене выполняем команду :

    netdom query DC

    Получим список контроллеров домена. Либо получаем имя сервера с которого данная Windows машина обновляет время, выполняем команду :

    (Выполнение данной команды может занять некоторое время)

    На Линукс сервере проверяем доступность полученого сервера точного времени — пингуем его.

    Далее в файле /etc/systemd/timesyncd.conf раскомментируем строку NTP и добавляем в нее IP сервера времени :

    Закомментируем строку с FallbackNTP

    Добавляем в файл /etc/ntp.conf строку :

    закомментируем остальные строки начинающиеся с pool …

    перезапускаем службу ntp:

    sudo systemctl ntp restart

    Проверяем работу ntp выполнив команду :

    будет выведена таблица, где:

    • remote — имя ntp сервера
    • refid — ip вышестоящего NTP сервера
    • st — stratum — уровент данного ntp сервера , может быть число от 1 до 16
    • t — Тип удаленного сервера
    • when — как давно было последнее обновление времени
    • poll — период опроса сервера в секундах
    • reach — успешность выполнения предыдущих попыток 377 — все попытки были успешными
    • delay — задержка ответов от сервера
    • offset — разница во времени между локальным и удаленным сервером. Чем меньше данное значение тем лучше.
    • jitter — дисперсия отклонения удаленных часов относительно локальных.

    Активируем синхронизацию времени по NTP, для этого выполняем:

    Источник

    Сервис времени высокой точности PTP (Precision Time Protocol)

    Данная статья применима к:

    В стандартные дистрибутивы и репозитории Astra Linux Common Edition включены следующие службы точного времени:

    • Серверная служба NTP (ntpd) (представлена пакетами ntp и ntpdate);
    • Серверная служба OpenNTP (openntpd) (представлена пакетом openntp);
    • Клиентская служба timedatectl / systemd-timesyncd.service.

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

    Начиная с версии Astra Linux Common Edition 2.12.10 помимо указанных выше служб в репозитории стал доступен пакет linuxptp, содержащий следующие службы:

    • ptp4l — служба протокола времени высокой точности, реализующая работу по протоколу времени высокой точности PTP (Precision Time Protocol) в соответствии со стандартом IEEE 1588. Точность протокола зависит от того, как устанавливаются метки времени в пакетах IEEE 1588. При установке отметок времени программным путём, когда на точность влияют прерывания, загрузка процессора, и иные факторы, обеспечивается точность 1-100 микросекунд. Аппаратная поддержка обеспечивает точность до единиц микросекунд;
    • phc2sys — служба синхронизации часов;
    • timemaster — служба координации, обеспечивающая совместную работу традиционной службы времени ntp и службы времени высокой точности ptp.

    Проверка оборудования

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

    Проверить, поддерживает ли сетевая карта аппаратные отметки времени можно из командной строки с помощью команды ethtool из пакета ethtool (пакет ethtool придётся установить, если он не был установлен ранее):

    Установка пакета

    Пакет linuxptp доступен в репозитории Astra Linux Common Edition начиная с версии 2.12.10 и может быть установлен с помощью графического менеджера пакетов (см. Графический менеджер пакетов synaptic) или из командной строки командой:

    Настройка службы timemaster

    Конфигурация службы timemaster находится в файле /etc/linuxptp/timemaster.conf.
    Подробно возможные параметры настройки описаны в электронной справочной системе:

    Включение службы домена точного времени (ptp_domain)

    Для включения службы времени высокой точности ptp4l раскомментировать в файле настроек /etc/linuxptp/timemaster.conf секцию [ptp_domain 0] (в примере — настройка домена точного времени, использующего интерфейс eth0):

    [ptp_domain 0]
    interfaces eth0
    delay 10e-6

    Домен точного времени обслуживается сервисом ptp4l, настройка этого сервиса описана ниже.

    Включение и настройка службы ntp

    Для включения службы ntp в файле настроек /etc/linuxptp/timemaster.conf в секции [timemaster] нужно указать службу ntpd вместо cronyd:

    [timemaster]
    ntp_program chronyd
    ntp_program ntpd

    После внесения этих изменений служба timemaster сможет самостоятельно запускать службу ntpd под своим контролем, поэтому самостоятельный запуск службы ntpd следует отключить:

    Настройка автоматического запуска timemaster

    Кроме настройки конфигурационного файла нужно разрешить автоматический запуск службы timemaster при старте системы:

    Настройка службы ptp4l

    Служба ptp4l представляет собой реализацию протокола времени высокой точности и по умолчанию настроена на работу с сетевыми картами, поддерживающими аппаратные отметки времени (time stamping).
    Как проверить наличие в сетевой карте аппаратной поддержки описано выше.
    Конфигурация службы ptp4l хранится в файле /etc/linuxptp/ptp4l.conf, описание которого доступно в справочной системе:

    Настройка службы phc2sys

    Служба phc2sys настроек не требует, и если в системе имеется с чем синхронизировать системные часы RTC (имеется сетевая карта с аппаратными часами), phc2sys запустится автоматически с нужными параметрами. При работе с сетевыми картами, не поддерживающими аппаратные отметки времени служба phc2sys не запускается.

    Запуск всех служб

    После завершения настройки запуск всех служб осуществляется командой

    Служба timemaster сама запустит запустит все остальные сервисы, в итоге статус нормально и полностью запущенной службы при наличии аппаратной поддержки выглядит примерно так:

    Источник

    Инструкция по вводу рабочей станции под управлением ALT Linux в домен Active Directory (работающий под Windows или под Samba в режиме AD DC).
    Устаревшая инструкция: Ввод в домен на базе Windows 2003

    Внимание! Если Ваш домен имеет суффикс .local — необходимо отключить avahi-daemon (подробнее ниже, пункт 2 примечаний).

    Параметры домена

    Параметр Значение
    Имя домена SCHOOL.ALT
    Рабочая группа SCHOOL
    Имя компьютера в Netbios WS
    Имя пользователя-администратора Administrator
    Пароль администратора Pa$$word

    Подготовка

    Установка пакетов

    Внимание! Аутентификация через winbind в новых сборках Samba не работает, используйте аутентификацию через task-auth-ad-sssd.

    С версии alterator-auth-0.31-alt1

    apt-get install task-auth-ad-sssd
    

    Примечание: Для старых версий:

    apt-get install alterator-auth sssd-ad samba-common-tools
    

    Требуемые версии:

    • pam-config >= 1.7.0-alt1
    • alterator-auth >= 0.26-alt1

    Возможно, следует обновить установленный дистрибутив из репозитория.

    Синхронизация времени

    С версии alterator-auth 0.28 синхронизация времени производится автоматически с контроллером домена.

    Для более ранних версий:

    Способ 1: Через net time
    net time set -S <имя домена>
    
    Способ 2: По протоколу RFC 867

    На сервере включается через xinetd daytime-tcp [1]:

    # chkconfig --list | grep daytime-tcp
            daytime-tcp:    вкл
    

    А на клиенте — служба settime-rfc867:

    chkconfig settime-rfc867 on
    service settime-rfc867 start
    
    Способ 3: Через Центр управления системой → Дата и время

    Включите флажок «Получать точное время с NTP-сервера» и укажите в поле справа pool.ntp.org. После этого нажмите кнопку «Применить».

    Способ 4: Через ntpdate
    ntpdate pool.ntp.org
    

    Ввод в домен в Центре управления системой

    Для ввода компьютера в Active Directory потребуется установить пакет task-auth-ad-sssd и все его зависимости.

    В Центре управления системой перейдите в раздел Пользователи → Аутентификация. Выберите пункт «Домен Active Directory» и заполните поля. Нажмите кнопку «Применить».

    Qwe.png

    Ввод в домен в командной строке

    # system-auth write ad school.alt host-15 school 'administrator' 'Pa$$word' [--windows2003] [--createcomputer="ou=COMPUTEROU"]
    Joined 'HOST-15' to dns domain 'school.alt'

    Настройка SSSD

    См. статью SSSD/AD, Настройки SSSD в Alterator

    Проверка работы

    # getent passwd ivan
    ivan:*:10005:10002:ivan:/home/SCHOOL/ivan:/bin/bash
    
    # net ads info
    LDAP server: 192.168.1.1
    LDAP server name: c228.school.alt
    Realm: SCHOOL.ALT
    Bind Path: dc=SCHOOL,dc=ALT
    LDAP port: 389
    Server time: Ср, 22 апр 2015 16:22:47 MSK
    KDC server: 192.168.1.1
    Server time offset: -1
    
    # net ads testjoin
    Join is OK

    Примечание: Вы не увидите пользователей из AD с помощью команды # getent passwd на клиентской машине. Этот функционал отключен по-умолчанию для того чтобы сократить нагрузку на серверы. Поэтому для проверки необходимо указать точное имя пользователя # getent passwd имя_пользователя . Список пользователей можно посмотреть на сервере командой # samba-tool user list

    Примечания

    1. Ограничение: имя домена должно указывать на DC. Если это не так, поправляйте /etc/krb5.conf и вводите вручную, либо в файл /etc/hosts добавьте строку с контроллером домена (кдц) ДОМЕН.local и перезапустите сеть. После этого проверьте из командной строки ping ДОМЕН.local и вводите в домен
    2. При указании домена, имеющего суффикс .local, потребуется на сервере и подключаемых компьютерах под управлением Linux отключить службу avahi-daemon# chkconfig avahi-daemon off; reboot (доменная зона «local.» используется в технологии zeroconf).
    3. Следите за синхронизацией времени на клиенте и сервере.
    4. Для предотвращения кэширования имён пользователя отключите службу nscd.
    5. В новых версиях Samba до запуска службы winbind должна запускаться служба smb.
    6. Если возникает проблема просмотра билетов Kerberos под доменным пользователем, скопируйте правильный krb5.conf из samba:
      rm -f /etc/krb5.conf
      cp /var/lib/samba/smb_krb5/krb5.conf* /etc/krb5.conf
      
    7. Если у вас домен Windows 2003 (не R2), то в директивы default_tgs_enctypes, default_tkt_enctypes и preferred_enctypes файла /etc/krb5.conf добавьте ещё DES3-CBC-SHA1.
    8. Для возможности входа в ОС под доменным пользователем при его недоступности можно включить опцию кэширования учетных данных в конфиге SSSD (подробнее тут, опция cache_credentials)

    Настройка окна входа

    Настройка LightDM

    В /etc/lightdm/lightdm.conf раскомментируйте строку в группе [SeatDefaults]:

    greeter-hide-users=true
    

    Это позволит вводить имя пользователя вручную, а не прокручивать огромный список доступных доменныx пользователей.

    Также полезно выключить выбор языка. В файле /etc/lightdm/lightdm-gtk-greeter.conf в группе [greeter] укажите:

    show-language-selector=false
    

    В новых версиях lightdm-gtk-greeter можно указать кнопки явно:

    show-indicators=~a11y;~power
    

    Полный перечень доступных кнопок:

    show-indicators=~a11y;~power;~session;~language
    

    Примечание: В lightdm-gtk-greeter, начиная с версии 2.0.7-alt2, можно настроить автоматическое заполнение поля «Имя пользователя» именем последнего пользователя входившего в систему. Для этого в файле /etc/lightdm/lightdm-gtk-greeter.conf (группа [greeter]) необходимо указать:

    Отображение глобальных групп на локальные

    Примечание: Первые два пункта данного раздела выполняются автоматически, если АРМ вводится в домен с помощью task-auth-ad-sssd.

    Установка модуля ролей

    apt-get install libnss-role
    

    Настройка ролей и привилегий

    Добавляем роль локальных администраторов:

    # groupadd -r localadmins
    

    Примечание: Лучше использовать группу localadmins (вместо admins) по избежание конфликта с группой admins во FreeIPA.

    Создаём привилегию на право удалённого доступа (по протоколу ssh):

    # groupadd -r remote
    

    Включаем удалённый доступ только для группы remote:

    # control sshd-allow-groups enabled
    # sed -i 's/AllowGroups.*/AllowGroups = remote/' /etc/openssh/sshd_config
    

    Настраиваем список привилегий для пользователей (для роли users):

    # roleadd users cdwriter cdrom audio proc radio camera floppy xgrp scanner uucp fuse
    

    Настраиваем список привилегий для администраторов (для роли admins):

    # roleadd localadmins wheel remote vboxusers
    

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

    # roleadd 'Domain Users' users
    

    или

    # roleadd 'Пользователи домена' users
    

    Далее

    # roleadd 'Domain Admins' localadmins
    

    или

    # roleadd 'Администраторы домена' localadmins
    

    Просматриваем список назначенных ролей и привилегий:

    # rolelst
    # id ivan
    

    Данная настройка назначает заданный список локальных групп (привилегий) всем пользователям, входящим в заданные локальные группы (роли). А также назначает локальные роли для глобальных групп в домене.

    Дополнительные роли

    Соответственно, если надо выдать права администраторов АРМ пользователям, которые не являются Domain Admins,
    то нужно завести новую группу в AD (например, PC Admins), добавить туда необходимых пользователей.
    Затем на АРМ добавить роль для данной группы:

    # roleadd 'PC Admins' localadmins
    # rolelst
    users: cdwriter cdrom audio video proc radio camera floppy xgrp scanner uucp vboxusers fuse tsusers
    localadmins: wheel
    domain users: users
    domain admins: localadmins
    pc admins: localadmins
    

    После этого (и после разрешения sudo для группы wheel) под пользователем входящим в группу PC Admins
    можно запускать команду повышения прав sudo.

    user@alt8 ~ $ su - petrov
    Password: 
    petrov@alt8 ~ $ id
    uid=445010929(petrov) gid=445000513(domain users) группы=445000513(domain users),10(wheel),14(uucp),19(proc),
    22(cdrom),71(floppy),80(cdwriter),81(audio),83(radio),100(users),458(tsusers), 459(localadmins),466(fuse),468(video),
    480(camera),492(vboxusers),498(xgrp),499(scanner),445010930(pc admins)
    petrov@alt8 ~ $ sudo apt-get update
    Пароль:
    Получено: 1 http://ftp.altlinux.org p8/branch/x86_64 release [880B]
    Получено: 2 http://ftp.altlinux.org p8/branch/x86_64-i586 release [537B]
    Получено: 3 http://ftp.altlinux.org p8/branch/noarch release [673B]
    Получено 2090B за 0s (36,9kB/s).
    Найдено http://ftp.altlinux.org p8/branch/x86_64/classic pkglist
    Найдено http://ftp.altlinux.org p8/branch/x86_64/classic release
    Найдено http://ftp.altlinux.org p8/branch/x86_64-i586/classic pkglist
    Найдено http://ftp.altlinux.org p8/branch/x86_64-i586/classic release
    Найдено http://ftp.altlinux.org p8/branch/noarch/classic pkglist
    Найдено http://ftp.altlinux.org p8/branch/noarch/classic release
    Чтение списков пакетов... Завершено
    Построение дерева зависимостей... Завершено
    

    Подключение файловых ресурсов

    Рассматриваемые способы позволяют подключать файловые ресурсы (file shares) для доменного пользователя без повторного ввода пароля (SSO, Single Sign-On).

    Через gio

    Примечание: Способ актуален для дистрибутивов, использующих gio (ранее — gvfs) (например, Кентавр, Simply Linux, Basealt Workstation, СПТ).

    Недостаток такого способа — необходимо открыть ресурс в файловом менеджере (Caja, Pcmanfm). Однако можно открывать любые ресурсы на любых серверах, входящие в домен Active Directory.

    1. Устанавливаем необходимые пакеты (с правами root):

    apt-get install fuse-gvfs gvfs-backend-smb libgio
    

    2. Включаем пользователя в группу fuse (с правами root):

    gpasswd -a <пользователь> fuse
    

    Внимание! Начиная с p9 членства в группе fuse недостаточно, требуется разрешить для всех доступ к fuse под root:

    control fusermount public
    

    3. Входим доменным пользователем.

    4. Открываем ресурс в файловом менеджере (например, по адресу smb://server/sysvol). Ресурс смонтирован по пути /var/run/<uid_пользователя>/gvfs или /var/run/user/<uid_пользователя>/gvfs/smb-share:server=сервер,share=ресурс

    Другой вариант (полезно для скриптов в автозапуске):

    gio mount smb://server/sysvol/
    

    Примечание: Если необходимо открывать что-то с ресурса в WINE, в winecfg добавьте диск с путём /var/run/<uid_пользователя>/gvfs.

    Заданный файловый ресурс подключается с заданного сервера автоматически при каждом входе доменным пользователем.

    1. Устанавливаем pam_mount:

    apt-get install pam_mount
    

    Если осуществляется подключение файловых ресурсов по протоколу CIFS (SMB), то установите cifs-utils:

    apt-get install cifs-utils
    

    Внимание! Для того, чтобы файловые ресурсы, подключенные с помощью pam_mount, корректно отключались при завершении сеанса, установите пакет systemd-settings-enable-kill-user-processes и перезагрузите систему:

    apt-get install systemd-settings-enable-kill-user-processes
    

    2. Прописываем pam_mount в схему аутентификации по умолчанию. В конец файла (/etc/pam.d/system-auth) добавьте строки

    session         [success=1 default=ignore] pam_succeed_if.so  service = systemd-user quiet
    session         optional        pam_mount.so disable_interactive
    

    Параметр disable_interactive нужен для того, чтобы pam_mount не спрашивал пароль. Первая строка предназначена для того, чтобы не монтировать дважды при запуске systemd —user. Подробнее: https://wiki.archlinux.org/title/pam_mount#Login_manager_configuration

    Пример файла /etc/pam.d/system-auth при аутентификации доменного пользователя под SSSD:

    #%PAM-1.0
    
    auth            [success=4 perm_denied=ignore default=die]      pam_localuser.so
    auth            [success=1 default=bad] pam_succeed_if.so uid >= 500 quiet
    auth            [default=1]     pam_permit.so
    auth            substack        system-auth-sss-only
    auth            [default=1]     pam_permit.so
    auth            substack        system-auth-local-only
    auth            substack        system-auth-common
    
    account         [success=4 perm_denied=ignore default=die]      pam_localuser.so
    account         [success=1 default=bad] pam_succeed_if.so uid >= 500 quiet
    account         [default=1]     pam_permit.so
    account         substack        system-auth-sss-only
    account         [default=1]     pam_permit.so
    account         substack        system-auth-local-only
    account         substack        system-auth-common
    
    password        [success=4 perm_denied=ignore default=die]      pam_localuser.so
    password        [success=1 default=bad] pam_succeed_if.so uid >= 500 quiet
    password        [default=1]     pam_permit.so
    password        substack        system-auth-sss-only
    password        [default=1]     pam_permit.so
    password        substack        system-auth-local-only
    password        substack        system-auth-common
    
    session         [success=4 perm_denied=ignore default=die]      pam_localuser.so
    session         [success=1 default=bad] pam_succeed_if.so uid >= 500 quiet
    session         [default=1]     pam_permit.so
    session         substack        system-auth-sss-only
    session         [default=1]     pam_permit.so
    session         substack        system-auth-local-only
    session         substack        system-auth-common
    session         [success=1 default=ignore] pam_succeed_if.so  service = systemd-user
    session         optional        pam_mount.so disable_interactive
    

    3. Устанавливаем правило монтирования ресурса в файле /etc/security/pam_mount.conf.xml:

    <volume uid="10000-2000200000" fstype="cifs" server="c253.test.alt" path="sysvol" mountpoint="~/share" options="sec=krb5i,cruid=%(USERUID),nounix,uid=%(USERUID),gid=%(USERGID),file_mode=0664,dir_mode=0775" />
    

    где

    • uid=»10000-2000200000″ — диапазон присваиваемых для доменных пользователей UID (подходит и для Winbind и для SSSD);
    • server=»c253.test.alt» — имя сервера с ресурсом;
    • path=»sysvol» — имя файлового ресурса;
    • mountpoint=»~/share» — путь монтирования в домашней папке пользователя.

    Опционально можно добавить:

    • sgrp=»group_name» — имя группы, при членстве пользователя в которой, папка будет примонтирована.

    Внимание! Обязательно указывайте настоящее имя сервера в параметре server, а не имя домена

    Параметр sec=krb5i более безопасный, но требует больше вычислительных ресурсов. Вместо него можно указать sec=krb5.

    Пример файла /etc/security/pam_mount.conf.xml:

    <?xml version="1.0" encoding="utf-8" ?>
    <!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd">
    <!--
            See pam_mount.conf(5) for a description.
    -->
    
    <pam_mount>
    
                    <!-- debug should come before everything else,
                    since this file is still processed in a single pass
                    from top-to-bottom -->
    
    <debug enable="0" />
    
                    <!-- Volume definitions -->
    <volume uid="10000-2000200000"
            fstype="cifs"
            server="c253.test.alt"
            path="sysvol"
            mountpoint="~/share"
            options="sec=krb5,cruid=%(USERUID),nounix,uid=%(USERUID),gid=%(USERGID),file_mode=0664,dir_mode=0775" />
    
                    <!-- pam_mount parameters: General tunables -->
    
    <!--
    <luserconf name=".pam_mount.conf.xml" />
    -->
    
    <!-- Note that commenting out mntoptions will give you the defaults.
         You will need to explicitly initialize it with the empty string
         to reset the defaults to nothing. -->
    <mntoptions allow="nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other,sec" />
    <!--
    <mntoptions deny="suid,dev" />
    <mntoptions allow="*" />
    <mntoptions deny="*" />
    -->
    <mntoptions require="nosuid,nodev" />
    
    <!-- requires ofl from hxtools to be present -->
    <logout wait="0" hup="no" term="no" kill="no" />
    
                    <!-- pam_mount parameters: Volume-related -->
    
    <mkmountpoint enable="1" remove="true" />
    
    </pam_mount>
    

    Для отладки подключения замените в файле /etc/security/pam_mount.conf.xml

    <debug enable="0" />
    

    на

    <debug enable="1" />
    

    При этом отладочные сообщения будут показываться в журнале Journald.

    Вы можете сменить механизм монтирования отдав его на откуп systemd. Для этого в pam_mount.xml.conf можно задатьпереопределить опции cifsmount, umount

     <cifsmount>systemd-mount -A -G -q -t cifs %(COMBOPATH) %(MNTPT) -o uid=%(USERUID),gid=%(USERGID),username=%(USER),%(OPTIONS)</cifsmount>
     <umount>systemd-mount -u %(MNTPT)</umount>
    

    Через autofs

    В этом случае заданный ресурс подключается автоматически при каждом обращении пользователя. И отключается после определенного времени бездействия (определяется конфигуацией Autofs).

    Основная статья AutoFS

    https://www.altlinux.org/Autofs

    Для дистрибутивов c KDE

    1. Устанавливаем kde5-autofs-shares:

    apt-get install kde5-autofs-shares
    

    2. Следуем инструкции по подключению в разделе Альт_Рабочая_станция_К_8_советы.

    Групповые политики

    Групповые политики (GPO) на Linux применяются только контроль входа через SSSD и средства Centrify.

    SSSD

    SSSD имеет внутреннюю поддержку следующих групповых политик:

    Политика
    Allow log on locally
    Allow log on through Remote Desktop Services
    Access this computer from the network
    Allow log on as a batch job
    Allow log on as a service

    Примечание: Планируется поддержка других групповых политик средствами подключаемых модулей

    1. Cм получение прав root:

    Примечание: Получение прав root см. root

    Ссылки по групповым политикам

    • https://fedoraproject.org/wiki/Changes/SssdGpoBasedAccessControl
    • http://wiki.eri.ucsb.edu/stadm/AD_Samba4
    • http://centrifying.blogspot.ru/2014/01/basics-using-group-policy-on-unixlinux.html
    • https://www.youtube.com/watch?v=2cJWnUZ8qLI

    Ссылки

    • https://wiki.archlinux.org/index.php/Active_Directory_Integration
    • Ввод в домен на базе Windows 2003
    • https://fedorahosted.org/sssd/wiki/Configuring_sssd_with_ad_server
    • https://wiki.samba.org/index.php/Setup_Samba_as_an_AD_Domain_Member

    Синхронизация времени в установленных операционных системах Linux

    1. На машине Linux войдите как root.
    2. Запустите ntpdate -u команда для обновления машинных часов. Например, ntpdate -u ntp-time. …
    3. Откройте файл / etc / ntp. conf и добавьте NTP-серверы, используемые в вашей среде. …
    4. Запустите команду service ntpd start, чтобы запустить службу NTP и внести изменения в конфигурацию.

    Как мне исправить Windows и Linux, показывающие разное время?

    По умолчанию Windows предполагает, что время хранится в местном времени, в то время как Linux предполагает, что время хранится в формате UTC, и применяет смещение. Это приводит к тому, что одна из ваших операционных систем показывает неправильное время в ситуации двойной загрузки. Чтобы исправить это, у вас есть два варианта: заставить Linux использовать местное время или заставить Windows использовать время UTC.

    Как Windows Server синхронизирует время?

    Метод 2:

    1. а. Нажмите на часы и выберите «Изменить настройки даты и времени».
    2. б. Щелкните вкладку «Время в Интернете».
    3. c. Убедитесь, что он установлен на «синхронизировать время с time.windows.com»
    4. d. Если этот параметр выбран, нажмите «Изменить настройки», чтобы установить флажок «Синхронизировать с сервером времени в Интернете».
    5. е. Щелкните ОК.

    Как синхронизирует время NTP-сервер?

    Альтернативный метод синхронизации часов вашего компьютера с сервером времени IU

    1. Перейдите к командной строке с повышенными привилегиями. …
    2. В командной строке введите: w32TM / config / syncfromflags: manual /manualpeerlist:ntp.indiana.edu.
    3. Введите: w32tm / config / update.
    4. Введите: w32tm / resync.
    5. В командной строке введите exit, чтобы вернуться в Windows.

    12 колода 2019 г.

    Как узнать, работает ли Windows NTP?

    Чтобы проверить список серверов NTP:

    1. Щелкните по кнопке Windows.
    2. В поле «Искать программы и файлы» введите cmd и нажмите Enter.
    3. При необходимости выберите cmd из списка результатов поиска.
    4. В окне командной строки введите w32tm / query / peers.
    5. Убедитесь, что запись отображается для каждого из серверов, перечисленных выше.

    Как узнать, установлен ли NTP в Linux?

    Чтобы убедиться, что ваша конфигурация NTP работает правильно, выполните следующее:

    1. Используйте команду ntpstat, чтобы просмотреть состояние службы NTP в экземпляре. [ec2-user ~] $ ntpstat. …
    2. (Необязательно) Вы можете использовать команду ntpq -p, чтобы просмотреть список одноранговых узлов, известных серверу NTP, и сводку их состояния.

    Как исправить время в Linux?

    Установите время, дату и часовой пояс в Linux из командной строки или Gnome | Используйте ntp

    1. Установить дату в командной строке date +% Y% m% d -s «20120418»
    2. Установите время в командной строке date +% T -s «11:14:00»
    3. Установите время и дату в командной строке date -s «19 APR 2012 11:14:00»
    4. Дата проверки Linux из даты командной строки. …
    5. Установите аппаратные часы.

    19 апр. 2012 г.

    Как сделать Windows Time UTC?

    2. Сделайте так, чтобы Microsoft Windows использовала UTC:

    1. перейдите в меню «Пуск», найдите и запустите cmd от имени администратора.
    2. Когда откроется командная консоль, вставьте команду ниже, чтобы создать значение DWORD в реестр: Reg add HKLMSYSTEMCurrentControlSetControlTimeZoneInformation / v RealTimeIsUniversal / t REG_DWORD / d 1.

    Как изменить время загрузки при двойной загрузке?

    6 ответы

    1. Нажмите Alt + F2.
    2. Введите команду gksu gedit / etc / default / grub.
    3. измените значение GRUB_TIMEOUT на 15 или 20 по мере необходимости. (значение в секундах) или Установка тайм-аута на -1 заставит GRUB ждать бесконечно, пока вы вручную не выберете запись и не нажмете клавишу ввода. Это должно выглядеть так. GRUB_TIMEOUT = 10.
    4. сохрани это. Закройте gedit.

    Как исправить время синхронизации Windows?

    Как исправить ошибку синхронизации time.windows.com?

    1. Проверьте, запущена ли служба времени Windows.
    2. Используйте другой сервер.
    3. Перезапустите службу времени Windows.
    4. Используйте командную строку.
    5. Отключите сторонний брандмауэр.
    6. Измените интервал обновления по умолчанию.
    7. Добавьте больше серверов в реестр.
    8. Измените значения реестра.

    Как мне повторно синхронизировать время моего контроллера домена?

    Выполните на клиенте следующие действия:

    1. Убедитесь, что для службы времени Windows установлено значение «Автоматически» и что она работает.
    2. Чтобы синхронизировать время с контроллером домена, выполните следующие команды в административном командном окне: w32tm / resync. чистое время DC / set.

    23 февраля. 2021 г.

    Как мне синхронизировать часы моего компьютера?

    Как изменить сервер времени в Windows 10

    1. Откройте панель управления.
    2. Щелкните «Часы», «Язык» и «Регион».
    3. Щелкните Дата и время.
    4. Щелкните вкладку Интернет-время.
    5. Нажмите кнопку «Изменить настройки».
    6. Убедитесь, что выбран параметр «Синхронизировать с сервером времени в Интернете».
    7. Используйте раскрывающееся меню, чтобы выбрать другой сервер.

    25 юл. 2017 г.

    Как узнать, синхронизируются ли мои часы?

    Чтобы проверить, запущен ли w32time, сделайте следующее: перейдите в Панель управления-> Администрирование-> Службы. Прокрутите до функции «Время Windows» и проверьте ее «Статус», которая должна быть «запущена». Также проверьте «Тип запуска» и, если возможно, установите для него «Автоматический» или «Ручной».

    Может ли Windows 10 быть NTP-сервером?

    Чтобы настроить NTP, вам все равно нужно использовать классический апплет панели управления. Чтобы настроить сервер NTP в Windows 10, сделайте следующее. Откройте Панель управления.

    Like this post? Please share to your friends:
  • Link shell extension windows 10 официальный сайт
  • Linux с поддержкой windows приложений скачать
  • Link shell extension windows 10 x64 скачать
  • Linux рабочие столы похожие на windows
  • Lines 98 скачать бесплатно для windows 7 на русском