Как настроить сеть в centos
Перейти к содержимому

Как настроить сеть в centos

  • автор:

Настройка сети в CentOS и Rocky Linux

Обновлено

Обновлено: 25.08.2022 Опубликовано: 06.07.2016

Что такое CentOS простыми словами. Инструкция применима к Rocky Linux, CentOS версий 7 и 8, CentOS mini (минимальная сборка), Fedora.

Базовая настройка сети

Смотрим все установленные сетевые адаптеры в системе:
В результате получаем что-то подобное:

1: lo: mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: ens32: mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:50:56:81:28:3c brd ff:ff:ff:ff:ff:ff
inet 192.168.156.22/22 brd 192.168.159.255 scope global ens32
valid_lft forever preferred_lft forever
3: ens34: mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:50:56:81:3f:22 brd ff:ff:ff:ff:ff:ff
inet 10.243.254.68/26 brd 10.243.254.127 scope global ens34
valid_lft forever preferred_lft forever

* Из примера видно, что в моем CentOS есть 3 сетевых карты — lo (локальная петля), ens32 и ens34 — сетевые Ethernet адаптеры. Если нужно настроить сеть для адаптера ens32, открываем на редактирование следующий конфигурационный файл:

vi /etc/sysconfig/network-scripts/ifcfg-ens32
И приводим его к следующему виду:

DEVICE=ens32
BOOTPROTO=static
IPADDR=192.168.0.155
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

. а также для CentOS 8 добавим:
NM_CONTROLLED=yes

Основные опции

Опция Описание Возможные значения
DEVICE Имя сетевого адаптера Должно совпадать с именем в системе. В данном примере ens32
BOOTPROTO способ назначения IP-адреса static: ручное назначение IP, dhcp: автоматическое получение IP
IPADDR IP-адрес адрес, соответствующий вашей сети
NETMASK Сетевая маска должна соответствовать вашей сети
GATEWAY Шлюз по умолчанию IP-адрес сетевого шлюза
DNS1 Основной DNS-сервер IP-адрес сервера имен
DNS2 Альтернативный DNS-сервер IP-адрес сервера имен
ONBOOT Способ запуска сетевого интерфейса yes: автоматически при старте сервера, no: запускать вручную командой
NM_CONTROLLED Указываем, должен ли интерфейс управляться с помощью NetworkManager yes: управляется NetworkManager, no: не может управляться NetworkManager

Чтобы настройки применились, перезапускаем сетевую службу. а) для CentOS 7:
systemctl restart network
б) для Rocky Linux и CentOS 8 вводим 2 команды:
systemctl restart NetworkManager
nmcli networking off; nmcli networking on

* в большей степени, это основное отличие версий 7 и 8. Чтобы команды смогли поменять настройки, для интерфейсов необходима настройка NM_CONTROLLED=yes.

Дополнительные опции (не обязательны для работы сети)

Опция Описание Возможные значения
DOMAIN Указываем домен, который необходимо добавлять к имени хостов, если он не указан в запросе явно. Несколько доменов можно указать в кавычках через пробелы. Строковое значение, соответствующее имени домена.
IPV4_FAILURE_FATAL Отключение сетевого интерфейса, если IP-адрес (v4) имеет неверную конфигурацию yes: отключать, no: не отключать
IPV6_FAILURE_FATAL Отключение сетевого интерфейса, если IP-адрес (v6) имеет неверную конфигурацию yes: отключать, no: не отключать
IPV6_AUTOCONF Разрешает или запрещает автоконфигурирование IPv6 с помощью протокола Neighbor Discovery yes: разрешить автоконфигурирование, no: запретить
IPV6INIT Говорит о возможности использовать сетевой интерфейс для адресации IPv6 yes: адресация может использоваться, no: не используется
PEERROUTES Задает приоритет настройки шлюза по умолчанию, полученного от DHCP yes: маршрут от DHCP важнее, чем назначенный вручную, no: важнее маршрут, заданный вручную
IPV6_PEERROUTES Задает приоритет настройки шлюза по умолчанию, полученного от DHCP (для IPv6)
UUID Уникальный идентификатор сетевого интерфейса. Его можно сгенерировать самостоятельно командой uuidgen Строка из 32-х символов в формате 8-4-4-4-12.
Например: fca8cc84-6f21-4bac-9ccb-36f281321ba4

Настройка сети из консоли (командами)

Настройка из консоли будет работать только до перезагрузки системы. Ее удобно применять для временного конфигурирования или проведения тестов. Назначение IP-адреса или добавление дополнительного к имеющемуся:

ip a add 192.168.0.156/24 dev ens32
* в данном примере к сетевому интерфейсу ens32 будет добавлен IP 192.168.0.156. Изменение IP-адреса:
ip a change 192.168.0.157/24 dev ens32
* однако, по факту, команда отработает также, как add. Удаление адреса:
ip a del 192.168.163.157/24 dev ens32
Добавление маршрута по умолчанию:
ip r add default via 192.168.0.1
Добавление статического маршрута:
ip r add 192.168.1.0/24 via 192.168.0.18
Удаление маршрутов:
ip r del default via 192.168.160.1
ip r del 192.168.1.0/24 via 192.168.0.18
Подробнее про управление маршрутами в CentOS.

Команда ifconfig

В новых версиях CentOS утилита ifconfig не установлена и при вводе одноименной команды можно увидеть ошибку «Команда не найдена». Необходимо либо воспользоваться командой ip (ip address), либо установить утилиту ifconfig. а) в CentOS 7:

yum install ifconfig
а) в CentOS 8:
yum install net-tools

Настройка WiFi

Принцип настройки беспроводной сети на CentOS не сильно отличается от проводной. Создаем конфигурационный файл со следующим содержимым:

vi /etc/sysconfig/network-scripts/ifcfg-dmoskwifi

ESSID=»dmoskwifi»
MODE=Managed
KEY_MGMT=WPA-PSK
TYPE=Wireless
BOOTPROTO=none
NAME=dmoskwifi
ONBOOT=yes
IPADDR=192.168.1.50
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=77.88.8.8

* где dmoskwifi — название WiFi сети (SSID).

Несколько IP на одном сетевом адаптере

  1. Псевдонимов — создание нового виртуального интерфейса с названием :.
  2. Добавлением IPADDRx и NETMASKx в конфигурационном файле.

Рассмотрим оба варианта подробнее.

Создание псевдонимов (более ранние версии CentOS 7 и ниже)

Создаем новый конфигурационный файл для сетевого интерфейса:

DEVICE=ens32:1
BOOTPROTO=static
IPADDR=192.168.0.156
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

* где ens32 — имя физического интерфейса, :1 — виртуальный номер.

Перезапускаем сетевые службы.

Настройка конфигурационного файла (поздние версии CentOS 7 и выше)

Открываем конфигурационный файл для сетевого интерфейса, например:

DEVICE=ens32
BOOTPROTO=static
IPADDR=192.168.0.155
NETMASK=255.255.255.0
IPADDR1=192.168.0.156
NETMASK1=255.255.255.0
IPADDR2=192.168.0.157
NETMASK2=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

* где ens32 — имя физического интерфейса, дополнительные адреса задаются с помощью опций IPADDR1, IPADDR2, NETMASK1, NETMASK2.

Перезапускаем сетевые службы.

DHCP

Для автоматического получения IP-адреса от сервера DHCP мы должны задать следующее значение для опции BOOTPROTO в конфигурационном файле:

* в наших примерах выше данный параметр имеет значение static.

Переопределение DNS с помощью dhclient.conf

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

interface «enp0s3»
supersede domain-name-servers 8.8.8.8, 8.8.4.4;
>

* где enp0s3 — имя сетевого интерфейса, который будет получать адрес от сервера DHCP. 8.8.8.8, 8.8.4.4 — адреса, которые будут настоены на интерфейсе, независимо от того, какие предложит сервер DHCP.

Или мы можем использовать адреса от DHCP, но сделать приоритетными свои:

interface «enp0s3»
prepend domain-name-servers 127.0.0.1;
>

* в данном примере, мы зададим в качестве основного сервера DNS — 127.0.0.1.

Чтобы данный метод сработал в CentOS 8, необходимо открыть файл:

В раздел [main] добавить:

Переопределение DNS в NetworkManager (альтернативный способ)

Метод, описанный выше по переопределению DNS не подходит для NetworkManager без изменения настройки dhcp, так как адреса будут получены и обработаны с помощью встроенных методов. Выше, предоставлено решение в виде настройки dhcp=dhclient, однако мы рассмотрим альтернативный способ, на случай, если кому-то это пригодится.

sleep 1
rm -f /etc/resolv.conf
echo ‘# Generated by dispatcher’ > /etc/resolv.conf
echo ‘nameserver 127.0.0.1’ >> /etc/resolv.conf
echo » >> /etc/resolv.conf
cat /var/run/NetworkManager/resolv.conf >> /etc/resolv.conf

* в данном примере мы создали скрипт, который сначала добавит нужную нам запись в файл /etc/resolv.conf, а после добавит туда значения, полученные от DHCP. Обратите внимание, что в конкретном примере:

  • адрес 127.0.0.1 задается в качестве приоритетного сервера DNS.
  • остальные настройки получаем от DHCP, которые NetworkManager помещает в файл /var/run/NetworkManager/resolv.conf.

Разрешаем запуск скрипта:

chmod +x /etc/NetworkManager/dispatcher.d/99-resolv.conf.dhclient

systemctl restart NetworkManager

Через 2 секунды проверяем:

Читайте также

Другие статьи на тему сетевых настроен CentOS:

Как настроить сеть в CentOS

Настройте сеть в CentOS 6, CentOS 7, CentOS 8, CentOS Stream 8, чтобы приступить к работе с вашим сервером. В статье описана настройка сети CentOS (ОС на базе Linux) при установке операционной системы и в консоли с помощью конфигурационного файла.

Мы рассмотрим первоначальную настройку сети с помощью базовых параметров: IP-адреса, маски подсети, шлюза и DNS-серверов.

Основные CentOS-команды

Перед тем как перейти к пошаговой настройке сети, перечислим CentOS-команды консоли, которые понадобятся.

Для просмотра списка установленных сетевых интерфейсов:

ip a
ls /sys/class/net/
sudo systemctl restart networking

Для CentOS 8/Stream 8:

systemctl restart network

Как настроить сеть при установке

Обычно сеть нужно настраивать при первой установке дистрибутива CentOS.

В инструкции описана настройка сети CentOS 7. Инструкция также подойдет для CentOS 6, 8 и Stream 8.

При установке нажмите Сеть и имя узла:

Слева показан список подключенных сетевых интерфейсов. Выберите нужный и нажмите Настроить.
Обратите внимание
Чтобы включить сетевой интерфейс CentOS, нажмите на переключатель.

Перейдите на вкладку Параметры IPv4. Выберите метод Вручную и нажмите Добавить. Затем введите нужные параметры сети: статический IP-адрес, маску подсети, шлюз, серверы DNS. Нажмите Сохранить:

Готово, теперь вы знаете, как при установке CentOS настроить сеть. Далее продолжится установка операционной системы, после чего ваш сервер будет иметь необходимые сетевые настройки.

Как настроить сеть в консоли

Настроить сеть можно не только на этапе установки, но и после неё. Настройка сети CentOS через консоль пригодится, если вы пропустили этап настройки при установке или хотите изменить существующие параметры сети.

Как узнать, какие сетевые интерфейсы установлены

Чтобы посмотреть список установленных сетевых интерфейсов, перейдите в консоль через пользователя root и введите команду:

ip a
ls /sys/class/net/

Результат выполнения каждой из команд в консоли представлен ниже. В примере команда ip a показывает, что установлено два интерфейса — lo (локальная петля) и enp0s3 (сетевой адаптер Ethernet). Заметьте, что команда ls отображает только названия интерфейсов. Имена интерфейсам назначаются автоматически.

Как настроить сеть

Рассмотрим настройку сети для сетевого интерфейса, например, с названием enp0s3.

В CentOS в каталоге /etc/sysconfig/network-scripts/ хранятся конфигурационные файлы (Network Config) с настройками всех сетевых интерфейсов. Эти файлы начинаются с приставки ifcfg-. Так, для рассматриваемого сетевого интерфейса название файла ifcfg-enp0s3, а путь до него — /etc/sysconfig/network-scripts/ifcfg-enp0s3.

Чтобы настроить сеть для интерфейса:

Для начала вы можете посмотреть сетевые настройки с консоли. Откройте конфигурационный файл с помощью текстового редактора nano (вы можете использовать другой удобный вам редактор):

nano /etc/sysconfig/network-scripts/ifcfg-enp0s3

Где enp0s3 — название сетевого интерефейса. Содержимое конфигурационного файла зависит от сетевого интерфейса. В файле могут быть указаны разные параметры сети. Файл выглядит следующим образом:

Измените IP-адрес, маску подсети, шлюз и серверы DNS. Для этого замените или добавьте в файл соответствующие строки:

DEVICE=enp0s3 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.0.0 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 DNS1=8.8.8.8

Где: DEVICE — имя настраиваемого сетевого интерфейса; BOOTPROTO — способ назначения IP-адреса в CentOS: static (вручную), dhcp (автоматический) или none (не использовать dhcp); ONBOOT — запуск интерфейса при старте сервера: yes (запускать автоматически), no (запускать вручную); IPADDR — IP-адрес; NETMASK — маска подсети; GATEWAY — шлюз для доступа к интернету; DNS1 (а также DNS2, DNS3) — DNS-серверы — можно добавить несколько.

Сохраните изменения и выйдите из редактора. Для этого нажмите Ctrl+X, затем Y.
Затем необходимо перезапустить сеть. Если у вас CentOS 7, введите команду:

sudo systemctl restart networking

Как настроить сеть в CentOS: пошаговая инструкция

Каждый системный администратор должен знать, как выполняется настройка сети CentOS, поскольку это одна из самых популярных операционных систем для серверного оборудования. Благодаря открытому коду её легко адаптировать под нужды компании, в том числе для развертывания виртуальных или выделенных серверов. В этой статье мы рассмотрим базовые параметры, основные способы подключения к Интернету и дополнительные возможности для CentOS 6, 7 и 8.

Как работает сеть?

Чтобы корректно выполнить в CentOS сетевые настройки, сначала нужно понять, как сеть работает.

В основе лежит принцип обмена информацией между устройствами. Данные отправляются пакетами, в которых дополнительно указаны 2 типа адресов.

  • IP-адрес – это уникальный числовой идентификатор. Его можно сравнить с номером телефона, который используют, когда нужно связаться с другим абонентам.
  • MAC-адрес – физический адрес для связи по локальной сети. Его присваивают сетевой карте устройства еще на этапе производства.

Когда компьютер подключается к локальной сети, обмен данными выполняется через обращение к MAC-адресу. С другими компьютерами, подключённым к глобальной сети, он может связаться только после получения IP-адреса.

Получают его с помощью протокола DHCP – протокола динамической настройки узла. Процесс состоит из трёх этапов.

  • От устройства исходит запрос в локальную сеть. Его принимает DHCP-сервер. Он отправляет в ответ IP-адрес из заданной области и оставляет запись о том, что он занят и не может использоваться другим устройством.
  • Компьютер отправляет запрос IP маршрутизатору, который разрешает доступ к Интернету.
  • От компьютера поступают запросы к DNS-серверам для получения стандартных сведений.

Таким образом, настройка Linux CentOS после установки предполагает налаживание и проверку нескольких параметров.

Основные CentOS-команды консоли

Управление в CentOS выполняется с помощью команд.

ip a – просмотр перечня установленных сетевых интерфейсов.

sudo systemctl restart networking – в 7 версии CentOS перезапуск сети.

systemctl restart network – в CentOS 8 или Stream 8 перезапуск сети.

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

Пользователь может выполнить настройку сети уже при установке дистрибутива CentOS. Для этого нужно выбрать раздел «Сеть и имя узла».

В левой части экрана увидите список доступных интерфейсов и можете выбрать нужный. В правой части экрана нажмите кнопку «Настроить».

В следующем окне откройте вкладку «Параметры IPv4». Выбирайте метод «Вручную» и кликните по кнопке «Добавить». Введите подходящие параметры и нажмите «Сохранить».

Как выполняется в CentOS настройка сети из консоли

Для начала нужно понять, какие интерфейсы доступны. Для этого вводим команду «ip a» и получаем ответ.

В нашем случае доступно 2 интерфейса:

lo – локальная петля;

enp0s3 – сетевой адаптер Ethernet.

Дальше в CentOS настройка сетевого интерфейса выполняется через конфигурационные файлы, названия которых начинается с приставки «ifcfg». Найти их можно в каталоге /etc/sysconfig/network-scripts/

Рассмотрим процесс на примере файла ifcfg-enp0s3.

Откройте его в редакторе nano (при желании можно использовать другой редактор).

Увидите несколько параметров.

DEVICE — название сетевого интерфейса.

TYPE — тип интерфейса.

BOOTPROTO — способ назначения IP-адреса.

ONBOOT — запуск интерфейса при включении сервера.

Эти параметры нужно подкорректировать, укажите следующие значения.

Сохраните изменения с помощью сочетания клавиш «Ctrl+X», затем нажмите «Y». Перезапустите сеть.

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

# cp /etc/sysconfig/network-scripts/ifcfg-eno2 /etc/sysconfig/network-scripts/ifcfg-eno3

# systemctl restart network

Настройка основных параметров при подключении к сети CentOS

Чтобы наладить соединение и убедиться, что всё работает корректно, нужно проверить основные параметры.

IP-адрес

В данном случае мы уже задали статический IP-адрес в консоли. Чтобы его узнать или проверить, нужно ввести одну из двух команд.

# ifconfig | grep inet

# ifconfig | grep inet

Есть возможность настроить получение анонсов по DHCP. Для этого в конфигурационном файле поменяйте значение параметра BOOTPROTO на «dhcp» и перезагрузите интерфейс. Теперь для подключения можно зайти в веб-консоль. В разделе серверы и оборудование нажмите на значок консоли.

В следующей вкладке задайте значения сервера и введите команду «ip address». В строке с обозначением интерфейса eno1 увидите динамический IP-адрес.

В одном интерфейсе можно использовать несколько IP-адресов. Чтобы внести изменения, откройте /etc/sysconfig/network-scripts/ifcfg-eno1.

Удалите переменную IPADDR и добавьте вместо неё IPADDR1 и IPADDR2. Перезагрузите сервер.

DNS

DNS-серверов может использоваться несколько: основной будет называться DNS1, а дополнительные с добавлением переменных (DNS2, DNS3 и другие).

В CentOS настройка DNS выполняется в конфигурационном файле. Открываем /etc/sysconfig/network-scripts/ifcfg-eno1 и указываем DNS1=»82.148.21.1″. После перезагрузки адрес DNS-сервера можно посмотреть в «/etc/resolv.conf».

# grep «nameserver» /etc/resolv.conf

Если здесь содержатся данные о DNS-сервере, то настройка выполнена корректно.

Hostname

Обычно имя сервера присваивается автоматически – localhost.localdomain. Но допустимо задавать другие названия. Чтобы hostname изменить, нужно ввести

# hostname – это команда для проверки настроек. Если имя хоста совпадает, всё сделали правильно.

За настройку шлюза отвечает переменная GATEWAY. Мы уже рассматривали, как задать его вручную через консоль. А команда «netstat -nr» возвращает его первоначальный адрес.

IPv6

Чтобы сэкономить ресурсы, допустимо отключить протокол IPv6. Для этого откройте файл /etc/sysctl.conf и впишите дополнительные строки.

Изменения нужно применить.

В файле /etc/sysconfig/network тоже нужно дописать 2 строки.

Теперь откройте файл /etc/default/grub. В параметре GRUB_CMDLINE_LINUX допишите

Сохраните файл, обновите GRUB. Перезагрузите сервер.

Статический маршрут

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

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

В результате система выдаст ответ.

В примере маршрут указан к адресу 0.0.0.0/0.0.0.0 и указан шлюз по умолчанию, а статические маршруты отсутствуют. Нужно его добавить, ориентируясь на подсеть и маску.

# route add -net 192.168.8.0/24 gw 192.168.159.5

Однако новые настройки сбрасываются в случае перезагрузки, поэтому их нужно прописывать в конфигурации. Для этого создаём файл с названием route-eth0 в папке /etc/sysconfig/network-scripts. Затем указываем параметры.

192.168.8.0/24 via 192.168.159.5

Выполняем перезагрузку и проверку.

Настройка сети в CentOS через Network Manager

В CentOS предусмотрена специальная утилита Network Manager для управления сетевыми соединениями. Её особенностью является графический интерфейс, благодаря которому упрощается процесс настройки.

Открывается Network Manager с помощью команды «nmtui». Откроется псевдо-GUI интерфейс, где можно задать актуальные настройки. То есть можно пользоваться не только клавиатурой, но ещё и мышью.

Кроме того, управление можно осуществлять с помощью утилиты CLI (интерфейс командной строки). Например, для интерфейса с названием «eno1» будут актуальны следующие команды для настройки IP-адреса, шлюза и DNS-сервера.

# nmcli con mod eno1 ipv4.addresses 82.148.21.49/24

# nmcli con mod eno1 ipv4.gateway 82.148.21.1

# nmcli con mod eno1 ipv4.dns «8.8.8.8

Заключение

Мы рассмотрели необходимые параметры для базовой настройки сети. Этого достаточно, чтобы начать работу и обеспечить корректный обмен данными через Интернет.

Настроить сеть можно через консоль или утилиту Network Manager. Процесс несложный даже для новичков. Но всё же для работы с CentOS желательно иметь хотя бы минимальные знания в области информационных технологий.

Установка и базовая настройка CentOS 8

date

05.02.2021

user

VyacheslavK

directory

CentOS, Linux

comments

комментариев 5

В этой статье мы рассмотрим чистую установку с нуля и в базовую настройку сервера CentOS 8 в минимальной конфигурации.

Что нового в CentOS 8?

24 сентября 2019 года, вышел релиз 8-ой версии CentOS. CentOS — дистрибутив Linux, основанный на коммерческом Red Hat Enterprise, компании Red Hat и совместимый с ним.

Рассмотрим наиболее крупные изменения в релизе CentOS 8:

  • Используется ядро Linux kernel 4.18.
  • Переход с пакетного менеджера yum на dnf. В данный момент yum существует как алиас к dnf.
  • Выполнено разделение основного репозитория на 2 — это BaseOS и AppStream. Сделано это для того, чтобы у пользователя появилась возможность устанавливать разные версии пакетов на сервер. BaseOS работает как и раньше.
  • Обновилось все ПО, в том числе и ядро. В базовом репозитории теперь устанавливается php версии 7.2 (наконец-то).
  • Замена iptables на nftables. Лично я пока еще со вторым не работал напрямую, поэтому не могу сказать, хорошо это или плохо. Единственный момент, если нужно будет переносить какие-то проекты на новую ОС, придется разбираться с правилами, так как есть сервера с чистым iptables.
  • network-skripts не используются по умолчанию для настройки сети, теперь управления сетью возложено на Network Manager.
  • По умолчанию устаналивается веб-интерфейс управления сервером cockpit (удобно для новичков).
  • Для управления контейнерами используется podman (вместо docker и mobdy).
  • Новая версия стека TCP/IP 4.16 с улучшенной производительностью и поддержкой алгоритмов контроля BBR и NV.
  • Новые версии дситрибутивов:

Установка CentOS 8 с помощью ISO-образа

Так как я проводил установку операционной системы на виртуальной машине KVM, предварительно я скачал установочный ISO-образ с одного из официальных зеркал (https://www.centos.org/download/mirrors/) и примонтировал его для установки на виртуальном сервере (при установке на физический сервер залейте установочный образ СentOS на USB флешку). Сразу скажу, процесс установки CentOS 8, не отличается от установки предыдущей версии и данная статья рассчитана на то, что будет служить помощником для пользователей, которые выполняют подобное впервые.

В рекомендуемых требования указано, что для установки CentOS 8 необходимо минимум 10 Гб места на диске и 512 Мб RAM на одно ядро процессора

Перезапустив виртуальную машину с примонтированным образом, я вошел в VNC-консоль. Первым шагом, вам будет предложено выбрать дальнейшие действия. Так как вы выполняем установку, нам интересен первый пункт меню:

Install CentOS Linux 8.0.1905

Install CentOS Linux 8.0.1905

Выбрав его, у вас запустится процесс установки:

запуск установки centos 8

В процессе пока все необходимое ПО загружается, можно просто наблюдать за процессом, от вас не требуется никаких действий.

И когда черный экран сменится на интерактивный с логотипом CentOS, пора брать в руки мышь и клавиатуру.

язык установки centos 8

В приветствии, система попросит вас выбрать язык, я всегда ставлю English (английский), потому что мне так удобнее работать (да и не понимаю, зачем вообще ставить русский язык на сервере). Нажмите кнопку “Continue”. В следующем меню нужно выбрать основные настройки для установки CentOS.

параметры установки centos 8

Для запуска установки, обязательно настроить только один пункт “Installation Destination”, там вы указываете разбивку диска, но я предпочитаю так же, сразу настроить сеть и дату со временем.

выбор часового пояса в centos

В зависимости от вашего часового пояса, вы устанавливаете свои параметры, для меня это Москва.

Чтобы настроить сеть, переходим в пункт “Network & Host Name”

настройка сети при установке centos 8

В поле “Host Name” указываем имя сервера и для конфигурации сетевых интерфейсов нажимаем “Configure”

автоматически подключать сеть

В главной вкладке, нужно отметить галочкой “Automatically connect to this network when it is available”, это нужно для того, чтобы сетевой интерфейс поднимался автоматически.

Перейдите во вкладку “IPv4 Settings” (либо IPv6 если вы используете данный протокол) настройте IP-адрес, маску подсети и шлюз:

задать статический ip адрес при установке centos 8

Для ввода конкретного IP, нужно выбрать метод “Manual” и нажать кнопку “Add”, после чего у вас появится возможность ввести нужные данные. Сохранив все, мы вернемся к начальному окну настроек сети

сеть в centos подключена

Как можно увидеть на скриншоте, IP адрес добавился и сетевой интерфейс уже поднят (состояние Connected).

Следующим шагом мы перейдем к разбивке диска:

настройка диска при установке centos 8

Для примера установки я воспользовался автоматической разбивкой от разработчиков CentOS. Если вы хотите разбить диск по-своему, нужно выбрать пункт “Custom”.

Если контроллер вашего сервера не поддерживает аппаратный RAID, в этом пункте меню вы можете собрать программный RAID из дисков сервера на базе mdadm .

Так как на моей виртуальной машине, ранее была установлена ОС, система установки увидела это. Я удалил разделы предыдущей операционной системы в последующих открывающихся меню:

очистка разделов на диске при установке centos 8

reclaim disk space

Удалить разделы можно кнопкой “Delete all”, после чего потребуется нажать кнопку “Reclaim space”, чтобы размер дискового пространства стал актуальным.

Список пакетов для установки выбирается в пункте Software Selection. Если вы планируете использовать CentOS 8 в качестве сервера, достаточно выбрать Minimal Install, а из добавлений Standard и Guest Agents (если вы ставите гостевую ОС в виртуальной машине).

После вышеописанных действий, можно запускать установку кнопкой “Begin Installation”

начать установку centos 8

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

задать пароль root и создать новаых пользователей при установке centos 8

Нажмите на кнопку “Root Password”, введите и повторите пароль и нажмите “Done”, чтобы вернуться к установке:

пароль root

Изначально я задаю простой пароль, чтобы в случае проблем с сетью, я мог легко его ввести в VNC-консоли и исправить проблемы. После того, как система будет установлена, пароль рекомендуется изменить на более сложный. Установка CentOS 8 у меня заняла порядка 5-7 минут и когда в окне установки загорится кнопка “Reboot”, это означает, что все было установлено и нужно перезапустить сервер.

перезагрузка сервера после устаноовки centos 8

На этом установка CentOS 8 завершена.

Базовая настройка CentOS 8 после установки

Базовая настройка CentOS 8 практически не отличается от настройки CentOS, я делаю базовые настройки одинаковые на всех серверах.

CentOS 8: Установка обновлений и инструментов администратора

Как уже отмечалось ранее, в CentOS 8 на замену yum, пришел dnf.

Dnf – это следующее поколение приложения YUM, менеджер пакетов для дистрибутивов Linux на основе RPM-пакетов. Ранее dnf использовался в дистрибутивах Fedora, а теперь и в CentOS 8.

Первое действие, которое я выполняю на вновь установленном сервере, это обновление системы:

Если образ свежий, то скорее всего у вас не будет пакетов для обновлений как в моем случае:

[root@centos var]# dnf update

Last metadata expiration check: 0:21:47 ago on Wed 09 Oct 2019 02:36:45 PM +06. Dependencies resolved. Nothing to do. Complete!

Если у вас обнаружатся обновления, обязательно их установите.

Следующим шагом, подключим репозиторий EPEL и установим необходимые утилиты для удобного администарирования сервера:

dnf install epel-release -y
dnf install mc wget screen nano net-tools bind-utils curl lsof vim -y

Мне для комфортного администрирования хватает этого набора утилит, вы можете установить свои привычные утилиты.

Автоматическое обновление системы я не включаю, так как всегда устанавливаю необходимые обновления вручную. Если вы хотите настроить автоматическое обновление, установите пакет dnf-automatic:

dnf install -y dnf-automatic

Чтобы проверить активные задания на обновления системы введите:

systemctl list-timers *dnf-*

Отключение SELinux

На начальном этапе я всегда отключаю SELinux (для применения изменения нужно перезагрузить сервер):

Отключение SELinux налету, можно выполнить командой:

Настройка сети в CentOS 8

Так как сеть я настроил на этапе установки системы, настройка ее в данный момент не требуется (подробная статья по настройке сети в CentOS). Хочу лишь сказать, что в CentOS 8, сеть управляется только через Network Manager и утилиту nmcl. Network-scripts по умолчанию не поддерживаются. Если честно, в своей работе я всегда отключал NM и не использовал, для меня это не удобный инструмент, теперь придется разбираться и с ним.

Проверка статуса сети:

[root@server ~]# systemctl status NetworkManager

● NetworkManager.service - Network Manager Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-10-07 08:23:11 MSK; 3h 37min ago Docs: man:NetworkManager(8) Main PID: 870 (NetworkManager) Tasks: 3 (limit: 5060) Memory: 4.7M CGroup: /system.slice/NetworkManager.service └─870 /usr/sbin/NetworkManager --no-daemon
Установка и смена hostname

Если вы не задали корректный hostname сервера при установке или просто хотите изменить, это можно выполнить несколькими способами. Измените его в файле /etc/hostname или поменяйте с помощью команды:

hostnamectl set-hostname нужный_хостнейм

Настройка firewalld в CentOS 8

Добавим в доверенные зоны на firewalld, нужные для начальной работы сервисы (SSH и HTTP/HTTPS):

firewall-cmd –-add-service=ssh
firewall-cmd —permanent –-add-service=http
firewall-cmd —permanent –-add-service=https

Настройка времени и часового пояса (time-zone)

Чтобы посмотреть текущее время и time-zone, нужно ввести команду date:

[root@centos var]# date

Wed Oct 9 13:03:00 MSK 2019

Мы указали time-zone при установке самой системы, поэтому у нас время по Москве. Чтобы поменять time-zone, нужно воспользоваться соответствующей командой:

timedatectl set-timezone Europe/Moscow

Где вместо Europe/Moscow вы можете указать свой вариант, например:

[root@server network-scripts]# date
Mon Oct 7 12:46:09 MSK 2019

[root@server network-scripts]# timedatectl set-timezone Asia/Almaty
[root@server network-scripts]# date

Mon Oct 7 15:46:22 +06 2019

[root@server network-scripts]# systemctl status chronyd

● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-10-07 16:13:48 +06; 9s ago Docs: man:chronyd(8) man:chrony.conf(5) Main PID: 31700 (chronyd) Tasks: 1 (limit: 5060) Memory: 1.1M CGroup: /system.slice/chronyd.service └─31700 /usr/sbin/chronyd
Настройка истории команда в bash_history

Для удобного просмотра истории, я всегда добавляю пару строк в .bashrc, чтобы в последствии можно было легко ориентироваться в отчетах.

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

1 dnf repolist 2 dnf install epel-release

То есть мы видим, что выполнялось на сервере, но не видим время и точную дату, для меня это критично, так как доступ к серверам могут иметь несколько специалистов. Поэтому приведем history к приятному виду:

Откроем файл /root/.bashrc и добавим в него нужные строки:
nano /root/.bashrc

export HISTSIZE=10000 export HISTTIMEFORMAT="%h/%d/%y - %H:%M:%S "

Теперь при проверке history, мы видим точное время выполнения той или иной команды:

1 Oct/07/19 - 16:16:29 dnf repolist 2 Oct/07/19 - 16:16:29 dnf install epel-release

Cockpit: Веб-интерфейс управления сервером в CentOS 8

Как мы уже упоминали, в CentOS 8 предустановлен веб-интерфейс управления сервером cockpit. Он также управляется через systemctl. Вы можете запустить его и добавить в автозгрузку:

# systemctl enable cockpit.socket
# systemctl start cockpit.socket

По–умолчанию веб сервер Cockpit слушает на порту 9090. Добавьте этот порт в разрешенные:

# firewall-cmd —get-active-zones
# firewall-cmd —add-port=9090/tcp —zone=MY_ACTIVE_ZONE —permanent
# firewall-cmd —reload

Для доступа к веб-интерфейсу Cockpit, откройте в браузере URL адрес https://your-CentOS8-IP:9090 и авторизуйтесь.

Cockpit - веб интерфейс управления сервером centos 8

С помощью веб-интерфейса Cockpit вы можете смотреть загрузку своего сервера, управлять сетями и хранилищами, контейнерами, смотреть логи.

На этом моя типовая настройка CentOS сервера закончена, далее я выполняю настройки согласно технического задания по различным проектам и обычно они отличаются.

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *