نحوه نصب سرور NTP بر روی AlmaLinux
پروتکل زمان شبکه (NTP) یک سرویس حیاتی است که ساعت سیستم را با سرورهای زمان مبتنی بر اینترنت یا منابع شبکه داخلی همگامسازی میکند.
مطالب روز : اخبار روز لینوکس
در AlmaLinux، که یک توزیع پایدار و متنباز سازمانی لینوکس است، بسته سنتی ntp با chrony جایگزین شده است. این بسته، همگامسازی زمان سریعتر و قابلاعتمادتری را ارائه میدهد و به عنوان یک کلاینت و سرور NTP عمل میکند.
این راهنما توضیح خواهد داد که چگونه یک سرور NTP را در AlmaLinux با استفاده از chrony نصب، پیکربندی و مدیریت کنید
🛠️ پیشنیازها
- سیستم AlmaLinux.
- دسترسی به ترمینال.
- امتیازات Sudo یا root.
⚙️ پیکربندی سرور NTP در AlmaLinux
برای راهاندازی یک سرور NTP (پروتکل زمان شبکه) در AlmaLinux، باید بسته chrony را نصب و پیکربندی کنید، سرویس آن را فعال کرده و همگامسازی را تأیید نمایید.
مراحل زیر نشان میدهند که چگونه سرور NTP را در AlmaLinux نصب و پیکربندی کنید.
نصب بسته NTP
AlmaLinux برای عملکرد NTP از chrony به جای بسته قدیمی ntp استفاده میکند. برای نصب chrony، مراحل زیر را دنبال کنید:
- بستههای سیستمی و فراداده مخزن (repository metadata) را با
dnfبهروزرسانی کنید:
sudo dnf update -y

2.نصب بسته
sudo dnf install chrony -y

این تضمین میکند که سیستم بهروز است و chrony را با تمام وابستگیهای مورد نیاز دانلود میکند.
توجه: در AlmaLinux 10، ممکن است chrony بهطور پیشفرض نصب شده باشد. اگر سیستم گزارش دهد که بسته از قبل موجود است، به سراغ فعالسازی و پیکربندی سرویس بروید.
فعالسازی و راهاندازی سرویس NTP
سرویس را طوری فعال کنید که بهطور خودکار هنگام بوت شدن (راهاندازی سیستم) شروع به کار کند، و بلافاصله آن را با دستور systemctl راهاندازی کنید:
sudo systemctl enable --now chronyd
ن دستور خروجی ندارد، اما تضمین میکند که سرویس chrony به طور مداوم اجرا شود و ساعت سیستم را همگام نگه دارد.
وضعیت سرویس را با استفاده از دستور زیر بررسی کنید:
sudo systemctl status chronyd

پیکربندی سرورهای NTP
فایل پیکربندی chrony در مسیر /etc/chrony.conf قرار دارد. به صورت پیشفرض، این فایل شامل مجموعهای از سرورهای عمومی NTP است. این فایل را برای استفاده از سرورهای بالادستی (upstream) سفارشی یا منابع داخلی شبکه تغییر دهید:
- فایل پیکربندی را با یک ویرایشگر متن باز کنید. به عنوان مثال، برای انجام این کار در Nano، دستور زیر را اجرا کنید:
sudo nano /etc/chrony.conf
۲. خطوطی را که با عبارت Use public servers… شروع میشوند، پیدا کنید و سرویسدهندههای (سرورهای) NTP ترجیحی خود را بهروزرسانی یا اضافه نمایید.
به عنوان مثال:
server 0.pool.ntp.org iburst
server 1.pool.ntp.org iburst
server 2.pool.ntp.org iburst

توجه: برای امنیت بیشتر، عبارت
allow 192.168.1.0/24را به فایل اضافه کنید تا محدود شود که چه کلاینتهایی میتوانند سرور شما را کوئری کنند (درخواست زمان ارسال کنند).
۳. تغییرات را ذخیره کنید و از ویرایشگر خارج شوید.
۴. سرویس chrony را ریاستارت کنید تا پیکربندی جدید اعمال شود:
sudo systemctl restart chronyd
دستور خروجی ندارد.
این فرآیند، سیستم شما را برای همگامسازی با سرورهای مشخصشده NTP پیکربندی میکند و حفظ زمان دقیق را تضمین میکند.
⏲️ اجازه دادن به NTP از طریق فایروال
برای اینکه سیستمهای دیگر در شبکه شما بتوانند ساعت خود را با این سرور همگامسازی کنند، باید پورت UDP 123 را در فایروال باز کنید.
AlmaLinux 10 به طور پیشفرض از firewalld استفاده میکند. برای اجازه دادن به ترافیک، مراحل زیر را دنبال کنید:
- دستور زیر را اجرا کنید:
sudo firewall-cmd --permanent --add-service=ntp

۲. دیوار آتش (فایروال) را دوباره بارگذاری کنید:
sudo firewall-cmd --reload

این تضمین میکند که سرور قادر به پاسخگویی به درخواستهای NTP ورودی است. سیستمهایی که فقط ساعت خود را همگامسازی میکنند نیازی به این مرحله ندارند.
تأیید همگامسازی NTP
پس از پیکربندی chrony، تأیید کنید که ساعت سیستم همگامسازی شده است و سرویس با منابع NTP پیکربندی شده در حال برقراری ارتباط است.
- وضعیت سرویس chrony را بررسی کنید تا تأیید شود که در حال اجرا است و برای اجرا هنگام بوت (راهاندازی سیستم) فعال شده است:
sudo systemctl status chronyd

اگر همگامسازی (synchronization) به درستی کار کند، خروجی نشان میدهد که سرویس فعال (active) است (در حال اجرا – running) و فعالشده (enabled) است. این بدان معنی است که chrony در حال مدیریت ساعت سیستم و حفظ همگامسازی است.
اما، اگر سرویس به صورت غیرفعال (inactive)، ناموفق (failed) یا غیرفعالشده (disabled) نمایش داده شود، آن را به صورت دستی با دستورات زیر شروع (start) و فعال (enable) کنید:
sudo systemctl start chronyd
sudo systemctl enable chronyd
۲. ارتباط با منابع زمان پیکربندی شده را تأیید کنید:
chronyc sources -v

اگر سرور همگامسازی شده باشد، یکی از منابع فهرست شده شامل نماد * در ستون اول است که منبع مرجع انتخاب شده فعلی را نشان میدهد. مقدار Reach (به عنوان مثال، 177) غیرصفر است، که پایداری اتصال به سرور NTP را تأیید میکند.
اگر هیچ منبعی با * علامتگذاری نشده باشد یا همه منابع ? را نشان دهند، سیستم با هیچ سرور NTP ارتباط برقرار نمیکند. این مشکل معمولاً به اتصال شبکه یا محدودیتهای فایروال اشاره دارد.
برای حل این مشکل، اطمینان حاصل کنید که پورت خروجی UDP 123 باز است و سیستم دسترسی به اینترنت دارد. سپس سرویس chrony را راهاندازی مجدد کنید.
sudo systemctl restart chronyd
3.تأیید همگامسازی کلی زمان و وضعیت سرویس:
timedatectl status

زمانی که ساعت سیستم همگامسازی شود، خروجی شامل:
- System clock synchronized: yes (ساعت سیستم همگامسازی شده: بله)
- NTP service: active (سرویس NTP: فعال)
sudo chronyc makestep

خروجی تأیید میکند که chrony با موفقیت ساعت سیستم را برای مطابقت با منبع NTP تنظیم کرده است.
حذف یا پاک کردن سرور NTP از AlmaLinux
اگر دیگر به سرور NTP نیاز ندارید، chrony را از سیستم خود حذف کنید. برای انجام این کار، مراحل زیر را دنبال کنید:
- سرویس chrony را متوقف کنید:
sudo systemctl stop chronyd
دستور هیچ خروجی ندارد.
۲. سرویس را غیرفعال کنید تا هنگام بوت شدن (راهاندازی سیستم) شروع به کار نکند:
sudo systemctl disable chronyd

3. حذف بسته chrony با استفاده از dnf:
sudo dnf remove chrony -y

این فرمان، chrony و وابستگیهای آن را حذف میکند. اگر قبلاً فایروال را برای NTP پیکربندی کردهاید، قانون NTP را حذف کنید:
sudo firewall-cmd --permanent --remove-service=ntp

بارگذاری مجدد فایروال:
sudo firewall-cmd --reload

پس از انجام این مراحل، سیستم دیگر به عنوان یک سرور NTP عمل نمیکند.
نتیجهگیری
این آموزش نحوه نصب و پیکربندی بسته chrony را در AlmaLinux توضیح داد. این بسته به عنوان جایگزینی برای بسته قدیمی ntp عمل میکند و عملکردهای همگامسازی زمان را فراهم میسازد. متن همچنین نشان میدهد که چگونه chrony را از سیستم خود حذف کنید.
در ادامه، نحوه نمایش و تنظیم تاریخ و زمان سیستم در لینوکس را با استفاده از فرمان time بیاموزید.






