[Rocky] 02. NTP 서버 구성
카테고리: ROCKY
🔔 타임 서버(Time Server) 필요한 이유
전산실에서는 수많은 장비들이 운영되고 있으며 각 시스템들은 시스템 시간을 가지고 있습니다. 이때 시간이 모두 일치해야 각 시스템에서 생성되는 데이터, 로그, 보안 등에 관련된 것들이 시간에 대해 일관성을 가지게 됩니다. 하지만 시간이 지남에 따라 운영되는 시스템들의 시스템 시간이 불일치하게 되므로 동일한 시간을 가기 위해 시간 동기화를 할 필요가 있습니다2. 이때 사용되는 서버가 NTP(Network Time Protocol) 서버입니다.
🔔 NTP(Network Time Protocol)
네트워크를 통해 시스템 시간을 동기화 시키는 통신 프로토콜 또는 서비스
-
NTP는 시간만을 처리하는 원자 서버가 있으며 이를 “Stratum 0”이라고 부릅니다.
-
그리고 NTP 서버와 직접 연결된 NTP 서버를 “Stratum 1”이라고 부릅니다.
-
“Stratum 1”, “Stratum 2”, “Stratum 3” 이런 형식으로 NTP는 계층적인 시스템을 사용합니다.
-
전산실에 NTP 서버로 사용할 시스템을 두고 Stratum 서버와 시간을 동기화 설정을 하고 전산실 내에 있는 모든 시스템에 NTP 서비스를 통해 시간 동기화를 시키는 것이 일반적입니다.
-
이렇게 하기 위해서는 NTP 서버/클라이언트 구성이 필요합니다.
■ Stratum Server
| 도메인 | IP 주소 | 비고 |
|---|---|---|
| time.kriss.re.kr | 210.98.16.100 | Stratum 1, 한국표준과학연구원 |
| time2.kriss.re.kr | 210.98.16.101 | Stratum 1, 한국표준과학연구원 |
| ntp.postech.ac.kr | 141.223.182.106 | Stratum 1, 포항공대 |
| ntp.xbsd.pe.kr | 58.73.137.250 | Stratum 1, xbsd |
| gps.bora.net | 210.120.246.46 | Stratum 1, LGU+ |
| ntp.kornet.net | 168.126.3.6 | Stratum 1, KT |
| ntp1.cs.pusan.ac.kr | - | Stratum 1, 부산대학교 |
| ntp2.cs.pusan.ac.kr | - | Stratum 1, 부산대학교 |
| ntp.ewha.or.kr | 175.119.224.116 / 114.207.245.175 | Stratum 2, 이화여대 |
| maths.kaist.ac.kr | 143.248.25.208 | Stratum 2, 카이스트 |
| time.bora.net | 203.248.240.103 | Stratum 2, LGU+ |
| time.korserve.net | 211.51.221.196 / 211.51.221.130 | Stratum 2, korserve |
| rokkorclub.net | 210.118.170.59 | Stratum 2, rokkorclub |
| time.wonkwang.ac.kr | 203.249.48.182 | Stratum 2, 원광대학교 |
| ntp1.epidc.co.kr | 211.115.194.21 | Stratum 2, epidc |
| ntp2.epidc.co.kr | 211.115.194.22 | Stratum 2, epidc |
| time.nuri.net | - | Stratum 2, 아이네트호스팅 |
| cse.inha.ac.kr | 165.246.43.176 | Stratum 2, 인하대학교 |
| radi.inha.ac.kr | 165.246.43.195 | Stratum 2, 인하대학교 |
🔔 NTP 서버 구성
■ chrony 설치 및 구성
$ dnf -y install chrony
$ vi /etc/chrony.conf
# 3번째 줄 : 동기화할 서버를 변경하세요 (자신의 시간대에 맞는 NTP 서버로 바꾸세요)
# NTP 서버 자체도 다른 NTP 서버와 시간을 동기화할 필요가 있습니다
#pool 2.centos.pool.ntp.org iburst
pool time.kriss.re.kr iburst
pool 0.asia.pool.ntp.org iburst
pool 1.asia.pool.ntp.org iburst
pool 2.asia.pool.ntp.org iburst
pool 3.asia.pool.ntp.org iburst
# 24번째 줄 : NTP 클라이언트로부터 시간 동기화 요청을 받을 수 있도록 허용할 네트워크 범위를 추가하세요
# 자신의 로컬 네트워크을 지정, 지정하지 않으면 localhost만 허용됩니다
allow 192.168.219.0/24
$ systemctl enable --now chronyd
■ 방화벽이 실행 중이면 NTP 서비스를 허용 (NTP는 [123/UDP]를 사용)
$ firewall-cmd --add-service=ntp
$ firewall-cmd --runtime-to-permanent
■ 정상적으로 작동하는지 확인
$ chronyc -a makestep
$ chronyc sources
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^+ send.mx.cdnetworks.com 2 6 377 8 -659us[ -659us] +/- 29ms
^* 121.162.54.1 3 6 377 9 +858us[+1178us] +/- 32ms
^+ 121.174.142.81 3 6 377 9 -1312us[ -995us] +/- 56ms
^- 106.247.248.106 2 6 377 9 -1474us[-1474us] +/- 47ms
🔔 NTP 클라이언트 구성
■ chrony 설치 및 구성
- NTP 클라이언트의 설정은 NTP 서버와 동일하지만, NTP 클라이언트는 다른 호스트로부터 시간 동기화 요청을 받을 필요가 없으므로 [allow ***] 줄을 지정할 필요가 없습니다.
$ dnf -y install chrony
$ vi /etc/chrony.conf
# 3번째 줄 : 자신의 NTP 서버나 자신의 시간대에 있는 다른 NTP 서버로 변경하세요.
#pool 2.centos.pool.ntp.org iburst
pool rocky.ntp.test.com iburst
$ systemctl enable --now chronyd
$ chronyc -a makestep
$ chronyc sources
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^? ntp.test.com 0 7 0 - +0ns[ +0ns] +/- 0ns
■ NTPStat을 설치하면 시간 동기화 상태를 표시할 수 있습니다.
$ dnf -y install ntpstat
$ ntpstat
댓글 남기기