Статья о том как подготовить только что установленный на сервер дистрибутив Centos 7 к дальнейшей работе с ним.
Содержание:
- Network Manager
- Настройка сети
- Подключение EPEL репозитория
- FireWall
- Установка и настройка NTPD
- Дополнительные полезные утилиты
Сразу же выключаем Network Manager. Это программа, облегчающая определение и конфигурацию средств для автоматического подключения к сети. Полезна она только для домашнего ПК или ноутбука, на сервере же может создавать проблемы с настройкой сети, т.к. может самостоятельно менять настройки.
1 2 3 |
systemctl stop NetworkManager # останавливаем службу systemctl disable NetworkManager # удаляем из автостарта systemctl restart network # перезапускаем сетевую подсистему для применения изменений |
Вариант в одну строку:
1 |
systemctl stop NetworkManager && systemctl disable NetworkManager && systemctl restart network |
Настройка сети
Настройки сетевых интерфейсов указываются в файле /etc/sysconfig/network-scripts/ifcfg-eth0. Однако в Centos 7 файл конфигурации сетевого интерфейса может иметь имя наподобие ifcfg-enp0s1. Как изменить имя сетевого интерфейса можно прочитать здесь.
1 2 3 4 5 6 |
DEVICE=eth0 BOOTPROTO=none ONBOOT=yes IPADDR=192.168.1.10 NETMASK=255.255.255.0 GATEWAY=192.168.1.11 |
Если Вы не используете протокол IPv6, то можно закоментировать все строки с ним.
Прописываем имя этого сервера в /etc/hostname и /etc/hostname:
1 2 3 4 |
vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=hostname |
1 2 3 |
vi /etc/hostname hostname.domain.com |
Не забываем прописывать DNS в /etc/resolv.conf
1 2 3 4 |
vi /etc/resolv.conf nameserver 192.168.1.101 nameserver 192.168.1.102 |
Перезапускаем сетевую подсистему:
1 |
systemctl restart network |
Теперь можно подключиться к серверу по SSH.
Если используется proxy-сервер добавляем его адрес в файл /etc/yum.conf:
1 2 3 4 |
vi /etc/yum.conf proxy=http://10.131.1.1:3128 proxy=https://10.131.1.1:3128 |
Устанавливаем программу для загрузки файлов по сети wget:
1 2 |
yum update # получаем свежий список доступных пакетов в репозитории yum -y install wget |
Добавляем в файл /etc/wgetrc адрес proxy-сервера:
1 2 3 4 |
vi /etc/wgetrc http_proxy=http://10.131.1.1:3128 https_proxy=https://10.131.1.1:3128 |
Так же в Centos 7 по умолчанию включена система принудительного контроля доступа SELinux (англ. Security-Enhanced Linux — Linux с улучшенной безопасностью). Она расширяет стандартные стандартные права доступа. Использовать её или нет зависит от требований к серверу и его назначению. Настройка данной системы представляет собой материал отдельной статьи.
Если же Вам данная система не нужна, отключаем SELinux:
1 2 3 |
vi /etc/sysconfig/selinux SELINUX=disabled |
Подключение EPEL репозитория
EPEL (Extra Packages for Enterprise Linux) — это основанный сообществом открытый и бесплатный проект репозитория, предоставляемый командой Fedora, который содержит высококачественные пакеты дополнительного программного обеспечения для Linux дистрибутивов, включая RHEL (Red Hat Enterprise Linux), CentOS, и Scientific Linux.
1 |
yum -y install epel-release |
или
1 |
rpm -ivh http://fedora.ip-connect.vn.ua/fedora-epel/7/$(arch)/e/epel-release-7-5.noarch.rpm |
Отключаем FireWall
Настройка Firewall это также тема отдельной статьи. Но на некоторых серверах в нем нет надобности и его можно отключить:
1 |
systemctl stop firewalld && systemctl disable firewalld |
Установка и настройка NTPD
Для того, чтобы на сервере всегда было точное время необходимо установить и настроить ntpd.
ntpd (Network Time Protocol daemon) — программа-демон, который устанавливает и обслуживает системное время, используется для синхронизации с другими серверами времени.
1 |
yum -y install ntp |
Устанавливаем таймзону
1 |
timedatectl set-timezone Europe/Kiev |
Далее нужно указать сервера времени с которыми будет синхронизировать время наш сервер. Адреса этих серверов можно найти в интернете, лучше выбирать ближайшие сервера, то есть искать сервера расположенные в вашей стране. Указываем сервера синхронизации в vi /etc/ntp.conf (лучше не меньше трех):
закоментируем:
1 2 3 4 |
server 0.centos.pool.ntp.org iburst server 1.centos.pool.ntp.org iburst server 2.centos.pool.ntp.org iburst server 3.centos.pool.ntp.org iburst |
и добавим:
1 2 3 4 |
server 0.ua.pool.ntp.org server 1.ua.pool.ntp.org server 2.ua.pool.ntp.org server 3.ua.pool.ntp.org |
По умолчанию сервер NTP будет доступен всем хостам в Интернет. Если вы хотите запретить всем машинам обращаться к вашему серверу NTP, добавьте следующую строку:
1 |
restrict default ignore |
Сервера с которыми сверяемся, должны иметь возможность менять наше время:
1 2 3 4 |
restrict 47.187.174.51 noquery notrap restrict 31.28.161.71 noquery notrap restrict 195.191.13.80 noquery notrap restrict 31.28.161.68 noquery notrap |
В restrict лучше указывать ip адрес вместо доменного имени, для избежания ошибок.
Если вы хотите разрешить синхронизировать свои часы с вашим сервером только машинам в вашей сети, но запретить им настраивать сервер или быть равноправными участниками синхронизации времени, то вместо указанной добавьте строчку:
1 |
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap |
Если включен Firewall добавляем ntp в исключения:
1 2 |
firewall-cmd --add-service=ntp --permanent firewall-cmd --reload |
Запускаем:
1 |
systemctl start ntpd |
Добавляем в автозапуск:
1 |
systemctl enable ntpd |
Проверяем:
1 2 |
ntpq -p # список серверов. * - помечен сервер с которым синхронизируемся date -R # выводим текущую дату и время |
Дополнительные полезные утилиты.
Обязателен для установки набор утилит для сборки программ из исходного кода и создания rpm пакетов.
1 |
yum -y groupinstall "Development Tools" |
При минимальной установке в Centos 7 отсутствуют некоторые полезные утилиты для работы с сетью arp, hostname, ifconfig, netstat, rarp, route, plipconfig, slattach, mii-tool, iptunnel и ipmaddr. Чтобы вернуть их необходимо установить набор утилит net-tools.
1 |
yum -y install net-tools |
Официальная страничка проекта net-tools здесь.
Также полезно установить lsof (от англ. LiSt of Open Files) — утилита показывает какие файлы используются теми или иными процессами.
1 |
yum -y install lsof |
Установим Midnight Commander — файловый менеджер для удобного перемещения по файловой системе и управления файлами. Она состоит из 2 панелей (фрэймов), в которых может отображаться информация о двух выбранных каталогах одновременно, содержимое, выбранного в одной из панелей, файла, и многое другое.
1 |
yum -y install mc |
Вот пожалуй и вся универсальная настройка Centos 7 после установки. Далее уже идет настройка сервера под Ваши задачи. Надеюсь информация была полезной.
Дмитрий, добрый день.
Не стоит так сразу рубить network manager, не так он и плох 🙂
Вот пара простых примеров.
Задать адрес ipv4 и маску для сетевой карты eno1
nmcli c modify eno1 ipv4.addresses 10.0.0.30/24
Задаём статичный шлюз для этой сетевой
nmcli c modify eno1 ipv4.gateway 10.0.0.1
Добавляем DNS
nmcli c modify eno1 ipv4.dns 10.0.0.1
Указываем, что эти данные задаются вручную, а не с помощью DHCP (для DHCP вместо manual нужно указать auto, но мы-то уже вручную всё указали)
nmcli c modify eno1 ipv4.method manual
А по поводу настроек CentOS 7 — из моей подписи посмотрите ссылку, вдруг что полезное пригодится. 🙂
Спасибо, учту))