CentOS 8에 Chrony NTP 서버를 설치하는 방법


이 페이지에서

  1. 전제 조건
  2. 시작하기\n
  3. Chrony 서버 설치
  4. Chrony 서버 구성
  5. 방화벽 구성\n
  6. Chrony 클라이언트 구성
  7. 결론

Chrony는 CentOS 8 운영 체제의 기본 NTP(Network Time Protocol) 서버입니다. 이전 버전의 Linux 운영 체제에서 사용되는 이전 Ntpd를 대체합니다. 원격 인터넷 시간 서버와 시스템 시계를 동기화하는 데 사용됩니다. 모든 응용 프로그램이 올바르게 작동하려면 정확한 시간을 설정하는 것이 매우 중요합니다.

그것은 chronyc와 chronyd의 두 가지 구성 요소로 만들어집니다. chronyd는 시스템 부팅 시 시작되는 데몬입니다. chronyc는 chronyd 성능을 모니터링하는 데 사용되는 명령줄 인터페이스입니다.

이 튜토리얼에서는 CentOS 8 서버에 Chrony를 설치하고 사용하는 방법을 보여줍니다.

전제 조건

  • CentOS 8을 실행하는 두 대의 서버.\n
  • 루트 암호는 서버에서 구성됩니다.\n

시작하기

Chrony를 설치하기 전에 서버에서 올바른 시간대를 설정해야 합니다. 다음 명령으로 설정할 수 있습니다.

timedatectl set-timezone Asia/Kolkata

이제 다음 명령을 사용하여 현재 시간대를 확인하십시오.

timedatectl

다음과 같은 결과가 표시되어야 합니다.

               Local time: Sun 2021-05-02 20:00:44 IST
           Universal time: Sun 2021-05-02 14:30:44 UTC
                 RTC time: Sun 2021-05-02 14:30:43
                Time zone: Asia/Kolkata (IST, +0530)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Chrony 서버 설치

기본적으로 Chrony 패키지는 CentOS 8 기본 리포지토리에 포함되어 있습니다. 다음 명령으로 설치할 수 있습니다.

dnf install chrony -y

Chrony가 설치되면 Chrony 서비스를 시작하고 시스템 재부팅 시 시작되도록 활성화합니다.

systemctl start chronyd
systemctl enable chronyd

다음 명령을 사용하여 Chrony의 상태를 확인할 수도 있습니다.

systemctl status chronyd

다음 출력이 표시되어야 합니다.

? chronyd.service - NTP client/server
   Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2021-05-02 20:00:13 IST; 1min 7s ago
     Docs: man:chronyd(8)
           man:chrony.conf(5)
 Main PID: 616 (chronyd)
    Tasks: 1 (limit: 25014)
   Memory: 2.3M
   CGroup: /system.slice/chronyd.service
           ??616 /usr/sbin/chronyd

May 02 20:00:12 centos8 systemd[1]: Starting NTP client/server...
May 02 20:00:12 centos8 chronyd[616]: chronyd version 3.5 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH >
May 02 20:00:12 centos8 chronyd[616]: Frequency 18.331 +/- 0.061 ppm read from /var/lib/chrony/drift
May 02 20:00:12 centos8 chronyd[616]: Using right/UTC timezone to obtain leap second data
May 02 20:00:13 centos8 systemd[1]: Started NTP client/server.
May 02 20:00:20 centos8 chronyd[616]: Selected source 129.250.35.250
May 02 20:00:20 centos8 chronyd[616]: System clock TAI offset set to 37 seconds
May 02 20:00:20 centos8 chronyd[616]: System clock wrong by 1.153394 seconds, adjustment started
May 02 20:00:21 centos8 chronyd[616]: System clock was stepped by 1.153394 seconds

Chrony 서버 구성

Chrony의 기본 구성 파일은 /etc/chrony.conf에 있습니다. 이를 편집하고 가장 가까운 시간 서버를 변경해야 합니다.

nano /etc/chrony.conf

기본 풀을 주석 처리하고 위치에 가장 가까운 NTP 서버 목록을 추가합니다.

#pool 2.centos.pool.ntp.org iburst
server 1.in.pool.ntp.org
server 2.in.pool.ntp.org
server 3.in.pool.ntp.org

완료되면 파일을 저장하고 닫은 다음 다음 명령을 사용하여 NTP 동기화를 설정합니다.

timedatectl set-ntp true

다음으로 Chrony 서비스를 다시 시작하여 변경 사항을 적용합니다.

systemctl restart chronyd

로컬 네트워크의 특정 IP 범위를 허용하여 NTP 서버에 대한 액세스를 허용할 수도 있습니다. /etc/chrony.conf 파일에 다음 행을 추가하여 허용할 수 있습니다.

# Allow NTP client access from local network.
allow 192.168.0.0/24

이제 다음 명령을 사용하여 NTP 서버가 작동하는지 여부를 확인할 수 있습니다.

chronyc sources

모든 것이 정상이면 다음과 같은 결과가 표시됩니다.

210 Number of sources = 4
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^? ntp7.mum-in.hosts.301-mo>     2   6     1     8    +31ms[  +31ms] +/-  248ms
^? static.15.192.216.95.cli>     2   6     1     8  +2616us[+2616us] +/-   88ms
^? 157.245.102.2                 2   6     1     9  -4088us[-4088us] +/-  139ms
^? ec2-13-126-27-131.ap-sou>     2   6     1     9  +6017us[+6017us] +/-  181ms

방화벽 구성

다음으로 방화벽을 통해 NTP 서비스를 허용해야 합니다. 다음 명령으로 허용할 수 있습니다.

firewall-cmd --permanent --add-service=ntp --permanent

다음으로 방화벽 서비스를 다시 로드하여 변경 사항을 적용합니다.

firewall-cmd --reload

Chrony 클라이언트 구성

다음으로 클라이언트 컴퓨터에 Chrony 클라이언트를 설치하고 Chrony 서버를 사용하도록 구성해야 합니다.

클라이언트 시스템에서 다음 명령을 사용하여 올바른 시간대를 설정하십시오.

timedatectl set-timezone Asia/Kolkata

다음으로 다음 명령을 사용하여 Chrony 패키지를 설치합니다.

dnf install chrony -y

설치가 완료되면 Chrony 구성 파일을 편집하고 NTP 서버를 가리킵니다.

nano /etc/chrony.conf

기본 풀을 주석 처리하고 다음 줄을 추가합니다.

server chrony-server-ip

파일을 저장하고 닫은 후 다음 명령을 사용하여 NTP 동기화를 설정합니다.

timedatectl set-ntp true

그런 다음 Chrony 서비스를 시작하고 다음 명령을 사용하여 시스템 재부팅 시 시작되도록 활성화합니다.

systemctl start chronyd
systemctl enable chronyd

이제 다음 명령을 사용하여 시간 동기화를 확인합니다.

chronyc sources

다음 출력이 표시되어야 합니다.

210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^? chrony-server-ip              0   6     0   10y     +0ns[   +0ns] +/-    0ns

결론

위 가이드에서는 CentOS 8에서 Chrony NTP 서버를 설정하는 방법을 배웠습니다. 또한 Chrony 클라이언트를 설치하고 Chrony 서버와 시간을 동기화하도록 구성하는 방법도 배웠습니다. 궁금한 점이 있으면 언제든지 문의해 주세요.