نصب و راه اندازی سرویس NTP در لینوکس
پروتکل (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 سطح یک به آدرس 0.us.pool.ntp.org و wwv.nist.gov بهره می گیریم.
مرحله اول - نصب :
برای نصب در لینوکس های ردهتی از قبیل فدورا و سنت او اس با استفاده از YUM بدین طریق عمل کنید :
yum -y install ntpمرحله دوم - تنظیمات :
با استفاده از ادیتورهای لینوکسی از قبیل nano یا vi مطابق دستور زیر به فایل تنظیم سرویس به آدرس etc/ntp.conf/ بروید.
nano /etc/ntp.conf تنظیمات زیر را انجام دهید :
1- ابتدا سرورهای Startum مد نظر خود را مشخص کنید:
server 0.us.pool.ntp.org
server wwv.nist.gov2-نوع دسترسی سرویس های فوق را مشخص کنید :
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.14-رنج آدرس IP هایی که می خواهیم اجازه پرس و جوی زمان از سرور را داشته باشند به طریق زیر اضافه می کنیم :
restrict 192.168.10.0 mask 255.255.255.0 nomodify notrap 5- تنظیم سرویس تا در زمان استارت آپ روشن و مشغول به کار شود :
chkconfig ntpd on6- روش کردن سرویس NTP
service ntpd restartمرحله سوم - بررسی عملکرد سرویس :
بهتر این است که همان شروع کار درستی عملکرد سرویس را مورد بررسی قرار دهیم :
ntpq -p 0.us.pool.ntp.org خروجی دستور :
remote refid st t when poll reach delay offset jitter
================================================== ============================
*clock.sjc.he.ne .CDMA. 1 u 287 1024 377 41.147 2.016 0.376
+clock.fmt.he.ne .CDMA. 1 u 793 1024 377 38.808 0.093 0.123
+clock.nyc.he.ne .CDMA. 1 u 666 1024 377 43.767 -2.950 0.182
-tick.e.mattnord 129.7.1.66 2 u 893 1024 377 0.702 -0.233 0.844برای همگام سازی صحیح ، اعداد delay ، jitter و offset باید غیرصفر و علاوه برآن مقدار jitter زیر 100 باشد.
با استفاده از دستور pgrep ntpd می توانید اطمینان حاصل کنید که سرویس NTP مشغول به کار می باشد و در جواب باید شناسه پروسس سرویس را برگرداند.
مرجله چهارم - ایجاد دسترسی در فایروال :
سرویس NTP از پورت 123 UDP برای ارتباط با سرورها و کلاینت ها استفاده می کند.برای این منظور 2 رول برای دسترسی سرور ما برای همگام سازی با سرورهای مد نظرمان نیاز است و 2 رول برای دسترسی کلاینت ها به سرور محلی ما
رول برای دسترسی به 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 بهره می گیرد،میکروتیک می باشد.