В этой статье мы проведем вас через первые основные шаги, которые вам нужно будет выполнить после установки минимального CentOS / RHEL 8 сервер без графической среды, чтобы получить информацию об установленной системе, об оборудовании, на котором установлен сервер. запуск и настройка других конкретных системных задач, таких как обновление системы, работа в сети, привилегии root, настройка ssh, управление службами и другие.
Важный: У вас должен быть Служба подписки Red Hat включен на вашем RHEL 8 сервер для обновления системы и установки программного обеспечения.
Сначала войдите на свой сервер как пользователь root и выполните следующие команды, чтобы полностью обновить систему до последней версии ядра, исправлений безопасности системы, репозиториев программного обеспечения и пакетов.
# dnf check-update. # обновление dnf.
После завершения процесса обновления программного обеспечения, чтобы освободить место на диске, вы можете удалить все загруженные пакеты программного обеспечения со всей информацией кэшированных репозиториев, выполнив следующую команду.
# dnf очистить все.
Следующие ниже системные утилиты могут быть очень полезны для повседневных задач системного администрирования: нано, редактор vim, wget & завиток (утилиты, используемые в основном для загрузки пакетов по сети) сетевые инструменты (утилиты для управления локальной сетью) lsof (полезно для поиска списка открытых файлов по процессам) и завершение bash (автозаполнение командной строки).
# dnf install nano vim wget curl net-tools lsof bash-Completion.
В CentOS / RHEL 8, в репозитории включен широкий спектр инструментов, которые используются для настройки и управления сетью, от ручного изменения файла конфигурации сети до использования таких команд, как ifconfig, ip, nmcli и nmtui.
Самая простая утилита, которую новичок может использовать для настройки и управления сетевыми конфигурациями, такими как установка имени сетевого хоста и настройка статического IP-адреса, - это использование nmtui графическая утилита командной строки.
Чтобы установить или изменить имя хоста системы, выполните следующие действия: nmtui-hostname, которая предложит вам ввести имя хоста вашего компьютера и нажать OK для завершения, как показано на снимке экрана ниже.
# nmtui-hostname.
Чтобы настроить сетевой интерфейс, запустите следующее nmtui-edit, которая предложит вам выбрать интерфейс, который вы хотите настроить, из меню, как показано на снимке экрана ниже.
# nmtui-edit.
Как только вы нажмете на Редактировать, вам будет предложено настроить IP-параметры сетевого интерфейса, как показано на снимке экрана ниже. Когда вы закончите, перейдите к хорошо с использованием [tab]
ключ для сохранения конфигурации и выхода.
После того, как вы закончите настройку сети, вам нужно выполнить следующую команду, чтобы применить новые сетевые настройки, выбрав интерфейс, которым вы хотите управлять, и нажмите Деактивировать / Активировать возможность вывода из эксплуатации и вызова интерфейса с настройками IP, как показано на скриншоте ниже.
# nmtui-connect.
Чтобы проверить параметры конфигурации сети, вы можете проверить содержимое файла интерфейса или выполнить следующие команды.
# ifconfig enp0s3. # ip a. # ping -c2 google.com.
Вы также можете использовать другие полезные сетевые утилиты, такие как эттоол и mii-инструмент для проверки скорости сетевого интерфейса, статуса сетевого соединения и получения информации о сетевых интерфейсах машины.
# ethtool enp0s3. # mii-tool enp0s3.
Важный аспект вашей машинной сети, важно перечислить все открытые сетевые сокеты чтобы проверить, что сервисы слушают какие порты и каков статус установленных сетевых подключений и перечислить все файлы, которые открываются процессами.
# netstat -tulpn. # ss -tulpn. # lsof -i4 -6.
Всегда желательно иметь обычного пользователя с правами root для выполнения административных задач, когда это необходимо. Чтобы назначить привилегии root для обычного пользователя, сначала создайте пользователя с команда useradd, установите пароль и добавьте пользователя в группу административного колеса.
# useradd ravisaive. # пароль ravisaive. # usermod -aG wheel ravisaive.
Чтобы убедиться, что новый пользователь имеет права root, войдите в систему с учетными данными пользователя и запустите команда dnf с разрешениями Sudo, как показано.
# су - рависайв. # sudo dnf update.
Чтобы повысить безопасность вашего сервера, настройте SSH-аутентификацию без пароля для вашего нового пользователя, сгенерировав пару ключей SSH, которые содержат общественный и закрытый ключ, но вам нужно его создать. Это повысит безопасность вашего сервера, так как для подключения к системе потребуется закрытый SSH-ключ.
# су - рависайв. $ ssh-keygen -t RSA.
Как только ключ будет сгенерирован, он попросит вас ввести парольную фразу, чтобы защитить закрытый ключ. Вы можете ввести надежную парольную фразу или оставить ее пустой, если вы хотите автоматизировать административные задачи через SSH-сервер.
После того, как ключ SSH был сгенерирован, вам необходимо скопировать сгенерированную пару открытых ключей на удаленный сервер, запустив команду ssh-copy-id с именем пользователя и IP-адресом удаленного сервера, как показано.
$ ssh-copy-id [электронная почта защищена]
После копирования ключа SSH вы можете попытаться войти на удаленный сервер Linux, используя закрытый ключ в качестве метода аутентификации. Вы должны иметь возможность автоматически входить в систему без запроса пароля SSH-сервером.
$ [электронная почта защищена]
Здесь мы немного обезопасим наш сервер, отключив удаленный доступ SSH к учетной записи root в файле конфигурации SSH.
# vi / etc / ssh / sshd_config.
Найдите строку, в которой говорится #PermitRootLogin да
, раскомментируйте строку, удалив #
от начала строки и измените строку на.
PermitRootLogin нет.
После этого перезапустите сервер SSH, чтобы применить последние изменения.
# systemctl перезапуск sshd.
Теперь проверьте конфигурацию, попытавшись войти в систему с учетной записью root, вы получите ошибку доступа SSH Permission Denied, как показано.
# ssh [электронная почта защищена]
Есть сценарии, в которых вы можете захотеть отключить все удаленные SSH-соединения автоматически на ваш сервер после определенного периода бездействия.
В CentOS / RHEL 8, брандмауэр по умолчанию Firewalld, который используется для управления iptables правила на сервере. Чтобы включить и запустить Firewalld service на сервере, выполните следующие команды.
# systemctl включить firewalld. # systemctl запустить firewalld. # systemctl status firewalld.
Чтобы открыть входящее соединение с определенной службой (SSH), сначала нужно убедиться, что сервис присутствует в Firewalld rules, а затем добавьте правило для службы, добавив --постоянный
переключитесь на команды, как показано.
# firewall-cmd --add-service = [tab] # Список служб. # firewall-cmd --add-service = ssh. # firewall-cmd --add-service = ssh --permanent.
Если вы хотите открыть входящие соединения с другими сетевыми службами, такими как HTTP или SMTP, просто добавьте правила, как показано, указав имя службы.
# firewall-cmd --permanent --add-service = http. # firewall-cmd --permanent --add-service = https. # firewall-cmd --permanent --add-service = smtp.
Чтобы просмотреть все правила брандмауэра на сервере, выполните следующую команду.
# firewall-cmd --permanent --list-all.
Настоятельно рекомендуется после установки свежей CentOS / RHEL 8 server, вам необходимо удалить и отключить нежелательные службы, работающие по умолчанию на сервере, чтобы уменьшить атаки на сервер.
Чтобы перечислить все запущенные сетевые службы, включая TCP и UDP на сервере запустите команда ss или команда netstat как показано в приведенном ниже примере.
# ss -tulpn. ИЛИ. # netstat -tulpn.
В приведенных выше командах будут перечислены некоторые интересные службы, которые по умолчанию запущены на сервере, например, Постфикс почтовый сервер. Если вы не планируете размещать почтовую систему на сервере, вы должны остановить ее и удалить из системы, как показано.
# systemctl остановить постфикс. # systemctl отключить постфикс. # dnf удалить постфикс.
Кроме того команда ss и команда netstat, вы также можете запустить пс, вершина или pstree команды для обнаружения и идентификации всех нежелательных служб и удаления их из системы.
# dnf install psmisc. # pstree -p.
В CentOS / RHEL 8, все службы и демоны управляются через команда systemctl, и вы можете использовать эту команду для вывода списка всех активных, запущенных, завершенных или отказавших служб.
# systemctl list-units.
Чтобы проверить, включается ли демон или служба автоматически во время запуска системы, введите следующую команду.
# systemctl list-unit-files -t service.
Чтобы узнать больше о команда systemctlпрочтите нашу статью, в которой объясняется - Как управлять службами с помощью Systemctl в Linux.
Вот и все! В этой статье мы объяснили несколько основных настроек и команд, которые каждый системный администратор Linux должен знать и применять на недавно установленной системе. CentOS / RHEL 8 системе или для выполнения повседневных задач в системе.