Bevezetés
Előfeltételek
1. lépés: Állítsa be az időzónát
2. lépés: Frissítse az NTP-t
3. lépés: Az ntp konfigurálása
4. lépés: Konfigurálja a tűzfalat
Bevezetés
A szerveradminisztrátorok számára fontos a kiszolgálókon töltött idő helyes beállítása és karbantartása. A rosszul beállított idő káoszt okoz a szerverkörnyezetben, például adatkonzisztenciát, adatszinkronizálási hibákat és feladatütemezési problémákat.
E nemkívánatos problémák elkerülése érdekében először is be kell állítani egy ésszerű időzónát a szerveren, így a szervernek viszonylag pontos helyi időt kell megadnia. Másodszor, kommunikációs célokra az NTP-t (Network Time Protocol) is használhatja a szerverek és a távoli NTP-szerverek idejének szinkronizálására, így tökéletes rendben tartva az időt a gépeken.
Ebben a cikkben megmutatom, hogyan állíthatja be az időzónát, és hogyan szinkronizálhatja az időt NTP használatával egy CentOS 6 x64 szerveren.
Előfeltételek
Feltételezem, hogy a semmiből telepített egy CentOS 6 x64 Vultr szerverpéldányt, és rootként jelentkezett be.
1. lépés: Állítsa be az időzónát
Írja be a következő parancsot a termináljába:
date
Amint látja, a Vultr CentOS 6 x64 operációs rendszer alapértelmezés szerint az UTC-időt használja. Bármilyen időzónára módosíthatja tetszés szerint, de a legjobb gyakorlat a szerver fizikai helyének helyi időzónájának használata.
Ha a szerverünk Kínában futna, akkor az "Ázsia/Sanghaj" időzónát használnánk:
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
A /usr/share/zoneinfomegfelelő időzóna megtalálásához navigálhat a könyvtárba . Van egy kiváló forrás a Wikipédián az időzóna listákhoz .
Írja be dateújra, és azt fogja tapasztalni, hogy a helyi rendszeridő CST (Kínai szabványidő) GMT+0800-ra módosult.
Ezután a hardver órájába írjuk a rendszeridő-információkat.
vi /etc/sysconfig/clock
Módosítsa a fájl tartalmát az alábbiak szerint.
ZONE="Asia/Shanghai"
UTC=false
ARC=false
Mentés és kilépés.
:wq
Írja be a rendszeridőt a hardver órájába.
hwclock --systohc --localtime
Írja hwclockbe az eredmény megtekintéséhez.
2. lépés: Frissítse az NTP-t
Alapértelmezés szerint az ntp démon program telepítve van és be van állítva a Vultr CentOS 6 x64 kiszolgálópéldányon való futtatásra. Biztonsági okokból az első dolog, amit meg kell tennünk, hogy frissítsük a legújabb verzióra.
Az ntpd verzió megtekintéséhez:
ntpd --version
A cikk írásakor az alapértelmezett telepített verzió a "4.2.6p5".
Az ntpd szolgáltatás leállítása:
service ntpd stop
Töltse le az ntp program legújabb verzióját a hivatalos webhelyéről:
wget http://archive.ntp.org/ntp4/ntp-4.2/ntp-4.2.8p2.tar.gz
Csomagolja ki, és lépjen be az újonnan létrehozott könyvtárba:
tar -zxvf ntp-4.2.8p2.tar.gz
cd ntp-4.2.8p2
Szereljük be a telepítéshez szükséges alkatrészeket:
yum -y install gcc libcap-devel
Mivel frissíteni fogjuk a meglévő ntpd programot, meg kell határoznunk a tulajdonos és a csoport adatait:
cat /etc/group
cat /etc/passwd
Amint látja, az ntp program az ntp tulajdonoshoz (uid=38) és az ntp csoporthoz (gid=38) tartozik.
Biztonsági okokból frissítse az ntp felhasználói fiók konfigurációját:
usermod -c "Network Time Protocol" -d /var/lib/ntp -u 38 -g ntp -s /bin/false ntp
Fordítsa le és telepítse az ntp programot:
./configure --prefix=/usr --bindir=/usr/sbin --sysconfdir=/etc --enable-linuxcaps --with-lineeditlibs=readline --docdir=/usr/share/doc/ntp-4.2.8p2 && make
make install && install -v -o ntp -g ntp -d /var/lib/ntp
A telepítés befejezése után újra ellenőrizheti az ntpd verziót:
ntpd --version
Amint látja, az ntp program a legújabb, „4.2.8p2” verzióra frissítve.
A jobb teljesítmény és biztonság érdekében módosítanunk kell az alapértelmezett konfigurációt:
vi /etc/ntp.conf
A ntp.confkonfigurációs fájlban megtalálhatja az ntp szervereket, például:
server 1.time.constant.com
server 2.time.constant.com
server 3.time.constant.com
A gyorsabb szinkronizálás érdekében ezeket a kiszolgálókat lecserélheti az adatközpont régiójában vagy akár országában található szerverekre. Például az Egyesült Államokban a következőket használhatja:
server 0.us.pool.ntp.org
server 1.us.pool.ntp.org
server 2.us.pool.ntp.org
server 3.us.pool.ntp.org
További NTP pool time szerverek találhatók az NTP támogatási webhelyén .
Biztonsági okokból korlátoznunk kell az engedélyeket. Még mindig a ntp.confkonfigurációs fájlban keresse meg a következő két sort:
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
Módosítsa őket az alábbiak szerint:
restrict default limited kod nomodify notrap nopeer noquery
restrict -6 default limited kod nomodify notrap nopeer noquery
Ezenkívül hozzá kell adnunk a következő két sort:
pidfile /var/run/ntpd.pid
leapfile /etc/ntp.leapseconds
Mentés és kilépés:
:wq
Indítsa újra a rendszert:
reboot
Adja hozzá a következő mondatot az iptable konfigurációs fájljához /etc/sysconfig/iptables:
-A INPUT -m state --state NEW -m udp -p udp --dport 123 -j ACCEPT
Indítsa újra a tűzfalat.
service iptables restart
Ezen a ponton az NTP teljesen be van állítva. Az ntpd program folyamatosan módosítja a szerver idejét.
Ha szükséges, a következő paranccsal ellenőrizheti az időszinkronizálás állapotát:
ntpstat