Rhel7: how to set up the ntp service

В данной статье я расскажу, как настроить время, дату и изменить часовой пояс(timezone) в Linux CentOS, как выполнять синхронизацию времени с NTP сервером и исправить типичные ошибки.

Установка ntp на CentOS/RHEL/Fedora

Network Time Protocol – NTP- является протоколом, который работает через порт UDP 123 на транспортном уровне и позволяет компьютерам синхронизировать время.

В этой статье «Установка ntp на CentOS/RHEL/Fedora» я расскажу как можно установить и настроить NTP сервер на CentOS/RHEL/Fedora на примере CentOS 7 и использую NTP Public Pool Time Servers лист.

Установка и настройка NTP демона.
1. Покет с NTP сервером предоставляется по умолчанию из официальных CentOS / RHEL 7 репозиториев и может быть установлен:

# yum install ntp

2. После установки сервера, первое что необходимо сделать, так это перейти на сайт с  официальными NTP серверами и выбрать нужный пул для вашего местоположения.

3. Затем откройте основной конфигурационный файл для редактирования списка серверов с pool.ntp.org проекта и нужно заменить его на Ваши пулы ( те которые вы выбрали на сайте).

# vim /etc/ntp.conf

Для примера, я буду использовать следующие пулы:

server 0.uk.pool.ntp.org
server 1.uk.pool.ntp.org
server 2.uk.pool.ntp.org
server 3.uk.pool.ntp.org

4. Кроме того, необходимо позволить клиентам из вашей сети синхронизировать время с сервером. Для этого добавьте следующую строку в файл конфигурации NTP, где  есть ограничения управления. Замените данный ИП и маску на Вашу, соответственно:

restrict 192.168.1.0 netmask 255.255.255.0 nomodify notrap

5. Если вам нужна дополнительная информация для устранения неполадок (в случае если у вас возникли какие-либо проблемы с вашим NTP демоном), то стоит добавить файл журнала (лог файл), в котором будет записывать все проблемы с сервером NTP, а для этого, открываем:

# vim /etc/ntp.conf

и добавляем строчку:

logfile /var/log/ntp.log

6. После того как вы отредактировали файл конфигурации со всеми настройками что выше, сохраните и закройте файл ntp.conf.

Добавление правил в Firewall и запуск NTP демона.
7. Услуги NTP используют UDP-порт 123 на транспортном уровне OSI (уровень 4).  И для корректной работы ntp сервера, нужно  открыть этот порт на RHEL / CentOS 7, а можно это сделать:

# firewall-cmd --add-service=ntp --permanent
# firewall-cmd --reload

8. После того как вы открыли в брандмауэре порт 123, то следующим шагом будет запуск сервера NTP:

# systemctl start ntpd

И добавлю его в автозагрузку ОС:

# systemctl enable ntpd

Проверяем статус:

# systemctl status ntpd

Проверка синхронизации времени.
9. После того как демон NTP был запущен, подождите несколько минут для синхронизации времени с его списком серверов, выполните следующие команды чтобы проверить статус NTP синхронизации и системного времени:

# ntpq -p
# date -R

10. Если вы хотите запросить и синхронизироваться NTP с pool, то используейте команду Ntpdate и затем адрес сервера (или серверов):

# ntpdate -q 0.uk.pool.ntp.org 1.uk.pool.ntp.org

Статья «Установка ntp на CentOS/RHEL/Fedora» завершена.

Настройка сервера времени ntp

Со временем часы могут убегать или отставать, поэтому время от времени их нужно синхронизировать с эталонными. Для этого в CentOS используется демон ntpd.
Установим демон ntpd если его нет в системе:

# yum install ntp

Однократно синхронизируем время:

# ntpdate pool.ntp.org

Если получили что-то вроде the NTP socket is in use, exiting — значит ntpd демон уже запущен. В этом случае остановим его:

# service stop ntpd

Настраиваем работу ЧРВ в BIOS на время по UTC:

# hwclock --systohc --utc

Этой командой мы присвоили значение времени аппаратных часов равным системному времени. Как вы помните, системные часы мы синхронизировали командами выше.
Проверим содержимое файла /etc/sysconfig/clock чтобы система после загрузки правильно выставляла местное время. Для Москвы он должен содержать следующее:

ZONE="Europe/Moscow"
UTC=true
ARC=false
# chkconfig ntpd on

Запускаем демон синхронизации времени:

# service ntpd start

Проверяем системное время командой:

# date

Оно должно совпадать с реальным.
Проверим, синхронизируется ли системное время с серверами эталонного времени (ntp server) и все ли там в порядке командой ntpq -p:

# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 test.danzuck.ch 162.23.41.56     2 u    1   64    1   12.280  -23.298   0.031
 fw.ams.nl.alexs 82.197.221.30    4 u    2   64    1    2.086  -19.002   0.000
 ntp0.mediamatic 193.0.0.229      2 u    1   64    1    0.998  -19.938   0.000
 elara.mysnip.de .INIT.          16 u    -   64    0    0.000    0.000   0.000

Демон ntpd включает в ядре Linux режим «11 minute mode». В этом режиме каждые 11 минут синхронизируются системные и аппаратные часы. По-умолчанию он (режим «11 minute mode») выключен и включается только когда какой-то сервис попросит включить этот режим. Демон ntpd как раз его и (режим «11 minute mode») включает. Так что дополнительно синхронизировать аппаратные часы по значению системных нет необходимости.
P.S. Теперь системные и аппаратные часы вашего сервера будут автоматически синхронизироваться с эталонными серверами и всегда показывать точное время.

При написании статьи были использованы следующие источники и литература

  1. Change Timezone in CentOS
  2. Автозапуск сервисов в CentOS/RHEL
  3. Время в linux. UTC или localtime?
  4. Настройка времени в Bitrix VM (CentOS)

Ручная настройка конфигурационного файла сетевого интерфейса в CentOS

Выведем список доступных сетевых интерфейсов в системе:

Файлы конфигурации сети вашего сервера хранятся в каталоге /etc/sysconfig/network-scripts. Эти файлы создает демон NetworkManager для каждого сетевого интерфейса. В нашем случае файл конфигурации называется ifcfg-eth0 (у вас может отличаться в зависимости от схемы именования сетевого интерфейса).

Рассмотрим основные параметры:

  • DEVICE – имя сетевого адаптера, совпадает с именем в системе, у нас это eht0
  • BOOTPROTO – способ назначения IP-адреса (static — статическое значение, указываем в ручную. dhcp — получить адрес автоматически)
  • IPADDR – IP-адрес
  • NETMASK – маска подсети
  • GATEWAY – шлюз по умолчанию
  • DNS1 – Основной DNS-сервер
  • DNS2 — альтернативный DNS-сервер
  • ONBOOT — способ запуска сетевого интерфейса (yes – автоматически, no – вручную)
  • UUID – уникальный идентификатор сетевого интерфейса. Можно сгенерировать самостоятельно командой uuidgen.
  • IPV4_FAILURE_FATAL – отключение сетевого интерфейса с IP-адресом v4, если он имеет неверную конфигурацию (yes – отключить, no – не отключать)
  • IPV6_FAILURE_FATAL – отключение сетевого интерфейса с IP-адресом v6, если он имеет неверную конфигурацию (yes – отключить, no – не отключать)
  • IPV6_AUTOCONF – разрешает или запрещает автоконфигурирование Ipv6 с помощью протокола
  • IPV6_INIT – включение возможности использования адресации Ipv6(yes – адресация может использоваться, no – не используется)
  • PEERROUTES – устанавливает приоритет настройки шлюза по умолчанию, при использовании DHCP
  • IPV6_PEERROUTES — устанавливает приоритет настройки шлюза по умолчанию, при использовании DHCP для IPv6

Исходя из этой информации, настроим сетевой интерфейс.

Настройка статического IP адреса в CentOS

Откроем файл для редактирования:

В этом примере я указал статический IP адрес, маску подсети, шлюз и несколько DNS серверов. Включаем автозапуск интерфейса:

ONBOOT=”yes”

После всех модификаций, нужно выполнить рестарт сервиса network. Если все в порядке, вы получите такой листинг:

Restarting network (via systemctl): 

Также можно просто перезапустить все профили подключений :

Получение динамического IP адреса для интерфейса через DHCP

Если ваш сервер должен получить IP адрес от DHCP севера, откройте конфигурационный файл интерфейса и измените настройки:

То есть мы убрали все настройки, связанные с IP-адресами и маской, а так же поменяли способ назначения IP-адреcа на dhcp (BOOTPROTO=”dhcp”). После всех изменений, не забываем выполнять перезагрузку network.

Description

ntp — The NTP daemon and utilities

Property Value
Operating system Linux
Distribution CentOS 7
Repository CentOS x86_64
Official
Package filename ntp-4.2.6p5-29.el7.centos.x86_64.rpm
Package name ntp
Package version 4.2.6p5
Package release 29.el7.centos
Package architecture x86_64
Package type rpm
Homepage http://www.ntp.org
License (MIT and BSD and BSD with advertising) and GPLv2
Maintainer
Download size 548.31 KB
Installed size 1.37 MB
Category System Environment/Daemons
The Network Time Protocol (NTP) is used to synchronize a computer's
time with another reference time source. This package includes ntpd
(a daemon which continuously adjusts system time) and utilities used
to query and configure the ntpd daemon.
Perl scripts ntp-wait and ntptrace are in the ntp-perl package,
ntpdate is in the ntpdate package and sntp is in the sntp package.
The documentation is in the ntp-doc package.

Настройка NTP

Открываем файл с настройками:

vi /etc/ntp.conf

Настраиваем серверы, с которых наш NTP будет брать эталонное время. Например:

pool ru.pool.ntp.org iburst
server ntp2.vniiftri.ru iburst prefer
pool 0.ubuntu.pool.ntp.org iburst
pool 1.ubuntu.pool.ntp.org iburst
server 127.127.1.0

* iburst — отправлять несколько пакетов (повышает точность); ru.pool.ntp.org / 0.ubuntu.pool.ntp.org / 1.ubuntu.pool.ntp.org — адреса серверов, с которыми наш сервер будет сверять время; server — указывает на выполнение синхронизации с сервером, а не пулом серверов; prefer — указывает на предпочитаемый сервер. server 127.127.1.0 — позволит в случае отказа сети Интернет брать время из своих системных часов.

Настраиваем безопасность:

restrict default kod notrap nomodify nopeer noquery
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
restrict 127.0.0.1
restrict ::1

* где:

  • restrict default — задает значение по умолчанию для всех рестриктов.
  • kod — узлам, которые часто отправляют запросы сначала отправить поцелуй смерти (kiss of death), затем отключить от сервера.
  • notrap — не принимать управляющие команды.
  • nomodify — запрещает команды, которые могут вносить изменения состояния.
  • nopeer — не синхронизироваться с хостом.
  • noquery — не принимать запросы.
  • restrict 192.168.0.0 mask 255.255.255.0 — разрешить синхронизацию для узлов в сети 192.168.0.0/24.
  • IP адреса 127.0.0.1 и ::1 позволяют обмен данные серверу с самим собой.

Настройки по умолчанию могут быть разные для IPv4 и IPv6:

restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery

Перезапускаем сервис:

systemctl restart ntp || service restart ntp

Если используется брандмауэр, добавляем правило:

iptables -I INPUT 1 -p udp —dport 123 -j ACCEPT

или с помощью ufw:

ufw allow in on enp2s0 to any port 123 proto udp

* где enp2s0 — сетевой интерфейс, на котором слушает наш сервер.

Настройка SSH в CentOS 7

Дальше внесем некоторые изменения в работу ssh для увеличения безопасности. По-умолчанию, сервис работает на 22 порту и если все оставить как есть, то мы получим огромное количество попыток авторизоваться. Боты сканят непрерывно интернет и подбирают пароли к ssh. Чтобы обезопасить себя от сканов простых ботов, изменим порт, на котором работает ssh. Можно выбрать любой пятизначный номер, это не принципиально. От автоматического сканирования это защитит. Повесим демон ssh на 25333 порт. Для этого редактируем файл /etc/ssh/sshd_config

# mcedit /etc/ssh/sshd_config

1 # mcedit /etc/ssh/sshd_config

Раскомментируем строку Port 22 и заменим значение 22 на 25333.
Так же я обычно разрешаю подключаться по ssh пользователю root. Мне так удобнее. Проблем с этим у меня никогда не возникало. Если вы считаете, что это не безопасно, не трогайте эту настройку. Чтобы разрешить пользователю root подключаться по ssh, раскомментируйте строку PermitRootLogin yes.

Сохраняем файл. Теперь обязательно изменяем настройки iptables, добавляем в разрешенные подключения вместо 22 порта 25333. Если этого не сделать, то после перезапуска sshd мы потеряем удаленный доступ к серверу. Итак, открываем /etc/iptables_rules.sh и меняем в строке

$IPT -A INPUT -i $WAN -p tcp —dport 22 -j ACCEPT

1 $IPT-AINPUT-i$WAN-ptcp—dport22-jACCEPT

22 на 25333 и исполняем файл. Наше текущее соединение не оборвется, так как оно уже установлено, но заново подключиться по ssh к 22 порту уже н получится.

Перезапускаем sshd:

# systemctl restart sshd

1 # systemctl restart sshd

Проверяем какой порт слушает sshd:

# netstat -tulpn | grep sshd
tcp 0 0 0.0.0.0:25333 0.0.0.0:* LISTEN 1799/sshd
tcp6 0 0 :::25333 :::* LISTEN 1799/sshd

1
2
3

# netstat -tulpn | grep sshd

tcp0.0.0.0253330.0.0.0*LISTEN1799sshd

tcp6::25333::*LISTEN1799sshd

Если вывод такой же как у меня, то все в порядке, теперь к ssh можно подключаться по 25333 порту.

Step 3 — Configuring NTP to Join the Pool

To use your server with the NTP pool, and configure your new time servers, you’ll need to make some modifications to your NTP daemon’s configuration. To do so, edit the file:

First, make sure a driftfile is configured. A driftfile stores the frequency offset between the system clock running at its nominal frequency, and the frequency required to remain in synchronization with correct time. It helps to achieve a stable and accurate time. You should find this at the top of your configuration file on a default installation:

/etc/ntp.conf

Next, remove the default time source entries from the configuration. You’re looking for all lines which are of the pattern . If you’re using a default configuration, remove the highlighted lines as shown in the following example:

/etc/ntp.conf

Replace the lines you removed with the hand-picked servers you selected in the previous step.

/etc/ntp.conf

We use the option for each servers, per the NTP Pool recommendations. That way, if the server is unreachable, this will send a burst of eight packets instead of the usual one packet. Using the option in the NTP Pool Project is considered abuse as it will send those eight packets every poll interval, whereas sends the eight packets only the first time.

Next, make sure the default configuration does not allow management queries. If you don’t, your server could be used in NTP reflection attacks, or could be vulnerable to and queries that attempt to modify the state of the server. Check that the option is added to the default lines. Also make sure you add the options and as they restrict too eagerly asking clients and enforce rate limiting.

/etc/ntp.conf

You can find more information about the other options in the .

Your NTP daemon configuration file now should look like the following, although your file may have additional comments, which you can safely disregard:

/etc/ntp.conf

Save the file and exit the editor.

Now restart the NTP service and let your time server synchronize its clock to the upstream servers.

After a few minutes, check the health of your time server with the command:

The output should look similar to this:

The remote column tells you the hostname of the servers the NTP daemon is using, and the refid column tells you the source the servers are using. So for Stratum 1 servers, the refid field should show GPS, PPS, ACTS, or PTB, and Stratum 2 and higher servers will show the IP address of the upstream server. The st column shows the stratum, and delay, offset and jitter tell you about the quality of the time source. Lower values are better for these three fields.

Your time server is now able to serve time to the public. You can verify this by calling from another host:

The output should look similar to this and it tells you it adjusted the time server and the offset:

You are now ready to register your NTP server with the NTP Pool Project so others can use it.

Использование ip

Синтаксис ip по структуре напоминает синтаксис Cisco IOS. Любые опции могут быть сокращены до потери двусмысленности, например ip ro ad вместо ip route add.

Назначить маршрут по умолчанию

1
2
3

ip route add defaultvia192.168.1.1

 

Действия с маршрутами
Кроме add также поддерживаются и другие действия:

del — удалить маршрут.
replace — заменить маршрут другим.
change — изменить параметры маршрута.
Equal Cost Multi Path

Если добавить два маршрута до одной и той же сети с одинаковой метрикой, ядро начнет распределять нагрузку между ними путем выбора того или другого с равной вероятностью. Работает и для более чем двух маршрутов. Предупреждение: это может вызвать проблемы со входящими соединениями, потому что иногда ответ может пойти по другому маршруту, чем пришел запрос. Будьте осторожны.

1
2
3
4

ip route add defaultdev eth0

ip route add defaultdev eth1

 

Установка и настройка NTP-сервера на Centos

Ноябрь 6th, 2013 Evgeniy Kamenev

Установка и настройка NTP-сервера на Centos

Настройка синхронизации времени состоит из нескольких шагов

1.Корректно установить временную зону для сервера,

2.Установить ntpd

3.Выполнить первоначальную синхронизацию с сервером времени (ntpdate)

4.Запустить ntpd

5.Добавить ntpd в нужный runlevel

6.Проверить синхронизацию

7.Проверка статуса синхронизации(со временем,енмного позже)

1. Установка таймзоны

Проверить, какая таймзона установлена, можно командой date
# date

Пнд Апр 15 14:45:59 EEST 2013

Список таймзон можно найти в директории /usr/share/zoneinfo/

Для установки нужной таймзоны можно использовать следующие команды

Удаляем текущуюrm -rf /etc/localtime

Создаем симлинк на нужную (к примеру, для Киева)ln -s /usr/share/zoneinfo/Europe/Kiev /etc/localtime

date

2.Устанавливаем ntpdyum install ntp

cp /etc/ntp.conf /etc/ntp.conf~

3.После чего синхронизируем время с серверами времени в интернет

ntpdate pool.ntp.org

4./etc/init.d/ntpd start

5.chkconfig —level 2345 ntpd on

6.Проверка синхронизации

# ntpq —p

remote           refid      st t when poll reach   delay   offset  jitter

==============================================================================

*ns.campus-rv.ne 62.149.0.30      2 u   13   64  377   35.575   26.229   5.850

alpha.lvivlan.n .GPS.            1 u   11   64    7   37.583   28.939   2.061

+193.27.209.211  193.27.209.1     2 u    8   64  377   37.150   16.762   7.331

LOCAL(0)        .LOCL.          10 l   14   64  377    0.000    0.000   0.001

7.Статус синхронизации можно проверить через некоторое время с помощью утилиты ntpstat :

# ntpstat

synchronised to NTP server (193.27.209.1) at stratum 2

time correct to within 238 ms

polling server every 64 s

Описание параметров

В появившейся таблице мы видим сервера с которыми синхронизирован наш ntpd.

remote

Имя удаленного NTP-сервера.

   refid          Указывает, откуда каждый сервер получает время в данный момент.            st          Stratum  это число от 1 до 16, указывающее на точность          сервера. Единица означает максимальную точность, 16 — сервер          недоступен. Уровень вашего сервера будет равен уровню наименее точного          удаленного сервера плюс 1.

   poll          Интервал между опросами (в секундах). Значение будет изменяться          между минимальной и максимальной частотой опросов. В начале          интервал будет небольшим, чтобы синхронизация происходила          быстро. После того как часы синхронизируются, интервал начинает          увеличиваться, чтобы уменьшить трафик и нагрузку на популярные          сервера времени.

   reach          Восьмеричное представление массива из 8 бит, отражающего          результаты последних восьми попыток соединения с сервером. Бит          выставлен, если удаленный сервер ответил.

   delay          Количество времени (в секундах) необходимого для получения          ответа на запрос «который час? «.

   offset          Наиболее важное поле. Разница между временем локального и          удаленного серверов

В ходе синхронизации это значение должно          понижаться, указывая на то, что часы локальной машины идут все          точнее.

   jitter          Дисперсия (Jitter) — это мера статистических отклонений от          значения смещения (поле offset) по нескольким успешным парам          запрос-ответ. Меньшее значение дисперсии предпочтительнее,          поскольку позволяет точнее синхронизировать время.

   Значение знаков перед именами серверов

   —   Означает, что локальный сервис NTP не предпочитает этот сервер   +   Означает, что локальный сервис NTP предпочитает этот сервер   x   Отмечает плохой хост   *   Указывает на текущий наиболее предпочтительный сервер

Полезное дополнение

Чтобы просмотреть время в Linux достаточно набрать команду:

date

После чего нам будет показаны  текущий день недели, месяц, время и год.

Сбт Фев 13 02:09:28 EET 2010

Установить вручную дату и время можно с помощью этой же команды —

date MMDDhhmm

Где MMмесяц, DD – день, hh – час,  mm – минуты.

Т.Е. чтобы задать к примеру 10 января 10 часов 15 минут, нужно ввести следующее:

Date 01101015

Более подробно о команде date, можно почитать в мануале

man date

1. http://www.h1host.ru/blog/index.php?pid=1&theme=2&blog_id=17

2.http://centos.moy.su/news/data_i_vremja_v_centos/2010-02-13-6

3.http://blog.ckvhost.com/nastrojka-sinxronizacii-vremeni-s-pomoshhyu-ntp-v-centos/

4. http://xaxatyxa.ru/_centos/ntp-sinhronizatsiya-vremeni-centos.html

Опубликовано в рубрике Centos, Other Метки: NTP

Files

Path
/etc/ntp.conf
/etc/dhcp/dhclient.d/ntp.sh
/etc/ntp/crypto/pw
/etc/sysconfig/ntpd
/usr/bin/ntpstat
/usr/lib/systemd/ntp-units.d/60-ntpd.list
/usr/lib/systemd/system/ntpd.service
/usr/sbin/ntp-keygen
/usr/sbin/ntpd
/usr/sbin/ntpdc
/usr/sbin/ntpq
/usr/sbin/ntptime
/usr/sbin/tickadj
/usr/share/doc/ntp-4.2.6p5/COPYRIGHT
/usr/share/doc/ntp-4.2.6p5/ChangeLog
/usr/share/doc/ntp-4.2.6p5/NEWS
/usr/share/man/man1/ntpstat.1.gz
/usr/share/man/man5/ntp.conf.5.gz
/usr/share/man/man5/ntp_acc.5.gz
/usr/share/man/man5/ntp_auth.5.gz
/usr/share/man/man5/ntp_clock.5.gz
/usr/share/man/man5/ntp_decode.5.gz
/usr/share/man/man5/ntp_misc.5.gz
/usr/share/man/man5/ntp_mon.5.gz
/usr/share/man/man8/ntp-keygen.8.gz
/usr/share/man/man8/ntpd.8.gz
/usr/share/man/man8/ntpdc.8.gz
/usr/share/man/man8/ntpq.8.gz
/usr/share/man/man8/ntptime.8.gz
/usr/share/man/man8/tickadj.8.gz
/var/lib/ntp/drift
/var/log/ntpstats/

Сохранение настроек сети

Определяем, какие интерфейсы есть в системе

ip a

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

1lo<LOOPBACK,UP,LOWER_UP>mtu65536qdisc noqueue state UNKNOWN

linkloopback000000000000brd000000000000

inet127.0.0.18scope host lo

2eth0<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdisc pfifo_fast state UP qlen1000

linkether001517185fd8 brd ffffffffffff

inet10.15.0.128brd91.241.22.15scope globaleth0

3eth1<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdisc pfifo_fast state UP qlen1000

linkether001517185fd9 brd ffffffffffff

inet192.168.11.10124brd192.168.11.255scope globaleth1

inet10.49.0.18brd10.255.255.255scope globaleth13

inet192.168.70.1624brd192.168.70.255scope globaleth11

4gre0<NOARP>mtu1476qdisc noop state DOWN

linkgre0.0.0.0brd0.0.0.0

5gretap0<BROADCAST,MULTICAST>mtu1476qdisc noop state DOWN qlen1000

linkether000000000000brd ffffffffffff

6eth1.122@eth1<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdisc noqueue state UP

linkether001517185fd9 brd ffffffffffff

inet192.168.123.25423brd192.168.123.255scope globaleth1.122

 

Сохраняем настройки

Для сохранение я настроек необходимо внести изменения я конфигурационный файл интерфейса, который находиться /etc/sysconfig/network-scripts/ifcfg-eth0 и приводим его к виду:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

DEVICE=»eth0″

BOOTPROTO=none

NM_CONTROLLED=»yes»

ONBOOT=yes

TYPE=»Ethernet»

UUID=»7f9fe579-ac2f-4e35-9445-7685620fa61d»

HWADDR=001517185FD8

IPADDR=10.15.0.1

PREFIX=28

GATEWAY=10.15.0.254

DNS3=8.8.4.4

DNS2=8.8.8.8

DNS1=192.168.11.3

DEFROUTE=yes

IPV4_FAILURE_FATAL=yes

IPV6INIT=no

NAME=»System eth0″

 

Перезапуск сети

После внесения изменений необходимо перезапустить демон сети

1
2
3

service network restart

 

или так

1
2
3

etcinit.dnetwork restart

 

Настройка брандмауэра

Рассмотрим настройку фаервола при помощи двух различных популярных утилит — firewalld и iptables.

Firewalld

Настройка выполняется для двух сетевых интерфейсов — ens32 (внутренний) и ens34 (внешний):

firewall-cmd —direct —permanent —add-rule ipv4 nat POSTROUTING 0 -o ens34 -j MASQUERADE

firewall-cmd —direct —permanent —add-rule ipv4 filter FORWARD 0 -i ens32 -o ens34 -j ACCEPT

firewall-cmd —direct —permanent —add-rule ipv4 filter FORWARD 0 -i ens34 -o ens32 -m state —state RELATED,ESTABLISHED -j ACCEPT

systemctl restart firewalld

Iptables

Настройка выполняется из расчета, что внутренняя сеть имеет адресацию 192.168.0.0/24:

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE

/usr/libexec/iptables/iptables.init save

systemctl restart iptables

Как отключить IPv6 в CentOS?

На время написания статьи активного использования ipv6 в России нет, да и зачастую если таковая возможность имеется, администраторы предпочитают протокол ipv4. Поэтому если вы все же не используете данный протокол, его нужно отключить на сервере. Если вы точно уверены, что ни один из сервисов не настроен под работу с ipv6, можете сразу перейти к настройке сетевого интерфейса, если же нет, то начните с проверки. Нам нужно проверить, какие сервисы используют ipv6 и отключить данный протокол в конфигурации сервиса. Запустим команду:

У меня сервер тестовый, поэтому ipv6 используется только для sshd и cronyd. Это можно определить по “:::”.

Чтобы не возникало проблем после отключения ipv6 в конфигурации сети, отключите данный протокол в сервисах, в которых они используются на вашем сервере. Например для sshd, нужно открыть конфигурационный файл:

И раскомментируйте строки:

#AddressFamily any
#ListenAddress 0.0.0.0

После чего перезапустите сервис:

Как видим, для sshd протокол ipv6 теперь недоступен. Проделайте аналогичные настройки со всеми сервисами.

Перейдем к отключению протокола ipv6 в настройках сети. Откройте файл /etc/sysctl.conf:

И добавьте туда следующие строки:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Сохраните файл и примените через:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Перейдем к файлу /etc/sysconfig/network. Добавьте в него следующую конфигурацию:

NETWORKING_IPV6=no
IPV6INIT=no

Из файла конфигурации сетевого интерфейса /etc/sysconfig/network-scripts/ifcfg-eth0 удалите строку:

IPV6INIT="yes"

И наконец добавим запрет на работу ipv6 в grub:

В конец строки GRUB_CMDLINE_LINUX, добавляем:

ipv6.disable=1

После всех настроек, сохраните файл и обновите grub:

Выполните перезагрузку сервера и проверьте конфигурацию сети:

eth0: flags=4163 mtu 1500
inet 185.*.*.* netmask 255.255.255.0 broadcast 185.*.*.255
ether 52:54:00:d3:1c:3e txqueuelen 1000 (Ethernet)
RX packets 10068 bytes 613092 (598.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 32 bytes 5399 (5.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Протокол ipv6 на сервере отключен.

Prerequisites

Before anything else, you need to assign the correct time zone.
To get the current configuration, type:

# timedatectl
Local time: Sat 2015-11-07 08:17:33 EST
Universal time: Sat 2015-11-07 13:17:33 UTC
RTC time: Sat 2015-11-07 13:17:33
Timezone: America/New_York (EST, -0500)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: no
Last DST change: DST ended at
Sun 2015-11-01 01:59:59 EDT
Sun 2015-11-01 01:00:00 EST
Next DST change: DST begins (the clock jumps one hour forward) at
Sun 2016-03-13 01:59:59 EST
Sun 2016-03-13 03:00:00 EDT

To get the list of all the available time zones, type:

# timedatectl list-timezones
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
...
America/La_Paz
America/Lima
America/Los_Angeles
...
Asia/Seoul
Asia/Shanghai
Asia/Singapore
...
Pacific/Tongatapu
Pacific/Wake
Pacific/Wallis

Finally, to set a specific time zone (here America/Los_Angeles), type:

# timedatectl set-timezone America/Los_Angeles

Then, to check your new configuration, type:

# timedatectl
      Local time: Sat 2015-11-07 05:32:43 PST
  Universal time: Sat 2015-11-07 13:32:43 UTC
        RTC time: Sat 2015-11-07 13:32:43
        Timezone: America/Los_Angeles (PST, -0800)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: no
 Last DST change: DST ended at
                  Sun 2015-11-01 01:59:59 PDT
                  Sun 2015-11-01 01:00:00 PST
 Next DST change: DST begins (the clock jumps one hour forward) at
                  Sun 2016-03-13 01:59:59 PST
                  Sun 2016-03-13 03:00:00 PDT
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделитесь с друзьями:
Технарь
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.