12.7. Chrony의 NTP(Network Time Security) 개요


NTP(Network Time Security)는 주요 클라이언트를 확장하도록 설계된 NTP(Network Time Protocol) 인증 메커니즘입니다. 클라이언트 시스템으로 이동하는 동안 서버 시스템에서 수신한 패킷이 변경되지 않은지 확인합니다. NTP(Network Time Security)에는 서버와 클라이언트 간에 사용되는 암호화 키를 자동으로 생성하는 NTPS-KE(Key Establishment) 프로토콜이 포함되어 있습니다.

주의

NTS는 FIPS 및 OSPP 프로필과 호환되지 않습니다. FIPS 및 OSPP 프로필을 활성화하면 NTS로 구성된 chronyd 가 치명적 메시지와 함께 중단될 수 있습니다. GNUTLS_FORCE_FIPS_MODE=0 설정을 /etc/sysconfig/chronyd 파일에 추가하여 chronyd 서비스의 OSPP 프로필 및 FIPS 모드를 비활성화할 수 있습니다.

12.7.1. 클라이언트에서 NTS(Network Time Security) 활성화

기본적으로 NTP(Network Time Security)는 활성화되어 있지 않습니다. /etc/chrony.conf 에서 NTS를 활성화할 수 있습니다. 이를 위해 다음 단계를 수행하십시오.

사전 요구 사항

  • 시간 서버는 NTS를 지원합니다.

절차

/etc/crony.conf 파일을 편집하고 다음과 같이 변경합니다.

  1. 권장되는 iburst 옵션 외에 the nts 옵션을 사용하여 server를 지정합니다.

    For example:
    server time.example.com iburst nts
    server nts.netnod.se iburst nts
    server ptbtime1.ptb.de iburst nts
    Copy to Clipboard Toggle word wrap
  2. 시스템 부팅 중에 NTS-KE(Network Time Security-Key Establishment) 세션을 반복하지 않도록 다음 설정을 추가합니다.

    ntsdumpdir /var/lib/chrony
    Copy to Clipboard Toggle word wrap
  3. /etc/sysconfig/network 에 다음 행을 추가하여 DHCP 에서 제공하는 NTP(Network Time Protocol) 서버와의 동기화를 비활성화합니다.

    PEERNTP=no
    Copy to Clipboard Toggle word wrap
  4. chronyd 서비스를 다시 시작하십시오.

    systemctl restart chronyd
    Copy to Clipboard Toggle word wrap

검증

  • NTS 키가 성공적으로 설정되었는지 확인합니다.

    # chronyc -N authdata
    
    Name/IP address  Mode KeyID Type KLen Last Atmp  NAK Cook CLen
    ================================================================
    time.example.com  NTS     1   15  256  33m    0    0    8  100
    nts.netnod.se   NTS     1   15  256  33m    0    0    8  100
    ptbtime1.ptb.de   NTS     1   15  256  33m    0    0    8  100
    Copy to Clipboard Toggle word wrap

    KeyID,TypeKLen 의 값은 0이 아니어야 합니다. 값이 0이면 chronyd 에서 시스템 로그에 오류 메시지가 있는지 확인합니다.

  • 클라이언트가 NTP를 측정하고 있는지 확인합니다.

    # chronyc -N sources
    
    MS Name/IP address Stratum Poll Reach LastRx Last sample
    =========================================================
    time.example.com   3        6   377    45   +355us[ +375us] +/-   11ms
    nts.netnod.se   1        6   377    44   +237us[ +237us] +/-   23ms
    ptbtime1.ptb.de    1        6   377    44   -170us[ -170us] +/-   22ms
    Copy to Clipboard Toggle word wrap

    Reach 열에는 0이 아닌 값이 있어야 합니다. 이상적인 377. 값이 377를 거의 얻지 못하거나 377를 얻지 못하면 네트워크에서 NTP 요청 또는 응답이 손실되고 있음을 나타냅니다.

12.7.2. 시간 서버에서 NTS(Network Time Security) 활성화

자체 NTP(Network Time Protocol) 서버를 실행하는 경우 서버 NTP(Network Time Security) 지원을 활성화하여 클라이언트가 안전하게 동기화하도록 할 수 있습니다.

NTP 서버가 다른 서버, 즉 Stratum 1 서버인 경우 동기화에 NTS 또는 대칭 키를 사용해야 합니다.

사전 요구 사항

  • PEM 형식의 서버 개인 키
  • 필요한 중간 인증서가 있는 서버 인증서 PEM 형식

절차

  1. /etc/chrony.conf 파일을 편집하고 다음과 같이 변경합니다.

    ntsserverkey /etc/pki/tls/private/<ntp-server.example.net>.key
    ntsservercert /etc/pki/tls/certs/<ntp-server.example.net>.crt
    Copy to Clipboard Toggle word wrap
  2. chrony 사용자가 파일을 읽을 수 있도록 개인 키와 인증서 파일에 대한 권한을 설정합니다. 예를 들면

    # chown root:chrony /etc/pki/tls/private/<ntp-server.example.net>.key /etc/pki/tls/certs/<ntp-server.example.net>.crt
    
    # chmod 644 /etc/pki/tls/private/<ntp-server.example.net>.key /etc/pki/tls/certs/<ntp-server.example.net>.crt
    Copy to Clipboard Toggle word wrap
  3. ntsdumpdir /var/lib/chrony 설정이 있는지 확인합니다.
  4. firewalld에서 필요한 포트를 엽니다.

    # firewall-cmd --permannent --add-port={323/udp,4460/tcp}
    # firewall-cmd --reload
    Copy to Clipboard Toggle word wrap
  5. chronyd 서비스를 다시 시작하십시오.

    # systemctl restart chronyd
    Copy to Clipboard Toggle word wrap

검증

  1. 클라이언트 시스템에서 테스트를 수행합니다.

    $ chronyd -Q -t 3 'server
    
    ntp-server.example.net iburst nts maxsamples 1'
    2021-09-15T13:45:26Z chronyd version 4.1 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +NTS +SECHASH +IPV6 +DEBUG)
    2021-09-15T13:45:26Z Disabled control of system clock
    2021-09-15T13:45:28Z System clock wrong by 0.002205 seconds (ignored)
    2021-09-15T13:45:28Z chronyd exiting
    Copy to Clipboard Toggle word wrap

    시스템 클록 잘못된 메시지는 NTP 서버가 NTS-KE 연결을 수락하고 NTS 보호 NTP 메시지로 응답하고 있음을 나타냅니다.

  2. 서버에서 관찰된 NTS-KE 연결 및 인증된 NTP 패킷을 확인합니다.

    # chronyc serverstats
    
    NTP packets received       : 7
    NTP packets dropped        : 0
    Command packets received   : 22
    Command packets dropped    : 0
    Client log records dropped : 0
    NTS-KE connections accepted: 1
    NTS-KE connections dropped : 0
    Authenticated NTP packets: 7
    Copy to Clipboard Toggle word wrap

    NTS-KE 연결 값이 0이 아닌 NTP 패킷 필드인 경우 클라이언트가 NTS-KE 포트에 연결하고 인증된 NTP 요청을 보낼 수 있었습니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat