CentOS - это свободный дистрибутив, основанный на исходном коде Red Hat Enterprise Linux, фактически, он создается с этих исходников практически без изменений, разработчики только вырезают весь брендинг Red Hat. Но в отличие от Red Hat, CentOS полностью бесплатна и получает регулярные обновления, спустя немного времени после выхода их для Red Hat поскольку они тоже собираются из исходного кода.
Очень часто CentOS применяется в качестве операционной системы для серверов. В одной из предыдущих статей мы рассматривали как выполняется установка CentOS 7. Сегодня будет рассмотрена настройка сервера CentOS 7 после установки. Мы рассмотрим все основные параметры, которые вам нужно будет изменить чтобы подготовить ваш сервер к работе.
Содержание статьи
Настройка CentOS после установки
Далее, мы рассмотрим все действия, которые необходимо выполнить для полной настройки CentOS на сервере, просто выберите то что вам нужно и примените на своей машине.
1. Настройка статического IP адреса
Первое, что нужно сделать - это настроить сеть. На персональных компьютерах используется получение IP адреса по DHCP, и компьютер при каждом запуске будет иметь другой адрес, сервер должен всегда работать на одном адресе, поэтому мы присваиваем ему статический IP. Также нужно настроить DNS и шлюз по умолчанию. Но сначала установите утилиту net-tools:
yum install net-tools
Сначала посмотрим доступные сетевые интерфейсы и текущий IP адрес:
ip addr show
Теперь можно перейти к настройке интерфейса через файл /etc/sysconfig/network-scripts/ifcfg-enp0s3, например, с помощью редактора vi:
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
После внесения изменений этот файл будет выглядеть вот так:
Затем останется перезагрузить сеть чтобы применить новые настройки:
service network restart
Потом, при необходимости вы можете сменить IP адрес таким же способом.
2. Имя компьютера
Следующее что нам нужно сделать - это изменить имя компьютера. Текущее имя компьютера хранится в переменной HOSTNAME:
echo $HOSTNAME
Чтобы его изменить вам нужно отредактировать файл /etc/hostname и заменить там старое имя на новое.
vi /etc/hostname
Также вы можете использовать команду hostnamectl:
hostnamectl set-hostname "имя_хоста"
3. Обновление CentOS
После установки принято обновлять программное обеспечение до самой новой версии, чтобы установить все обновления безопасности. Для обновления списка пакетов в репозиториях и установки новых версий выполните такую команду:
yum update && yum upgrade
4. Установите браузер
Во многих случаях приходится использовать CentOS из командной строки без графического интерфейса, поэтому может понадобиться браузер, чтобы найти что-либо в интернете или проверить работоспособность сайтов из командной строки. Для установки браузера links наберите:
yum install links
Вы можете найти и другие консольные браузеры для Linux, например, Lynx или Elinks.
5. Настройка часового пояса
Правильная настройка часового пояса очень важна для сервера. Это уберет путаницу в логах и позволит вашим приложениям отображать правильную дату и время. Для настройки используется утилита timedatectl.
Сначала получите список часовых поясов:
timedatectl list-timezones
Затем установите нужный, например, Europe/Kyiv:
timedatectl set-timezone Europe/Kyiv
Затем проверьте:
timedatectl
7. Настройка локали
Локаль определяет язык и кодировку, которая будет использоваться в вашей системе, например, для включения русского языка установите значение ru_RU.UTF-8
localectl set-locale LANG=ru_RU.UTF-8
Затем смотрим что получилось:
localectl
Затем устанавливаем раскладку клавиатуры:
localectl set-keymap us
8. Отключите SELinux
Набор политик SELinux предназначены для контроля доступа к файлам в системе Linux, но если вы не собираетесь их использовать, то такую возможность можно отключить. Для этого выполните:
sed -i 's/(^SELINUX=).*/SELINUX=disabled/' /etc/selinux/config
Затем перезагрузите компьютер и проверьте, действительно ли возможность была отключена:
sestatus
9. Создайте пользователя
Использовать систему от имени суперпользователя небезопасно и тем более небезопасно оставлять открытым доступ к root аккаунту по ssh. Сначала создайте обычного пользователя и установите для него пароль:
useradd имя_пользователя
# passwd пароль
Затем добавьте пользователя в группу wheel, чтобы разрешать пользователю работать от имени администратора:
usermod -G wheel имя_пользователя
Теперь осталось подправить настройки sudo, для этого добавьте такую строчку, если ее там еще нет:
visudo
10. Включите сторонние репозитории
Добавлять сторонние репозитории к производственному серверу - это не очень хорошая идея, и в некоторых случаях может привести к плохим последствиям. Однако иногда могут понадобиться программы, которых в официальных репозиториях нет. Поэтому рассмотрим как добавить несколько репозиториев.
Для добавления репозитория Enterprise Linux Repository (EPEL) выполните:
yum install epel-release
# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
10. Настройка SSH
Чаще всего нам приходится работать с серверами не напрямую, а по сети, через SSH. Обычно служба SSH уже установлена и активирована, но для ее правильной работы нужно выполнить несколько настроек. Сначала нужно настроить использование только безопасного протокола, для этого откройте файл /etc/ssh/ssh_config и удалите строчку Protocol 2,1. А вместо нее добавьте:
Также нужно отключить вход от имени суперпользователя:
11. Установите веб-сервер Apache
Если вы планируете использовать машину в качестве веб-сервера, вам понадобится Apache. С помощью него вы можете размещать веб-сайты, мультимедиа контент, клиентские программы и многое другое. Для установки выполните:
yum install httpd
Когда установка будет завершена, перед тем, как вы сможете перейти к работе нужно разрешить HTTP в брандмауере:
firewall-cmd --add-service=http
# firewall-cmd -permanent -add-port=3221/tcp
# firewall-cmd --reload
Теперь осталось добавить Apache в автозагрузку:
systemctl start httpd.service
# systemctl enable httpd.service
Дальше вы можете проверить его работоспособность с помощью links:
links 127.0.0.1
12. Установите PHP
PHP - это современный язык веб-приложений и скриптов. Он часто используется в качестве языка программирования общего назначения. Для установки выполните:
yum install php
После установки необходимо перезапустить Apache:
systemctl restart httpd.service
Далее создадим тестовый файл со сриптом, чтобы проверить правильность установки:
echo -e "<?php\nphpinfo();\n?>" > /var/www/html/phpinfo.php
Затем откройте созданный файл в браузере:
links http://127.0.0.1/phpinfo.php
13. Установка базы данных
MariaDB - это база данных, основанная на исходном коде MySQL. Дистрибутивы Linux на базе Red Hat используют MariaDB вместо MySQL. Базы данных - незаменимая вещь на сервере, поэтому настройка CentOS после установки должна включать ее установку. Для установки MariaDB наберите:
yum install mariadb-server mariadb
Затем запустите и добавьте в автозагрузку:
systemctl start mariadb.service
# systemctl enable mariadb.service
И разрешите в использование службы в брандмауэре:
firewall-cmd --add-service=mysql
Осталось запустить скрипт настройки:
/usr/bin/mysql_secure_installation
14. Установите GCC
GCC расшифровывается как GNU Compiler Collection, это набор компиляторов, которые считаются стандартом для сборки программ в Linux. Но по умолчанию он не поставляется с CentOS, поэтому для установки наберите:
yum install gcc
Затем вы можете посмотреть версию GCC:
gcc -v
15. Установите Java
Java - это объективно-ориентированный язык программирования общего назначения. Он не устанавливается по умолчанию, поэтому настройка CentOS 7 после установки может включать и его установку. Для этого выполните:
yum install java
Затем проверьте версию:
java
Выводы
В этой статье мы рассмотрели как выполняется настройка сервера CentOS 7 после установки. Как видите, есть много элементарных действий, которые желательно сделать перед тем, как использовать сервер на производстве. Если у вас остались вопросы, спрашивайте в комментариях!
# firewall-cmd -permanent -add-port=3221/tcp
links 127.0.0.1
Что-то у Вас не то по-моему. Открываете порт 3221, а входите по 80 ...
Я уже не говорю о том, что перед permanent и add-port должно быть по 2 тире, а не по одному.
Торопыжничество одним словом.
На мой взгляд статья слабовата. Не тянет это на то, что НУЖНО сделать после установки, далеко не всем это все нужно, а то что нужно, мягко говоря не тянет на ман, а больше на аннотацию к статье.
Вобщем статья просто с кратким набором команд. Были же статьи у вас по каждой из этих тем, нафига эту кашу выложили? Не дай бог кто-то решит еще и настроить свой сервак по этой инструкции, восприняв ее как пошаговую.
Пишите надо ставить ru_RU.UTF-8
А устанавливаете localectl set-locale LANG=en_US.UTF-8
Мне помогло. Но я очень слаб в информатике, уровень 0.1
Да и вообще уч врач, уволенный на пенсию. Хотя мне ещё 65
Но вот с нового года увлёкся. В медицине делать нечего
Она врезалась в какой-то ' tank' и теперь оба восстановлению не подлежат
Главврачи скупают кодексы. Спрашивают у опытных людей, как правильно сидеть.
И сушат сухари. Марк Заславский. Всем респект.
В разделе настроек SSH неверно указали имя конфигурационного файла сервера.. Нужно править /etc/ssh/sshd_config, а указанный в тексте файл /etc/ssh/ssh_config относится к настройкам клиента. Директива "PermitRootLogin" используется только для настроек сервера.
В общем-то статья так себе, в настройке сервера абсолютно не помогла. Слишком много места отводится очевидным настройкам, например, имя хоста, настройка времени, настройка IP адреса, настройка локали, всё это элементарно делается при установке системы. С другой стороны ничего не сказано о настройке Firewall, о SELinux сказано только, как отключить, видно автор не владеет ситуацией по их настройке. Весьма куцее описание настройки SSH, о настройке Samba не сказано ничего, а если это сервер, то её настройка жизненно необходима, как иначе дать доступ к ресурсам сервера для Windows систем, а сети их подавляющее большинство.