نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی. پرتال اطلاعاتی
  • خانه
  • مشاوره
  • نصب و پیکربندی یک کلاینت NTP در لینوکس. نصب و پیکربندی سرور زمان ntp در لینوکس نصب سرور ntp

نصب و پیکربندی یک کلاینت NTP در لینوکس. نصب و پیکربندی سرور زمان ntp در لینوکس نصب سرور ntp

گاهی اوقات ساعت کامپیوتر اوبونتو شما گیج می شود، شروع به تاخیر می کند یا عجله می کند. اگرچه این وضعیت بحرانی نیست، اما بسیار ناخوشایند است و می تواند عواقب فاجعه باری داشته باشد، از سردرگمی در گزارش ها به دلیل ابهام زمانی تا دیر رسیدن به جلسه به دلیل اعتماد به ساعت اشتباه. همچنین زمان دقیق برای عملکرد صحیح برخی از برنامه ها مانند ناشناس Tor مهم است.

خوشبختانه، این اغلب اتفاق نمی افتد و معمولاً با اقدامات غیر استانداردی مانند بارگیری سیستم عامل هایی که از الگوریتم های مختلف ذخیره سازی زمان رایانه استفاده می کنند یا تنظیم مجدد حافظه BIOS همراه است می‌تواند همگام‌سازی زمان محلی را از طریق اینترنت تنظیم کند، این کاملاً مفید است اگر اغلب ساعت خود را گم می‌کنید و تنبلی برای تنظیم هر بار آن دارید. در اوبونتو، این کار با استفاده از سرویس NTP و دیمون ntpd انجام می شود. اینها مواردی هستند که در این مقاله مورد بحث قرار خواهند گرفت.

ابتدا کمی در مورد نحوه مشاهده زمان از ترمینال در اوبونتو. برای اطلاع از زمان فعلی، دستور زیر را اجرا کنید:

برای مشاهده داده ها در فرمت UTC، تایپ کنید:

بیایید دریابیم که زمان اوبونتو چقدر از زمان مرجع عقب است:

sudo ntpdate -q ntp.ubuntu.com

در زیر تئوری های زیادی وجود دارد، اگر فقط برای دستورالعمل های نصب به اینجا آمده اید، به راحتی به پایین بروید. UTC مخفف Coordinated Universal Time، یعنی زمان جهانی هماهنگ است. این استاندارد زمانی گرینویچ است، برای کل جهان یکسان است، و به این شکل است که زمان سیستم در لینوکس، از جمله اوبونتو، ذخیره می‌شود و اصلاح مناطق زمانی قبلاً به صورت محلی برای هر کاربر اضافه شده است. این همان جایی است که دلیل خطاهای زمانی هنگام استفاده از ویندوز و یونیکس نهفته است.

همانطور که قبلاً گفتم، اوبونتو زمان را با فرمت UTC ذخیره می کند، در حالی که ویندوز از فرمت محلی برای این کار با اضافه کردن یک منطقه زمانی استفاده می کند. هر بار که کامپیوتر خاموش یا راه اندازی مجدد می شود، سیستم عامل مقدار تایمر خود را در تایمر BIOS ذخیره می کند و هنگامی که بوت می شود، آن را از آنجا می خواند.

و معلوم می شود که سیستم عامل مایکروسافت زمان محلی را ذخیره می کند، اما اوبونتو فکر می کند که UTC است... آیا قبلاً متوجه شده اید که چه اتفاقی می افتد؟ درست است، هر چه این راه‌اندازی‌های مجدد بیشتر باشد، زمان با زمان واقعی تفاوت بیشتری خواهد داشت. اما من قبلاً از موضوع خارج شدم. من در اینجا به شما نمی گویم که چگونه الگوریتم های همگام سازی را در هر دو سیستم تنظیم کنید.

نصب NTP در اوبونتو

ابزار ntpdate برای همگام سازی زمان با ubuntu همراه است و به طور خودکار در هنگام راه اندازی راه اندازی می شود. اگر می خواهید زمان را در حال حاضر همگام کنید، در ترمینال اجرا کنید:

ntpdate -s ntp.ubuntu.com

سرویس ntpd به عنوان استاندارد گنجانده نشده است. وظیفه آن نظارت مداوم بر ساعت سیستم و اصلاح هرگونه انحراف است. برای نصب ntpd تایپ کنید:

sudo apt-get install ntp

برای شروع دیمون، تایپ کنید:

شروع سرویس sudo ntp

و برای اضافه کردن به راه اندازی:

sudo rc-update پیش فرض های ntp را اضافه کنید

شما می توانید سرورهایی را که اوبونتو ما با آنها بررسی می کند در فایل /etc/ntp.conf پیکربندی کنید. فرمت ضبط آدرس سرور است، به عنوان مثال پیکربندی استاندارد:

# از سرورهای پروژه NTP Pool استفاده کنید. تایید شده توسط هیئت فنی اوبونتو
# در 08-02-2011 (LP: #104525). http://www.pool.ntp.org/join.html را ببینید
#اطلاعات بیشتر.
سرور 0.ubuntu.pool.ntp.org
سرور 1.ubuntu.pool.ntp.org
سرور 2.ubuntu.pool.ntp.org
سرور 3.ubuntu.pool.ntp.org

پس از ویرایش پیکربندی، فراموش نکنید که سرویس را مجددا راه اندازی کنید:

راه اندازی مجدد سرویس sudo ntp

حل مسئله

سرویس همگام سازی از پورت 123 برای اتصال به سرور استفاده می کند، بنابراین اگر از فایروال استفاده می کنید، ممکن است دسترسی به این پورت ها مسدود شود، باید با افزودن قوانین زیر اجازه دسترسی را بدهید:

iptables -A output -p udp -s 192.168.1.1 --sport 1024:65535 -d 0/0 --dport 123 -m State --state NEW,Esblished -j ACCEPT

iptables -A input -p udp -s 0/0 --sport 123 -d 192.168.1.1 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT

اکنون ساعت رایانه شما همیشه صحیح خواهد بود.

سرویس Windows Time، علیرغم سادگی ظاهری، یکی از اصول ضروری برای عملکرد عادی یک دامنه Active Directory است. در یک محیط AD که به درستی پیکربندی شده است، سرویس زمان به این صورت عمل می کند: رایانه های کاربران زمان دقیق را از نزدیک ترین کنترل کننده دامنه که در آن ثبت شده اند دریافت می کنند. همه کنترل کننده های دامنه به نوبه خود زمان دقیقی را از DC با " دریافت می کنند شبیه ساز PDC"، و کنترل کننده PDC زمان خود را با یک مشخص همگام می کند. منبع زمانی خارجی می تواند یک یا چند سرور NTP، برای مثال time.windows.com یا سرور NTP ارائه دهنده اینترنت شما باشد. همچنین باید توجه داشت که به‌طور پیش‌فرض، کلاینت‌ها در یک دامنه، زمان را با استفاده از سرویس Windows Time به جای استفاده از پروتکل NTP همگام‌سازی می‌کنند.

اگر با شرایطی روبرو هستید که زمان روی کلاینت ها و کنترلرهای دامنه متفاوت است، ممکن است دامنه شما با مشکل همگام سازی زمان مواجه شود و این مقاله برای شما مفید خواهد بود.

اول از همه، یک سرور NTP مناسب را انتخاب کنید که بتوانید از آن استفاده کنید. لیستی از سرورهای NTP عمومی در http://ntp.org موجود است. در مثال خود، از سرورهای NTP از استخر ru.pool.ntp.org استفاده خواهیم کرد:

  • 0.ru.pool.ntp.org
  • 1.ru.pool.ntp.org
  • 2.ru.pool.ntp.org
  • 3.ru.pool.ntp.org

پیکربندی همگام سازی زمان در یک دامنه با استفاده از خط مشی های گروه شامل دو مرحله است:

1) یک GPO برای کنترل کننده دامنه با نقش PDC ایجاد کنید
2) ایجاد GPO برای مشتریان (اختیاری)

پیکربندی خط مشی همگام سازی NTP در کنترل کننده دامنه PDC

این مرحله شامل پیکربندی یک کنترل کننده دامنه با نقش شبیه ساز PDC برای همگام سازی زمان با یک سرور NTP خارجی است. زیرا در تئوری، نقش شبیه‌ساز PDC می‌تواند بین کنترل‌کننده‌های دامنه حرکت کند، ما باید خط‌مشی ایجاد کنیم که فقط برای مالک فعلی نقش PDC اعمال شود. برای انجام این کار، در کنسول مدیریت کنسول مدیریت خط مشی گروه(GPMC.msc)، بیایید یک جدید ایجاد کنیم. برای انجام این کار، در بخش فیلترهای WMIیک فیلتر و نام ایجاد کنید شبیه ساز PDCو پرس و جو WMI: * را از Win32_ComputerSystem که در آن DomainRole = 5 است انتخاب کنید

سپس یک GPO جدید ایجاد کنید و آن را به کانتینر Domain Controllers اختصاص دهید.

به حالت ویرایش خط مشی بروید و بخش سیاست های زیر را گسترش دهید: پیکربندی کامپیوتر -> الگوهای مدیریتی -> سیستم -> سرویس زمان ویندوز -> ارائه دهندگان زمان

ما به سه سیاست علاقه مندیم:

  • ویندوز NTP Client را پیکربندی کنید: فعال (تنظیمات خط مشی در زیر توضیح داده شده است)
  • ویندوز NTP Client را فعال کنید: فعال شد
  • سرور NTP ویندوز را فعال کنید: فعال شد


در تنظیمات خط مشی ویندوز NTP Client را پیکربندی کنیدپارامترهای زیر را مشخص کنید:

  • NtpServer: 0.ru.pool.ntp.org,0x1 1.ru.pool.ntp.org,0x1 2.ru.pool.ntp.org,0x1 3.ru.pool.ntp.org,0x1
  • تایپ کنید:NTP
  • CrossSiteSyncFlags: 2
  • ResolvePeerBackoffMinutes: 15
  • Peer BAckoffMaxTimes را حل کنید: 7
  • SpecilalPoolInterval: 3600
  • EventLogFlags: 0

مشاوره. فراموش نکنید که فایروال را به گونه ای پیکربندی کنید که سرور PDC بتواند با استفاده از پروتکل NTP (پورت UDP 123) به سرورهای NTP خارجی دسترسی پیدا کند.

توجه داشته باشید. لطفاً به نحو موجود در فیلد توجه کنید NtpServer.فرمت تعیین چندین سرور NTP به شرح زیر است: ntsrv1.org، 0x1 ntpsrv2.org، 0x1(محدود کننده فضا). اسکرین شات حاوی اطلاعات نادرستی است!

فیلتری که قبلا ایجاد کردید را اعمال کنید شبیه ساز PDCبه این سیاست

مشاوره. با استفاده از دستور netdom query fsmo می توانید نام سرور با نقش PDC را پیدا کنید

باقی مانده است که خط مشی های کنترل کننده PDC را به روز کنیم:
gpupdate /force

شروع دستی همگام سازی زمان:
w32tm/resync

تنظیمات NTP فعلی خود را بررسی کنید:
w32tm /query /status

مشاوره. اگر زمان همگام نشد، سرویس Windows Time را مجددا راه اندازی کنید و تنظیمات فعلی را بازنشانی کنید:
نت استاپ w32time
w32tm.exe /لغو ثبت نام
w32tm.exe /register
شروع خالص w32time

تنظیم همگام سازی زمان در مشتریان دامنه

در یک محیط اکتیو دایرکتوری، به طور پیش فرض، مشتریان دامنه زمان خود را با کنترل کننده های دامنه همگام می کنند (اختیاری Nt5DS- همگام سازی زمان با توجه به سلسله مراتب دامنه). به عنوان یک قاعده، این طرح کار می کند و نیازی به پیکربندی مجدد ندارد. با این حال، اگر با همگام سازی زمان در مشتریان دامنه مشکل دارید، می توانید سعی کنید یک سرور زمان را برای مشتریانی که از یک GPO استفاده می کنند، اجباری کنید.

برای انجام این کار، یک GPO جدید ایجاد کنید و آن را به کانتینرها (OU) با رایانه اختصاص دهید. در ویرایشگر GPO، به پیکربندی کامپیوتر -> الگوهای اداری -> سیستم -> سرویس زمان ویندوز -> ارائه دهندگان زمانو سیاست را فعال کنید ویندوز NTP Client را پیکربندی کنید.

نام یا آدرس IP PDC را به عنوان سرور NTP، به عنوان مثال msk-dc1.site، 0x9، و NT5DS را به عنوان نوع همگام سازی مشخص کنید.

تنظیمات Group Policy را روی کلاینت ها به روز کنید و بررسی کنید که کلاینت ها با موفقیت زمان خود را با PDC همگام سازی کرده اند.

مشاوره. این طرح فقط برای دامنه های کوچک قابل اجرا است. برای دامنه های توزیع شده بزرگ با تعداد زیادی DC و سایت، باید برای هر سایت یک خط مشی جداگانه ایجاد کنید تا اطمینان حاصل شود که مشتریان زمان خود را با DC های موجود در سایت همگام می کنند.

پروتکل زمان شبکه یک پروتکل شبکه برای همگام سازی ساعت داخلی رایانه با استفاده از شبکه های تأخیر متغیر بر اساس سوئیچینگ بسته است.

اگرچه NTP به طور سنتی از UDP برای کار استفاده می کند، اما همچنین می تواند از طریق TCP اجرا شود. سیستم NTP در برابر تغییرات تاخیر رسانه انتقال بسیار مقاوم است.

زمان در سیستم NTP به عنوان یک عدد 64 بیتی نشان داده می شود که از یک شمارنده ثانیه 32 بیتی و یک شمارنده ثانیه کسری 32 بیتی تشکیل شده است که اجازه می دهد زمان در محدوده 2-32 ثانیه با دقت نظری ارسال شود. 2-32 ثانیه از آنجایی که مقیاس زمانی در NTP هر 2 32 ثانیه (136 سال) تکرار می شود، گیرنده باید حداقل زمان فعلی را تقریباً بداند (با دقت 68 سال). همچنین توجه داشته باشید که زمان از نیمه شب 1 ژانویه 1900 اندازه گیری می شود نه 1970، بنابراین تقریباً 70 سال (شامل سال های کبیسه) باید از زمان NTP کم شود تا زمان به درستی با سیستم های ویندوز یا یونیکس مطابقت داشته باشد.

چگونه کار می کند

سرورهای NTP در یک شبکه سلسله مراتبی کار می کنند، هر سطح از سلسله مراتب یک لایه نامیده می شود. ردیف 0 با ساعت مرجع نشان داده می شود. این استاندارد از سیگنال GPS (سیستم موقعیت یابی جهانی) یا سرویس ACTS (سرویس زمان کامپیوتر خودکار) گرفته شده است. در سطح صفر، سرورهای NTP کار نمی کنند.

سرورهای NTP ردیف 1 اطلاعات زمان را از ساعت مرجع دریافت می کنند. سرورهای NTP ردیف 2 با سرورهای ردیف 1 همگام شده اند.

سرورهای NTP و کلاینت‌های NTP داده‌های زمانی را از سرورهای ردیف 1 به دست می‌آورند، اگرچه در عمل بهتر است که کلاینت‌های NTP این کار را انجام ندهند، زیرا هزاران درخواست مشتری برای سرورهای ردیف 1 بسیار سنگین است یک سرور NTP محلی که مشتریان شما از آن برای به دست آوردن اطلاعات زمان استفاده می کنند.

ساختار سلسله مراتبی پروتکل NTP قابل تحمل خطا و اضافی است. بیایید به نمونه ای از کارهای او نگاه کنیم. دو سرور NTP سطح 2 با شش سرور مختلف سطح 1، هر کدام در یک کانال مستقل همگام می شوند. گره های داخلی با سرورهای NTP داخلی همگام می شوند. دو سرور NTP سطح 2 زمان را با یکدیگر هماهنگ می کنند. اگر پیوند به سرور ردیف 1 یا یکی از سرورهای ردیف 2 از کار بیفتد، سرور ردیف 2 اضافی فرآیند همگام سازی را بر عهده می گیرد.

به همین ترتیب، گره‌ها و دستگاه‌های ردیف 3 می‌توانند از هر یک از سرورهای ردیف 2 استفاده کنند. با همگام سازی با چندین سرور زمان، NTP از داده های همه منابع برای محاسبه دقیق ترین زمان استفاده می کند.

شایان ذکر است که پروتکل NTP زمان را به شکل خالص خود تنظیم نمی کند. ساعت محلی را با استفاده از تغییر زمان، تفاوت بین زمان سرور NTP و ساعت محلی تنظیم می کند. سرورهای NTP و کلاینت‌ها ساعت خود را تنظیم می‌کنند و با زمان فعلی به تدریج یا یکباره همگام می‌شوند.

برای کار سرور و مشتری NTPپاسخ می دهد " سرویس زمان ویندوز" ("W32Time").
برای پیکربندی سرور به سیستم عامل ویندوزاین مراحل را دنبال کنید:

1. سرویس را برای شروع خودکار تنظیم کنید " W32Timeبرای این کار در شعبه رجیستری
"HKLM\System\CurrentControlSet\Services\W32Time "تنظیم برای پارامتر" شروع کنید "معنی 2 .

2. سپس باز کنید " HKLM\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer "و نصب کن" فعال شد "V واحد.

3.ما پارامترهای زیر را ویرایش می کنیم:
- شاخه: " HKLM\System\CurrentControlSet\Services\W32Time\Parameters "، پارامتر " تایپ کنید "
NoSync - NTP-سرور با هیچ منبع زمانی خارجی هماهنگ نشده است. از یک ساعت تعبیه شده در تراشه استفاده می کند CMOSخود سرور؛
NTP - NTP-سرور با سرورهای زمانی خارجی که در پارامتر رجیستری مشخص شده اند هماهنگ شده است. NtpServer";
NT5DS - NTP-سرور با توجه به سلسله مراتب دامنه همگام می شود.
AllSync - NTP-سرور از تمام منابع موجود برای همگام سازی استفاده می کند.

پارامتر " NtpServer "، جایی که میزبانی که این سرور زمان را با آن همگام می کند نشان داده شده است. در صورت لزوم، می توانید با وارد کردن آنها چندین هاست اضافه کنید. DNSنام ها یا IPآدرس ها با فاصله از هم جدا شده اند. در انتهای هر نام، که با کاما از هم جدا شده اند، می توانید پرچمی اضافه کنید که حالت همگام سازی با سرور زمان را تعیین می کند.
مقادیر زیر مجاز است:
0x1 - بازه ویژه، استفاده از فاصله نظرسنجی خاص.
0x2 -حالت UseAsFallbackOnly;
0x4 - متقارن فعال, حالت فعال متقارن;
0x8 - مشتری، ارسال درخواست در حالت مشتری.
هنگام استفاده از پرچم " بازه ویژه"، مقدار بازه تنظیم شده در کلید مورد نیاز است" SpecialPollInterval". وقتی پرچم است" UseAsFallbackOnlyبه سرویس زمان اطلاع داده می شود که از این سرور به عنوان پشتیبان استفاده می شود و قبل از همگام سازی با آن، با سرورهای دیگر موجود در لیست تماس گرفته می شود. حالت فعال متقارن استفاده می شود. NTP-سرورها به طور پیش فرض و حالت مشتری را می توان در صورت بروز مشکل در همگام سازی استفاده کرد.

شاخه " HKLM\System\CurrentControlSet\Services\W32Time\Config "، پارامتر " اعلام پرچم ها "مسئول نحوه اعلام خود است NTP-سرور و می تواند مقادیر زیر را بگیرد:
0x0 (سرور زمان نیست) -سرور خود را از طریق تبلیغ نمی کند NetLogon، به عنوان منبع زمان. او می تواند پاسخ دهد NTPدرخواست می کند، اما همسایگان نمی توانند آن را تشخیص دهند.
0x1 (سرور همیشه زمان) -سرور همیشه خود را بدون توجه به وضعیت خود اعلام می کند.
0x2 (سرور زمان خودکار) -سرور فقط زمانی خود را اعلام می کند که زمان قابل اعتمادی را از همسایه دیگر دریافت کند (NTPیا NT5DS);
0x4 (سرور زمان همیشه قابل اعتماد) -سرور همیشه خود را به عنوان یک منبع زمانی قابل اعتماد اعلام می کند.
0x8 (سرور زمان قابل اعتماد خودکار) -یک کنترل کننده دامنه به طور خودکار قابل اعتماد اعلام می شود اگر - PDC- شبیه ساز دامنه ریشه جنگل. این پرچم به استاد اجازه می دهد PDCجنگل ها حتی در صورت عدم ارتباط با مافوق، خود را به عنوان منبع مجاز زمان معرفی کنند NTP-سرورها نه یک کنترلر یا سرور عضو (که دارای پرچم پیش فرض است 0x2) اگر نتواند منبعی برای خود بیابد، نمی تواند ادعا کند که منبع زمانی قابل اعتمادی است.
معنی " اعلام پرچم ها " می تواند مجموع پرچم های آن باشد، به عنوان مثال:
10=2+8 - NTP- سرور خود را به عنوان منبع قابل اعتماد زمان اعلام می کند، مشروط بر اینکه خودش زمان را از یک منبع معتبر دریافت کند یا باشد PDCدامنه ریشه پرچم 10 به طور پیش فرض هم برای اعضای دامنه و هم برای سرورهای مستقل تنظیم شده است.
5=1+4 - NTP-سرور همیشه خود را به عنوان یک منبع قابل اعتماد زمان اعلام می کند. به عنوان مثال، برای اعلام یک سرور عضو (نه یک کنترل کننده دامنه) به عنوان یک منبع زمانی قابل اعتماد، به پرچم نیاز دارید 5 ;

شاخه " HKLM\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient "، پارامتر " SpecialPollInterval " در ثانیه مشخص می شود و به طور پیش فرض مقدار آن است 604800 ، که یک هفته است. این مقدار بسیار زیاد است، بنابراین ارزش آن را دارد که ارزش را به مثلاً یک ساعت کاهش دهید ( 3600 ).

4. پس از انجام تنظیمات، می توانید سرویس زمان را شروع کنید: شروع خالص w32time ". اگر سرویس قبلاً در حال اجرا بود، پیکربندی را با دستور " اعمال کنید. w32tm /config /update "و راه اندازی مجدد:" نت استاپ w32time && net start w32time ".

5. پس از راه اندازی مجدد سرویس NTP-سرور از قبل فعال است و می تواند به مشتریان سرویس دهد. می توانید با استفاده از دستور "این را تأیید کنید w32tm /query /configuration ". این دستور یک لیست کامل از پارامترهای سرویس را نمایش می دهد. اگر بخش " NtpServer"حاوی رشته" فعال: 1 "پس همه چیز خوب است.

ظهر بخیر، مهمانان و خوانندگان همیشگی. من به تدریج از اصول اولیه به مطالعه عمیق تر لینوکس می روم. امروز می خواهم در نظر بگیرم عملکرد پروتکل ntp، و همچنین تنظیم سرور زمان در لینوکس(سرور ntp). بنابراین، اجازه دهید با تئوری شروع کنیم.

پروتکل NTP

پروتکل زمان شبکه (NTP)- یک پروتکل شبکه برای همگام سازی ساعت داخلی رایانه با استفاده از شبکه هایی با تأخیر متغیر (بخوانید "عرض کانال"/کیفیت).

NTP برای کار خود استفاده می شود پروتکل UDP و پورت 123.

نسخه پروتکل فعلی - NTP 4. NTPاز سیستم سلسله مراتبی استفاده می کند "سطوح ساعتی"(به آنها نیز گفته می شود لایه). سطح 0 (یا لایه 0)- اینها معمولاً دستگاه هایی هستند که ساعت های اتمی (مولکولی، کوانتومی)، ساعت های GPS یا ساعت های رادیویی هستند. این دستگاه ها معمولاً در شبکه جهانی وب منتشر نمی شوند، اما مستقیماً به آن متصل می شوند سرورهای زمان سطح 1از طریق پروتکل RS-232 (با فلش های زرد رنگ در تصویر نشان داده شده است). سطح 1هماهنگ با ساعت با دقت بالا سطح 0، معمولاً به عنوان منبع برای سرورها کار می کنند سطح 2. سطح 2هماهنگ با یکی از ماشین ها سطح 1و همگام سازی با سرورهای سطح شما نیز امکان پذیر است. سطح 3مشابه دومی کار می کند به طور معمول سرورهای سطوح دو به پایین در شبکه منتشر می شوند. پروتکل NTPتا 256 سطح را پشتیبانی می کند. همچنین می خواهم توجه داشته باشم که سرورهای سطوح 1 و 2 و گاهی اوقات حتی 3 همیشه برای دسترسی عمومی باز نیستند. گاهی اوقات، برای همگام سازی با آنها، باید درخواستی را از طریق پست برای مدیران دامنه ارسال کنید.

چرا دسترسی به سرورها محدودیت دارد؟ با انتقال به هر سطح، خطا نسبت به سرور اولیه کمی افزایش می یابد، اما تعداد کل سرورها افزایش می یابدو بنابراین .

اختصاص یک سرور NTP در شبکه محلی

چرا ممکن است به یک سرور NTP نیاز داشته باشیم؟به عنوان مثال، خدماتی در سیستم عامل ها وجود دارد که ممکن است به زمان همگام شده بستگی داشته باشند. بارزترین نمونه از این خدمات، پروتکل احراز هویت Kerberos است. برای کارکرد آن، لازم است که در رایانه هایی که با استفاده از این پروتکل به آنها دسترسی دارید، زمان سیستم حداکثر 5 دقیقه متفاوت باشد. علاوه بر این، زمان دقیق در همه رایانه ها تجزیه و تحلیل گزارش های امنیتی را هنگام بررسی حوادث در یک شبکه محلی بسیار آسان تر می کند.

حالت های عملکرد سرور / سرویس گیرنده NTP

مشتری/سرور

این حالت تا حد زیادی رایج ترین مورد استفاده در اینترنت است. طرح کار کلاسیک است. کلاینت درخواستی را ارسال می کند که سرور در مدت زمانی به آن پاسخ می دهد. کلاینت با استفاده از دستور سرور در فایل پیکربندی، جایی که نام DNS سرور زمان مشخص شده است، پیکربندی می شود.

حالت متقارن فعال/غیرفعال

این حالت در صورتی استفاده می شود که همگام سازی زمانی بین تعداد زیادی ماشین همتا انجام شود. علاوه بر این واقعیت که هر ماشین با یک منبع خارجی همگام می شود، با همسایگان خود (همتایان) همگام می شود و به عنوان مشتری و سرور زمان برای آنها عمل می کند. بنابراین حتی اگر یک ماشین یک منبع خارجی را "از دست بدهد"، باز هم می تواند زمان دقیقی را از همسایگان خود بدست آورد. همسایه ها می توانند در دو حالت فعال و غیرفعال کار کنند. وقتی در حالت فعال کار می کند، خود ماشین زمان خود را به تمام ماشین های همسایه فهرست شده در بخش peers فایل پیکربندی ntp.conf ارسال می کند. اگر همسایگان در این بخش مشخص نشده باشند، دستگاه در حالت غیرفعال کار می کند. برای جلوگیری از به خطر انداختن یک مهاجم از ماشین های دیگر با معرفی به عنوان منبع فعال، باید از احراز هویت استفاده شود.

حالت پخش

این حالت برای استفاده در مواردی توصیه می شود که تعداد کمی از سرورها به تعداد زیادی از مشتریان سرویس می دهند. هنگام کار در این حالت، سرور به صورت دوره ای بسته هایی را با استفاده از آدرس پخش زیرشبکه ارسال می کند. کلاینت پیکربندی شده برای همگام سازی به این روش بسته پخش سرور را دریافت کرده و با سرور همگام می شود. یکی از ویژگی های این حالت این است که زمان در یک زیر شبکه تحویل داده می شود (بسته های پخش را محدود می کند). علاوه بر این، احراز هویت باید برای محافظت در برابر مهاجمان استفاده شود.

حالت چندپخشی

این حالت از بسیاری جهات شبیه پخش است. تفاوت این است که آدرس های چندپخشی شبکه های کلاس D فضای آدرس IP برای تحویل بسته ها استفاده می شود. برای کلاینت ها و سرورها آدرس گروه چندپخشی مشخص شده است که از آن برای همگام سازی زمانی استفاده می کنند. این امکان همگام سازی گروه هایی از ماشین های واقع در زیرشبکه های مختلف را فراهم می کند، مشروط بر اینکه روترهای متصل کننده آنها از پروتکل IGMP پشتیبانی کرده و برای انتقال ترافیک چندپخشی پیکربندی شده باشند.

حالت Multicast

این حالت یک نوآوری در نسخه چهارم پروتکل NTP است. این شامل جستجوی مشتری برای سرورهای multiplecast در میان همسایگان شبکه خود، دریافت نمونه‌های زمانی از هر یک از آنها (با استفاده از رمزنگاری) و بر اساس این داده‌ها، انتخاب سه "بهترین" سرور multiplecast است که مشتری با آنها همگام می‌شود. اگر یکی از سرورها خراب شود، کلاینت به طور خودکار لیست خود را به روز می کند.

برای انتقال نمونه های زمانی، کلاینت ها و سرورهایی که در حالت چندپخشی کار می کنند از آدرس های گروه چندپخشی (شبکه های کلاس D) استفاده می کنند. کلاینت‌ها و سرورهایی که از یک آدرس استفاده می‌کنند، ارتباط یکسانی را تشکیل می‌دهند. تعداد ارتباط ها با تعداد آدرس های چندپخشی استفاده شده تعیین می شود.

زمان در لینوکس

من به طور خلاصه به شما می گویم که چه زمانی در لینوکس وجود دارد و چگونه آن را تنظیم کنید. در لینوکس، مانند سایر سیستم عامل ها، 2 بار وجود دارد. اولین - سخت افزار ، گاهی اوقات نامیده می شود ساعت واقعی، به اختصار ( RTC) (معروف به ساعت BIOS) معمولاً با یک کریستال کوارتز نوسانی مرتبط هستند که دقت آن تا چند ثانیه در روز است. دقت به نوسانات مختلف مانند دمای محیط بستگی دارد. ساعت دوم داخلی است ساعت برنامه ، که به طور مداوم از جمله در هنگام وقفه در عملکرد سیستم رخ می دهد. آنها به دلیل بار سنگین سیستم و تأخیر وقفه در معرض تغییرات هستند. با این حال، سیستم معمولاً ساعت سخت افزاری را در هنگام بوت می خواند و سپس از ساعت سیستم استفاده می کند.

تاریخ و زمان سیستم عاملتنظیم در بوت بر اساس مقدار ساعت سخت افزاری، و تنظیمات منطقه زمانی. تنظیمات منطقه زمانی از فایل گرفته شده است /etc/localtime. این فایل یک پیوند (اما اغلب یک کپی) از یکی از فایل های موجود در ساختار دایرکتوری است /usr/share/zoneinfo/.

ساعت های سخت افزاری لینوکس می توانند زمان را در قالب ذخیره کنند UTC(مشابه با GMT)، یا زمان فعلی سرزمینی. توصیه کلی در مورد زمان تنظیم (؟) به شرح زیر است: اگر چندین سیستم عامل روی رایانه نصب شده است و یکی از آنها ویندوز است، باید از زمان فعلی استفاده کنید (زیرا ویندوز زمان را از BIOS/CMOS می گیرد. و آن را محلی می داند). اگر فقط از سیستم عامل های خانواده یونیکس استفاده می شود، توصیه می شود زمان را در بایوس با فرمت UTC ذخیره کنید.

هنگامی که سیستم عامل بوت می شود، ساعت سیستم عامل و ساعت بایوس کاملاً مستقل هستند. هسته سیستم هر 11 ثانیه ساعت سیستم را با ساعت سخت افزاری همگام می کند.

بعد از مدتی ممکن است چند ثانیه بین ساعت سخت افزاری و نرم افزاری اختلاف وجود داشته باشد. کدام ساعت ها زمان صحیح را نگه می دارند؟ تا زمانی که آن را تنظیم نکنیم، نه یکی و نه دیگری همگام سازی زمان

توجه داشته باشید:

هسته لینوکس همیشه زمان را به صورت تعداد ثانیه از نیمه شب ذخیره و محاسبه می کند 1 ژانویه 1970 از سال، صرف نظر از اینکه ساعت شما روی زمان محلی یا جهانی تنظیم شده است. تبدیل به زمان محلی در طول فرآیند درخواست انجام می شود.

از آنجایی که تعداد ثانیه‌ها از 1 ژانویه 1970 UTC به عنوان یک عدد صحیح 32 بیتی امضا شده ذخیره می‌شود (این در سیستم‌های لینوکس/اینتل صادق است)، ساعت شما در سال 2038 از کار می‌افتد. لینوکس مشکل سال 2000 ندارد، اما مشکل سال 2038 دارد. خوشبختانه تا آن زمان تمام سیستم های لینوکس بر روی سیستم های 64 بیتی اجرا خواهند شد.

سرور NTP لینوکس

معرفی

پیاده سازی های زیادی برای همگام سازی زمان برای سیستم عامل لینوکس وجود دارد. معروف ترین آنها Xntpd (NTP نسخه 3)، ntpd (NTP نسخه 4)، Crony و ClockSpeed ​​هستند. در مثال ما از سرور ntpd استفاده خواهیم کرد.

شبح ntpd هم یک سرور زمان و هم یک سرویس گیرنده است، بسته به تنظیمات فایل پیکربندی /etc/ntpd.conf (گاهی اوقات /etc/ntp.conf)، دیمون می تواند زمان را از سرورهای راه دور دریافت کند و توزیع کند. زمان به میزبان های دیگر

عمومی مدار همگام سازی زماندر شبکه محلی به شرح زیر است: شما باید 1 یا 2 سرور با دسترسی به شبکه جهانی داشته باشید که از اینترنت زمان دریافت می کنند. همه رایانه های موجود در شبکه محلی با سرورهای مشخص شده که زمان را از اینترنت دریافت می کنند، همگام می شوند.

نصب ntpd

در حقیقت، نصب دیمونبه نصب بسته های زیر ختم می شود: ntp(بسته شامل خود دیمون)، ntpdate(ابزار همگام سازی زمان دستی قدیمی است)، ntp-doc(مستندات بسته)، در برخی از توزیع ها باید همان را نصب کنید ntp-utils(ابزارهای تشخیصی)، در برخی از آنها در بسته ntp گنجانده شده است. نحوه نصب برنامه ها در لینوکس را توضیح دادم. پس از نصب بسته، در اکثر توزیع‌ها، دیمون از قبل به عنوان یک کلاینت ntp پیکربندی می‌شود (مثلاً در دبیان اینگونه بود). بر این اساس، فایل های پیکربندی اصلی به طور خودکار ایجاد شدند: /etc/ntp.conf و /var/lib/ntp/ntp.drift و دیمون به طور خودکار راه اندازی شد.

قبل از راه‌اندازی دیمون برای همگام‌سازی با دنیای خارج، توصیه می‌کنم تاریخ فعلی سیستم را روی مقداری تا حد امکان نزدیک به زمان واقعی تنظیم کنید. تنظیم تاریخ در لینوکستولید شده توسط دستور: تاریخ MMDDhhmmCCYY.ss،که در آن MM - ماه، DD - روز ماه، hh - ساعت، میلی متر - دقیقه، CCYY - 4 رقم سال، ss - ثانیه. در عین حال ارزش ها CCYY.ssلازم به ذکر نیست

همانطور که مشاهده می کنید، دستور مشخص شده تاریخ و زمان فعلی را روی 27 دسامبر 2010، 20:06:30 تنظیم می کند. دستور تاریخبدون پارامتر، زمان فعلی سیستم را نمایش دهید. این دستور دارای تعدادی پارامتر است که در man date یافت می شود.

همچنین لازم است ساعت سخت افزاری و منطقه زمانی را به درستی پیکربندی کنید. همانطور که در بالا ذکر شد، منطقه زمانی با کپی کردن فایل منطقه مورد نیاز از دایرکتوری پیکربندی می شود /usr/share/zoneinfo/برای تشکیل پرونده /etc/localtime:

Ntp-server:~# cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime

سخت افزار ساعت را روی UTC تنظیم کردم:

# cat /etc/sysconfig/clock | grep UTC # UTC=true نشان می دهد که ساعت روی UTC تنظیم شده است. UTC=true ntp2-server:~# cat /etc/default/rcS | grep UTC UTC=بله

مثال اول یک فایل پیکربندی را مشخص می کند که استفاده از UTC را برای RH تعریف می کند، دومی برای توزیع های Deb.

علاوه بر تنظیم تنظیمات برای استفاده از زمان UTC، باید مشخص کنید زمان سخت افزاری. (در بیشتر موارد این ضروری نیست، زیرا زمان مشخص شده سیستم به ناچار توسط هسته با سخت افزار هماهنگ می شود). اما باز هم اگر تمایل به انجام آن را دارید ... دستور hwclockساعت سخت افزاری را بر اساس پارامترهای ارسال شده به آن می خواند و تنظیم می کند. گزینه های موجود در صفحه راهنمای فرمان توضیح داده شده است. در اینجا چند نمونه از استفاده از hwclock آورده شده است:

Ntp-server# hwclock # زمان را از ساعت سخت افزاری می خواند ntp-server# hwclock --systohc --utc # زمان ساعت سخت افزاری را بر اساس زمان سیستم بر اساس زمان سیستم تنظیم می کند. زمان بر اساس زمان سیستم ntp-server# hwclock --set --date "22 Mar 2002 13:17" # زمان ساعت سخت افزاری # را روی رشته مشخص شده تنظیم می کند

یکی دیگر از گزینه های تغییر زمان در ساعت سخت افزاری دسترسی به بایوس هنگام بوت شدن سیستم است. از آنجایی که زمان سیستم عامل مستقل از ساعت سخت افزاری است، هر گونه تغییر در BIOS دفعه بعد که بوت می شوید در نظر گرفته می شود.

اکنون که همه چیز را آماده و نصب کرده ایم، بیایید به ادامه مطلب برویم در یک سایت ساخت و ساز.

مدیریت دیمون ntpd

کنترل دیمون ntpdهیچ تفاوتی با کنترل هر شیاطین دیگر ندارد. سرویس ntpd را راه اندازی یا راه اندازی مجدد کنید:

#/etc/init.d/ntp شروع #/etc/init.d/ntp راه اندازی مجدد

متوقف کردن:

#/etc/init.d/ntp توقف کنید

#/bin/kill `cat /var/run/ntpd.pid`

دیمون دارای پارامترهای راه اندازی زیر است:

P - فایل PID،
-g - اجازه انتقال به پرش زمان بزرگ را می دهد
-c - فایل پیکربندی
-q - همگام سازی دستی را مجبور کنید

راه اندازی سرور ntpd

اول از همه، من به شما توصیه می کنم که پارامترهای راه اندازی دیمون را در فایل پیکربندی زیر تغییر دهید:

Ntp-server:~# cat /etc/default/ntp NTPD_OPTS="-g"

# cat /etc/sysconfig/ntpd # پارامترهای شبح NTP. # برای جزئیات بیشتر به ntpd (8) مراجعه کنید. .... # پارامترهای اضافی را برای ntpd مشخص می کند. NTPD_ARGS="-g"

این پارامتر به شما امکان می دهد ساعت را همگام کنید، حتی اگر اختلاف زمانی بسیار زیاد باشد.

بنابراین، همانطور که گفتم، اطلاعات پیکربندی دیمون ntpdدر فایل است /etc/ntp.conf.نحو فایل استاندارد است، مانند بسیاری از تنظیمات دیگر: خطوط خالی و خطوطی که با کاراکتر "#" شروع می شوند نادیده گرفته می شوند. در اینجا یک مثال ساده آورده شده است:

Ntp-server:~# cat /etc/ntp.conf سرور ntplocal.example.com سرور timeserver.example.org را ترجیح می دهد ntp2a.example.net driftfile /var/db/ntp.drift

پارامتر سرورمشخص می کند که کدام سرورها برای همگام سازی، یکی در هر خط، استفاده می شوند. اگر سرور با آرگومان داده شود ترجیح می دهند، چگونه ntplocal.example.com، سپس این سرور بر سایرین اولویت داده می شود. پاسخ سرور ترجیحی در صورتی که تفاوت قابل توجهی با پاسخ های سرورهای دیگر داشته باشد کنار گذاشته می شود، در غیر این صورت بدون توجه به پاسخ های دیگر استفاده می شود. بحث و جدل ترجیح می دهندمعمولاً برای سرورهای NTP که بسیار دقیق هستند، مانند سرورهایی که از تجهیزات اختصاصی زمان دقیق استفاده می کنند، استفاده می شود.

پارامتر دریفت فایلفایلی را مشخص می‌کند که برای ذخیره کردن افست ساعت سیستم استفاده می‌شود. تا آنجا که من متوجه شدم، این فایل مقداری را به طور دائم ذخیره می کند که بر اساس تجزیه و تحلیل تنظیمات زمان گذشته شکل می گیرد و اگر منابع زمانی خارجی در دسترس نباشد، تنظیم زمان مطابق با مقدار فایل انجام می شود. رانشنباید توسط هیچ فرآیند دیگری اصلاح شود. و قبل از تعیین این فایل در تنظیمات، فایل باید ایجاد شود.

به طور پیش فرض، سرور NTP برای همه میزبان ها در اینترنت قابل دسترسی خواهد بود. پارامتر محدود کردندر پرونده /etc/ntp.confبه شما امکان می دهد کنترل کنید که کدام ماشین ها می توانند به سرور شما دسترسی داشته باشند. اگر شما می خواهید از دسترسی همه ماشین ها به سرور NTP خود جلوگیری کنید، خط زیر را به فایل اضافه کنید /etc/ntp.conf:

نادیده گرفتن پیش فرض را محدود کنید

اگر شما می خواهید اجازهساعت خود را فقط با سرور خود همگام کنید ماشین های موجود در شبکه شما، ولی ممنوع کرده استآنها را سرور را پیکربندی کنیدیا در همگام سازی زمانی شرکت کننده مساوی باشید، سپس به جای موارد بالا، این خط را اضافه کنید:

محدودیت 192.168.1.0 mask 255.255.255.0 nomodify notrap

که در آن 192.168.1.0 آدرس IP شبکه شما و 255.255.255.0 ماسک شبکه آن است. /etc/ntp.confممکن است حاوی چندین دستورالعمل محدود کننده باشد.

برای عملکرد صحیح و دقیق تر دیمون، توصیه می شود سرورهای سطح را انتخاب کنید - از طبقه 2 (البته می توانید لایه 1 را انتخاب کنید، اما باید زمان را برای جستجوی چنین سروری تلف کنید) و از طبقه انتخاب شده 2 آنهایی که حداقل "فاصله" تا آنها وجود دارد. به طور معمول، چنین سرورهایی ممکن است توسط ISP شما ارائه شوند. تعداد سرورهای انتخابی مطلوب است - بیش از 2 تا 3، هر چه بیشتر بهتر، اما در محدوده معقول. اگر برای انتخاب بهترین سرورها تنبل هستید، می توانید لیست سرورهای باز سطح دوم را از اینجا بگیرید: http://support.ntp.org/bin/view/Servers/StratumTwoTimeServers.

انتخاب لیستی از سرورهای NTP مرجع

به آدرس مشخص شده (http://support.ntp.org/bin/view/Servers/StratumTwoTimeServers) می رویم و لیستی از سرورهای اولیه را انتخاب می کنیم. از این لیست، سرورهایی را انتخاب می کنیم که با تجزیه و تحلیل خروجی فرمان، نیازهای ما را برآورده می کنند ntpdate. هنگام اجرای دستور از سینتکس زیر استفاده می شود:

پارامترهای ntpdate servers_separated by_space

برای اطمینان از اینکه پرس و جو ما تغییراتی در سیستم ایجاد نمی کند، باید از پارامتر -q استفاده کنیم که استفاده از پرس و جو را بدون ایجاد تغییرات مشخص می کند. همچنین می توان از سوئیچ -d استفاده کرد که نشان می دهد دستور در حالت اشکال زدایی با خروجی اطلاعات اضافی بدون ایجاد تغییرات واقعی اجرا می شود (با این سوئیچ یک دسته زباله دیگر نمایش داده می شود :) که ما در حال حاضر نیازی نیست). پارامترهای دیگر را می توان در man 8 ntpdate یافت. از پیوند مشخص شده، تمام سرورهای دسترسی باز واقع در روسیه (RU) + سرور ارائه شده توسط ارائه دهنده را انتخاب کردم و دستور را اجرا کردم، چیزی شبیه به این شد:

Ntp-server:~# ntpdate -q ntp2.ntp-servers.net ntp1.vniiftri.ru ntp2.vniiftri.ru ntp4.vniiftri.ru ntp0.ntp-servers.net ntp1.ntp-servers.niiftri.net سرور ntp.corbina.net 88.147.255.85، لایه 1، آفست 0.006494، تاخیر 0.09918 سرور 62.117.76.142، لایه 1، آفست 0.002552، تاخیر 0.06911، 0.002552، سرور با تاخیر 0.0691 031 47، تاخیر 0.06918 سرور 62.117.76.140، لایه 1، افست 0.004823، تاخیر 0.07350 سرور 88.147.254.228، لایه 1، آفست -0.002355، تاخیر 0.12030 سرور 88.147.254.229، لایه 1.201.201، آفست 7.201 0.76.13 8، لایه 1، افست 0.005331، تاخیر 0.07401 سرور 195.14 .40.141، لایه 2، افست 0.002846، تاخیر 0.07188 13 ژانویه 19:14:09 ntpdate: تنظیم زمان سرور 62.117.76.141 آفست 0.003147 ثانیه

در مثال، سرورهای ما با موفقیت سطح stratum1 را صادر کردند که خبر خوبی است (به جز سرور ارائه دهنده)، افست اختلاف زمانی با این سرور در ثانیه است، تاخیر تاخیر همگام سازی در ثانیه است. معمولاً ب در بارهدقت بیشتر هنگام استفاده از سرورهایی که تأخیر کمی در انتقال بسته ها از طریق شبکه دارند به دست می آید. برای شناسایی این موضوع می توانید از . بر این اساس، ابتدا آنهایی را انتخاب کنید که زمان پاسخ کمتری دارند و از بین آنها، آنهایی را که پرش کمتری دارند انتخاب کنید. برای اینکه زمان را تلف نکنم از تمام سرورهای مشخص شده استفاده می کنم و آنها را در فایل پیکربندی وارد می کنم. در مجموع، با دانستن تمام موارد فوق، فایل حاصل را شرح خواهم داد /etc/ntp.conf:

Ntp-server:~# cat /etc/ntp.conf # سرورهای شبکه محلی (نظر داده شده، استفاده نشده است - یک سرور در شبکه وجود دارد) #سرور 192.168.0.2 #سرور 192.168.0.5 # سرور سرورهای اینترنتی ntp2.ntp- سرور servers.net ntp1.vniiftri.ru سرور ntp2.vniiftri.ru سرور ntp4.vniiftri.ru سرور ntp0.ntp-servers.net سرور ntp1.ntp-servers.net سرور ntp3.vniiftri.ru سرور ntp.corbina.net # فایل های سرور driftfile /var/lib/ntp/ntp.drift logfile /var/log/ntpstats # محدود کردن دسترسی به سرور: # به طور پیش‌فرض همه چیز را نادیده می‌گیریم محدودیت پیش‌فرض را نادیده می‌گیریم # localhost بدون پارامتر - یعنی همه چیز مجاز است. پارامترها فقط برای ممنوعیت ها اعمال می شود. محدود 127.0.0.1 # در زیر سرورهایی را که ما با آنها در شبکه محلی همگام سازی می کنیم توضیح می دهد. # ما همه چیز را به آنها اجازه می‌دهیم به جز تله‌ها و درخواست‌هایی که به ما می‌دهند محدودیت 192.168.0.2 noquery notrap محدود 192.168.0.5 noquery notrap # برای محلی ما همچنین همه چیز را به جز تله‌ها و اصلاحات محدود می‌کنیم 192.168.0.1 mask 255.255.255.0 nopeer اجازه نمی‌دهد زمان خارجی دسترسی: محدود کردن ntp2.ntp-servers.net محدود کردن ntp1.vniiftri.ru محدود کردن ntp2.vniiftri.ru محدود کردن ntp4.vniiftri.ru محدود کردن ntp0.ntp-servers.net محدود کردن ntp1.ntp-servers.net محدود کردن ntp3.vniiftri. محدود ntp.corbina.net # و این یک هک است که سطح اعتماد سرور (لایه) را به طور خلاصه برابر با 3 # قرار می دهد، هر چه سطح بالاتر باشد، تعداد آن کمتر می شود. 0 ساعت اتمی است، شماره 1 با آن هماهنگ است، 2 با ساعت اول و غیره است. سرور 127.127.1.1 فاج 127.127.1.1 لایه 3

برای درک عمیق تر و پیکربندی سرور، برخی از پارامترهای پیکربندی ntpd را توضیح خواهم داد که به آنها اشاره نکردم::

  • فعال غیرفعال auth/monitor/pll/pps/stats - روشن خاموش حالت عملیاتی:
    • اعتبار- فقط در حالت احراز هویت با همسایگان نامبرده ارتباط برقرار کنید.
    • نظارت کنید- امکان نظارت بر درخواست ها
    • pll- امکان تنظیم فرکانس ساعت محلی از طریق NTP.
    • آمار- اجازه جمع آوری آمار.
  • آمارloopstats- با هر تغییر ساعت محلی، یک خط در یک فایل می نویسد loopstats;
  • آمارهمتایان- هر ارتباط با همسایه در یک گزارش ذخیره شده در یک فایل ثبت می شود همتایان;
  • آمارآمار ساعت- هر پیام از درایور ساعت محلی در یک گزارش ذخیره شده در یک فایل نوشته می شود آمار ساعت;
  • statsdir(کاتالوگ_نام_با_آمار)- نام دایرکتوری را مشخص می کند که فایل های دارای آمار سرور در آن قرار می گیرند.
  • filegen - یک الگوریتم برای تولید نام فایل ها تعریف می کند که شامل موارد زیر است:
    • پیشوند- بخش ثابتی از نام فایل که در حین کامپایل یا با دستورات پیکربندی خاص تنظیم می شود.
    • نام فایل- بدون اسلش به پیشوند اضافه شد، دو نقطه ممنوع است، با کلید فایل قابل تغییر است.
    • پسوند- بسته به نوع نام تولید می شود.
  • محدود کردنآدرس عددی- محدودیت های دسترسی را تنظیم می کند: بسته ها مرتب شده و پوشانده می شوند، آدرس منبع گرفته می شود و به ترتیب با هم مقایسه می شود، یک پرچم از آخرین مقایسه موفق گرفته می شود. دسترسی:
    • بدون پرچم- دادن دسترسی؛
    • چشم پوشی- نادیده گرفتن همه بسته ها؛
    • نامعلوم- بسته های NTP 6 و 7 را نادیده بگیرید (تغییر درخواست و وضعیت).
    • نومودی کردن- بسته های NTP 6 و 7 را نادیده بگیرید (اصلاح وضعیت).
    • محدود- فقط به تعداد محدودی از مشتریان از یک شبکه معین خدمات ارائه می دهد.
    • نه- به میزبان خدمت کنید، اما با آن همگام سازی نکنید.
  • محدودیت مشتریحد- برای پرچم محدودحداکثر تعداد سرویس گیرندگان را تعیین می کند (به طور پیش فرض 3)؛

بنابراین، ما ntpd-server را دریافت کردیم، که با دنیای خارج همگام می شود، به شما امکان می دهد برای مشتریان از شبکه محلی 192.168.0.1 با ماسک 255.255.255.0 زمان دریافت کنید و همچنین می توانید با سرور محلی همگام شوید (اگر چند خط را حذف کنید). تنها کاری که باید انجام دهیم این است که کلاینت ها را راه اندازی کنیم و یاد بگیریم که چگونه سرور خود را نظارت کنیم.

نظارت بر سرور ntpd و همگام سازی

وقتی همه چیز را تنظیم کردید. NTP زمان را همگام نگه می دارد. این فرآیند را می توان با استفاده از دستور NTP Query (ntpq) مشاهده کرد:

Ntp-server:~# ntpq -p remote refid st t when poll delay delay offset jitter ============================== ================================================== =========== -n3.d6.hsd.PPS. 1 u 34 64 177 70.162 2.375 8.618 +ntp1.vniiftri.r .PPS. 1 u 33 64 177 43.479 -0.020 10.198 *ntp2.vniiftri.r .PPS. 1 u 6 64 177 43.616 -0.192 0.688 +ntp4.vniiftri.r .PPS. 1 u 4 64 177 43.623 0.440 0.546 -n1.time1.d6.hsd .PPS. 1 u 53 64 77 92.865 -11.358 38.346 -ns1.hsdn.org .GPS. 1 u 40 64 177 78.057 -3.292 35.083 -ntp3.vniiftri.r .PPS. 1 u 44 64 77 47.667 2.292 2.611 -scylla-l0.msk.c 192.43.244.18 2 u 62 64 77 41.565 -1.564 28.914

این دستور با سوئیچ -p فهرستی از منابع زمانی را با ویژگی های آنها در خروجی استاندارد چاپ می کند (پارامترهای فرمان باقی مانده در man ntpq هستند). معنی هر ستون به شرح زیر است:

نام سرور NTP راه دور. اگر سوئیچ -n را مشخص کنید، به جای نام، آدرس IP سرور را دریافت خواهید کرد.

نشان می دهد که هر سرور در حال حاضر زمان خود را از کجا می گیرد. این می تواند یک نام میزبان یا چیزی شبیه .GPS باشد که منبع سیستم موقعیت یابی جهانی را نشان می دهد.

Stratum (سطح) عددی از 1 تا 16 است که نشان دهنده دقت سرور است. یک به معنای حداکثر دقت، 16 به معنی عدم دسترسی به سرور است. سطح شما برابر با سطح کم دقت ترین سرور راه دور به اضافه 1 خواهد بود.

فاصله بین نظرسنجی ها (بر حسب ثانیه). مقدار بین حداقل و حداکثر نرخ نظرسنجی تغییر خواهد کرد. در ابتدا، فاصله زمانی کوچک خواهد بود به طوری که همگام سازی به سرعت اتفاق می افتد. زمانی که ساعت‌ها همگام‌سازی می‌شوند، بازه زمانی شروع به افزایش می‌کند تا ترافیک و بارگذاری روی سرورهای محبوب زمان کاهش یابد.

نمایش هشت بیتی یک آرایه 8 بیتی که نتایج هشت تلاش آخر برای اتصال به سرور را منعکس می کند. اگر سرور راه دور پاسخ دهد، بیت تنظیم می شود.

مقدار زمان (بر حسب ثانیه) مورد نیاز برای دریافت پاسخ به سؤال "ساعت چند است؟"

مهمترین رشته. تفاوت بین زمان سرور محلی و راه دور با پیشرفت همگام‌سازی، این مقدار باید کاهش یابد (نزدیک به صفر)، که نشان‌دهنده دقیق‌تر شدن ساعت ماشین محلی است.

پراکندگی (Jitter) اندازه گیری انحرافات آماری از مقدار افست (فیلد افست) در چندین جفت درخواست-پاسخ موفق است. یک مقدار پراکندگی کوچکتر ترجیح داده می شود زیرا امکان همگام سازی زمان دقیق تری را فراهم می کند.

معنی کاراکترها قبل از نام سرور

x - منبع جعلی با توجه به الگوریتم تقاطع.
. - به دلیل مسافت طولانی از لیست نامزدها حذف شدند.
- - حذف از لیست نامزدها توسط الگوریتم خوشه بندی؛
+ - در لیست نهایی نامزدها قرار گرفته است.
# - برای همگام سازی انتخاب شده است، اما 6 نامزد برتر وجود دارد.
* - برای همگام سازی انتخاب شده است.
o - برای همگام سازی انتخاب شده است، اما از PPS استفاده می شود.
فضا - یک سطح بسیار بزرگ، یک حلقه یا یک خطای آشکار؛

سرویس ntpd"هوشمند" و خود منابع زمانی را که بیش از حد خارج از محدوده عقل هستند از بین می برد. مدتی پس از شروع، ntpd معتبرترین منابع داده را انتخاب می کند و با آنها همگام می شود. لیست سرورهای NTP مرجعی که ارائه می کنیم مرتباً توسط این سرویس بررسی می شود.

می توانید با دستور زیر امکان همگام سازی محلی را در سرور بررسی کنید:

سرور Ntp:~# ntpdate -q سرور محلی میزبان 127.0.0.1، لایه 2، افست -0.000053، تأخیر 0.02573 سرور::1، لایه 2، آفست -0.000048، تأخیر 0.02571 0.02571 4: nt تنظیم زمان سرور 14: nt 14 ژانویه 14:nt: ::1 افست -0.000048 ثانیه

از خروجی فرمان مشخص است که سرور ما قبلاً به سطح 2 رسیده است. شاید در 10-15 دقیقه اول سطح سرور بالاتر باشد.

عملکرد صحیح سرور ntp را می توان از روی گزارش های شبح ntpd نیز قضاوت کرد:

Ntp-server:~# cat /var/log/ntpstats/ntp 13 ژانویه 20:13:16 ntpd: گوش دادن به رابط شماره 5 eth0، fe80::a00:27ff:fec1:8059#123 فعال شده 13 ژانویه 20:13: 16 NTPD: گوش دادن به رابط #6 ETH0 ، 192.168.0.8 #123 فعال شده 14 ژانویه 14:31:00 NTPD: هماهنگ شده به 62.117.76.142 ، قشر 1 14 ژانویه 14:31:10 NTPD: تنظیم مجدد زمان +10.291312 s 14 ژانویه 14 :31:10 ntpd: تغییر وضعیت همگام‌سازی زمان هسته 0001 14 ژانویه 14:34:31 ntpd: همگام‌سازی شده با 88.147.255.85، لایه 1 14 ژانویه 14:36:04 ntpd: ntpd: 14:34:31 همگام‌سازی شده با 88.147.255.85. 04:36 ntpd: همگام شده با 62.117.76.142، لایه 1 14 ژانویه 15:10:58 ntpd: همگام شده با 62.117.76.140، لایه 1 14 ژانویه 15:17:51 ntp4 ntp: بدون سرور 15:17:54 : همزمان با 62.117.76.140، لایه 1 14 ژانویه 15:32:14 ntpd: تنظیم مجدد زمان +13.139105 ثانیه

راه اندازی netfilter (iptables) برای سرور NTP

پس از پیکربندی سرور، محافظت از آن ایده خوبی خواهد بود. می دانیم که سرور روی پورت 123/udp اجرا می شود و درخواست ها نیز از پورت 123/udp ارسال می شوند. پس از خواندن مقاله و آشنایی با موارد کاربردی، می توانید قوانینی برای فیلتر کردن ترافیک شبکه ایجاد کنید:

Ntp ~ # iptables-save # قوانین iptables معمولی برای DNS *filter:INPUT DROP :FORWARD DROP:OUTPUT DROP -A INPUT -i lo -j ACCEPT -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPTA -j -m conntrack --ctstate INVALID -j DROP # اجازه دسترسی به شبکه محلی به سرور NTP: -A INPUT -s 192.168.1.1/24 -d 192.168.1.1/32 -p udp -m udp --dport 123 -m conntrack - -ctstate NEW -j ACCEPT -A OUTPUT -o lo -j ACCEPT -A OUTPUT -p icmp -j ACCEPT -A OUTPUT -p udp -m udp --sport 32768:61000 -j ACCEPT -A OUTPUT -p tcp - m tcp --sport 32768:61000 -j ACCEPT -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT # اجازه دسترسی به سرور NTP برای درخواست های خروجی -A OUTPUT -p udp -m udp --sport 123 -- dport 123 -m conntrack --ctstate NEW -j ACCEPT COMMIT

این یک نمونه معمولی است! برای تنظیم قوانین iptables متناسب با وظایف و پیکربندی شبکه خود، باید با مطالعه مقالات بالا نحوه عملکرد netfilter در لینوکس را درک کنید.

راه اندازی ماشین های مشتری

برای همگام سازی زمان در ماشین های یونیکسشبکه محلی، توصیه می شود از ابزار ntpdate استفاده کنید، آن را چندین بار در روز اجرا کنید، به عنوان مثال، هر ساعت. برای این کار باید خط زیر را اضافه کنید:

0 * * * * /usr/sbin/ntpdate -s

سوئیچ -s خروجی فرمان را هدایت می کند. اگر ماشین‌های کلاینت چند مگابایت رم اضافی دارند، می‌توانید شبح ntpd را درست مانند سرور با پیکربندی زیر اجرا کنید:

سرور محدود کردن پیش فرض نادیده گرفتن محدودیت noquery notrap محدود 127.0.0.1 nomodify notrap

من فکر می کنم همه چیز در این پیکربندی واضح است: منبع زمان (سرور) یک سرور ntpd محلی است، دسترسی به همه را ممنوع کنید، فقط به سرور ntpd محلی اجازه دهید.

همچنین در کلاینت ها باید به درستی مشخص شود که در چه قالبی زمان ذخیره شود و منطقه زمانی صحیح انتخاب شود.

برای پیکربندی کلاینت NTP ویندوز، باید دستورات زیر را در کنسول اجرا کنید:

C:\>زمان خالص /setsntp: دستور با موفقیت انجام شد. C:\>net stop w32time سرویس Windows Time در حال توقف است. سرویس Windows Time با موفقیت متوقف شد. C:\>net start w32time سرویس Windows Time در حال شروع است. سرویس Windows Time با موفقیت راه اندازی شد. C:\>net time /querysntp مقدار فعلی SNTP عبارت است از: دستور با موفقیت انجام شد.

نتیجه

خب همین! حجم مقاله بسیار زیاد بود... من حتی انتظارش را هم نداشتم. بگذارید موارد فوق را خلاصه کنم. در این مقاله امیدوارم برای ما روشن شده باشد که سرور NTP چیست و چگونه کار می کند. ما یاد گرفتیم که چگونه سرور و کلاینت ها را روی ماشین های یونیکس و ویندوز پیکربندی کنیم. در چند کلمه، ساختار همگام سازی زمان در یک شبکه محلی به این صورت است: 1،2 یا بیشتر سرور زمان در شبکه محلی وجود دارد، آنها زمان خود را با منابع خارجی در شبکه جهانی همگام می کنند. تنظیمات سرور و کلاینت بر اساس فایل‌های /etc/ntp.conf (فایل پیکربندی اصلی شبح ntpd)، /etc/localtime (فایل منطقه زمانی فعلی)، و همچنین /etc/sysconfig/ntp (برای RH) است. ) و /etc/default /ntp (برای Deb) - فایل های پارامتر راه اندازی دیمون. برای یک سرور ntp محلی، فایل پیکربندی سرورهای خارجی را برای به دست آوردن زمان مشخص می کند و اجازه دسترسی به این سرورها را با استفاده از پارامتر محدود می کند، همچنین برای رایانه های شبکه محلی، برای کلاینت ها منبع زمان مشخص شده است - سرورهای محلی در شبکه محلی، و دسترسی نیز برای همه ممنوع است، به جز منبع زمانی در شبکه محلی. همه. از توجه همه شما متشکرم! من خوشحال خواهم شد برای نظرات!

  • (بایگانی مقاله) نحوه اتصال GPS به سرور برای سازماندهی سرور زمان دقیق سطح Stratum1 خود را شرح می دهد.
  • نحوه پیکربندی مجوز در سرور ntp را شرح می دهد.

بهترین مقالات در این زمینه