پروتکل (Network Time Protocol (NTP برای تنظیم و همگام سازی دقیق ساعت سیستم ها و دستگاه ها با ساعت های اتمی مورد استفاده قرار می گیرد.سرورهای NTP از یک ساختار سلسه مراتبی پیروی می کند که اصطلاحا به آنها Stratum گفته می شود.
Stratum 1 – مستقیما به ساعت های اتمی متصل هستند و خود را با آنها همگام می کنند.
Stratum 2 – به سرورهای Stratum 1 متصل هستند.
هر چه سطح Stratum ها پایین تر می آید ،از سرورهای با دقت کمتری برای همگام سازی استفاده می کنند.
تصویر یک Stratum 0
The U.S. Naval Observatory Alternate Master Clock at Schriever AFB (Colorado) is a Stratum 0 source for NTP
در هر شبکه ای بهتر است که حداقل یه NTP سرور وجود داشته باشد و کلیه سرورها و سخت افزارها ،ساعت خود را با آن هماهنگ کنند.در ادمه به نحوه نصب و راه اندازی سرویس NTP می پردازیم.
در این آموزش ما از سرورهای Stratum سطح یک به آدرس ۰٫us.pool.ntp.org و wwv.nist.gov بهره می گیریم.
مرحله اول – نصب :
برای نصب در لینوکس های ردهتی از قبیل فدورا و سنت او اس با استفاده از YUM بدین طریق عمل کنید :
yum -y install ntp
مرحله دوم – تنظیمات :
با استفاده از ادیتورهای لینوکسی از قبیل nano یا vi مطابق دستور زیر به فایل تنظیم سرویس به آدرس etc/ntp.conf/ بروید.
nano /etc/ntp.conf
تنظیمات زیر را انجام دهید :
۱- ابتدا سرورهای Startum مد نظر خود را مشخص کنید:
server ۰٫us.pool.ntp.org server wwv.nist.gov
2-نوع دسترسی سرویس های فوق را مشخص کنید :
- restrict 0.us.pool.ntp.org mask 255.255.255.255 nomodify notrap noquery restrict
- wwv.nist.gov mask 255.255.255.255 nomodify notrap noquery
در تنظیمات بالا ما به سرورها اجازه ویرایش تنظیمات یا سوال و پرس و جو از سرور NTP را نخواهیم داد.
Parameters | Definitions |
ignore | Deny all packets and queries |
kod | Send Kiss-Of-Death packet on access violation |
nomodify | Deny ntpq / ntpdc queries that attempt to modify the server |
notrap | Deny control message trap service |
noquery | Deny all ntpq / ntpdc queries |
noserve | Deny all queries – except ntpq / ntpdc |
notrust | Deny access unless cryptographically authenticated (ver 4.2 onwards) |
nopeer | Deny all packets that attempt to establish a peer association |
3-همانند همه سرویس های دیگر ،به خود سرور دسترسی کامل را می دهیم :
restrict 127.0.0.1
4-رنج آدرس IP هایی که می خواهیم اجازه پرس و جوی زمان از سرور را داشته باشند به طریق زیر اضافه می کنیم :
- restrict 192.168.10.0 mask 255.255.255.0 nomodify notrap
۵- تنظیم سرویس تا در زمان استارت آپ روشن و مشغول به کار شود :
chkconfig ntpd on
6- روش کردن سرویس NTP
service ntpd restart
مرحله سوم – بررسی عملکرد سرویس :
بهتر این است که همان شروع کار درستی عملکرد سرویس را مورد بررسی قرار دهیم :
ntpq -p ۰٫us.pool.ntp.org
با استفاده از دستور pgrep ntpd می توانید اطمینان حاصل کنید که سرویس NTP مشغول به کار می باشد و در جواب باید شناسه پروسس سرویس را برگرداند.
مرجله چهارم – ایجاد دسترسی در فایروال :
سرویس NTP از پورت ۱۲۳ UDP برای ارتباط با سرورها و کلاینت ها استفاده می کند.برای این منظور ۲ رول برای دسترسی سرور ما برای همگام سازی با سرورهای مد نظرمان نیاز است و ۲ رول برای دسترسی کلاینت ها به سرور محلی ما
رول برای دسترسی به Stratum سرورها :
- iptables -A OUTPUT -p udp –dport 123 -j ACCEPT iptables -A INPUT -p udp –sport 123 -j ACCEPT
رول برای دسترسی کلاینت ها به سرور :
- iptables -A INPUT -p udp –dport 123 -j ACCEPT iptables -A OUTPUT -p udp –sport 123 -j ACCEPT
و در آخر برای ذخیره سازی دستور ها :
/etc/init.d/iptables save
توجه داشته باشید که شما می توانید این رول ها را بر اساس نیازهای خود ویرایش کنید،برای مثال آدرس سرورها برای همگام سازی یا آدرس کلاینت ها را به رول ها اضافه کنید.
SNTP :
پروتکل SNTP مدل ساده شده ی NTP می باشد که به دلیل عدم ذخیره سازی وضعیت در دوره های طولانی مدت بر روی دستگاه ها و سرورهایی که نیازی به زمان دقیق ندارند مورد استفاده قرار می گیرد.نمونه این دستگاه ها و سیستم عامل ها که از پروتکل SNTP بهره می گیرد،میکروتیک می باشد.
منابع :