Настройка сети#
- Настройте IP-адрес.
Выполните команду ip, чтобы настроить адрес для интерфейса. interface-name обозначает имя сетевой карты.
ip addr [ add | del ] address dev interface-name
- Настройте статический IP-адрес.
# Настройте IP-адрес.
ip address add 192.168.0.10/24 dev enp3s0
# Выполните следующую команду от имени пользователя root, чтобы запросить результат конфигурации:
ip addr show dev enp3s0
# Результат выглядит следующим образом.
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:aa:ad:4a brd ff:ff:ff:ff:ff:ff
inet 192.168.202.248/16 brd 192.168.255.255 scope global dynamic noprefixroute enp3s0
valid_lft 9547sec preferred_lft 9547sec
inet 192.168.0.10/24 scope global enp3s0
valid_lft forever preferred_lft forever
inet6 fe80::32e8:cc22:9db2:f4d4/64 scope link noprefixroute
valid_lft forever preferred_lft forever
- Настройте статический маршрут.
Выполните команду ip route add, чтобы добавить статический маршрут в таблицу маршрутизации, и выполните команду ip route del, чтобы удалить статический маршрут. Общий формат команды ip route имеет следующий вид:
ip route [ add | del | change | append | replace ] destination-address
- Чтобы добавить статический маршрут к адресу хоста, выполните следующую команду от имени пользователя root:
ip route add 192.168.2.1 via 10.0.0.1 [dev interface-name]
- Чтобы добавить статический маршрут в сеть, выполните следующую команду от имени пользователя root:
ip route add 192.168.2.0/24 via 10.0.0.1 [dev interface-name]
- Настройте сеть с помощью файла ifcfg.
Измените файл ifcfg-enp4s0, созданный в каталоге /etc/sysconfig/network-scripts/, от имени пользователя root. Ниже приведен пример.
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.0.10
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp4s0static
UUID=xx
DEVICE=enp4s0
ONBOOT=yes
Управление пакетами RPM#
Полное название инструмента RPM — Red Hat Package Manager, и он предназначен для управления программными пакетами Red Hat. Он используется в ведущих дистрибутивах, таких как openEuler, Fedora, Red Hat, Mandriva, SUSE и YellowDog, а также в дистрибутивах, разработанных на основе этих дистрибутивов.
RPM устанавливает необходимое программное обеспечение в набор программ управления на хосте Linux в режиме записи базы данных. Программное обеспечение, которое необходимо установить, компилируется и упаковывается, а запись базы данных по умолчанию в упакованном программном обеспечении фиксирует зависимости, необходимые для установки программного обеспечения. Когда пользователь устанавливает программное обеспечение на хост Linux, RPM проверяет, соответствуют ли зависимости на этом хосте требованиям, зависящим от записанных в него данных.
- Если это так, установите программное обеспечение.
- Если это не так, не устанавливайте программное обеспечение. Во время установки вся информация о программном обеспечении записывается в базу данных RPM для последующих запросов, проверки и удаления.
- Путь установки пакетов RPM по умолчанию
Как правило, RPM использует путь установки по умолчанию. (Путь установки по умолчанию можно запросить, выполнив команду, и он будет подробно описан в следующих разделах.) Все установочные файлы распределяются по типам в каталоги, перечисленные в следующей таблице.
Таблица 1. Пути установки RPM и их значение
Путь установки | Описание |
---|---|
/etc/ | Каталог установки файла конфигурации |
/usr/bin/ | Каталог установки исполняемых команд |
/usr/lib/ | Путь для хранения библиотеки функций, используемой программой |
/usr/share/doc | Расположение для хранения основного руководства пользователя программного обеспечения |
/usr/share/man/ | Путь для хранения файла справки |
Примечание. Вы можете вручную указать путь установки RPM, но этот способ использовать не рекомендуется. После указания пути установки вручную все установочные файлы устанавливаются по указанному пути, а команду запроса пути установки в системе использовать нельзя. Эта команда может быть идентифицирована системой только после ручной настройки.
- Параметры команды rpm
Проверка подписи RPM программного пакета
Перед установкой пакета RPM на хосте Linux проверьте подпись PGP. Убедившись в целостности подписи и правильности ее источника, выполните команду rpm –checksig, чтобы проверить достоверность:
rpm --checksig nano-2.3.1-10.el7.x86_64.rpm
Установка пакетов RPM
Чтобы установить пакеты RPM в Linux, используйте параметр -i в команде rpm.
rpm -ivh nano-2.3.1-10.el7.x86_64.rpm
- -i: устанавливает программный пакет.
- -v: отображает подробную информацию.
- -h: выводит список флагов во время установки пакета.
Запрос установленного пакета RPM
Чтобы запросить пакет RPM (dnf), установленный в системе Linux, используйте параметр -q в команде rpm.
rpm -q dnf
- -q: операция запроса.
Если указанный пакет не установлен, отображается следующее сообщение об ошибке:
Запрос всех установленных пакетов RPM
Чтобы запросить все пакеты RPM, установленные в Linux, используйте параметр -qa в команде rpm.
Примечание. При использовании параметра -qa сочетайте его с символом вертикальной черты (|), чтобы повысить точность поиска.
Запрос сведений об установленном пакете RPM
Используйте параметр -qi в команде rpm, чтобы запросить сведения об установленном в системе пакете RPM.
Запрос всех файлов в пакете RPM
Чтобы запросить список файлов пакета RPM, используйте параметр -qlp в команде rpm.
Запрос зависимостей пакета RPM
Чтобы запросить список пакетов зависимостей, скомпилированных указанным пакетом RPM, используйте параметр -qRp в команде rpm.
Проверка всех установленных пакетов RPM
Для проверки установленного пакета RPM используйте параметр -Va в команде rpm, чтобы сравнить информацию о файлах, установленных в пакете, с информацией о файлах, полученной из метаданных пакета, хранящихся в базе данных RPM.
Таблица 2. Поля вывода команды rpm -Va и их значение
||Поле|Описание| |–|–| |S|Меняется длина файла.| |M|Меняется разрешение на доступ или тип файла.| |5|Меняется контрольная сумма MD5.| |D|Меняются атрибуты узла устройства.| |L|Меняется символическая ссылка файла.| |U|Меняется владелец файла, подкаталога или узла устройства.| |G|Меняется группа файла, подкаталога или узла устройства.| |T|Меняется время последнего изменения файла.|
Запрос пакета RPM определенного файла
Чтобы запросить пакет RPM, предоставляющего определенный двоичный файл в Linux, используйте параметр -qf в команде rpm.
Запрос файлов в установленном пакете RPM
Чтобы запросить список установочных файлов пакета RPM, используйте параметр -ql в команде rpm.
Запрос недавно установленных пакетов RPM
Linux — это многопользовательская ОС. Во время работы с Linux другие пользователи могли установить некоторые программные пакеты. Чтобы запросить недавно установленные пакеты в системе, используйте параметры -qa –last в команде rpm.
Запрос только документов установленных пакетов RPM
Вы можете получить справочную информацию по любой команде на странице руководства по Linux (путь для хранения документов /usr/share/doc/Package_Name-Version_Number/docs*). Чтобы запросить список документов, связанных с установленными пакетами RPM, используйте параметр -qdf в команде rpm и введите путь к двоичному файлу.
Обновление установленного пакета RPM
Вы можете легко обновить установленный пакет RPM до последней версии, используя параметр -Uvh в команде rpm.
Примечание. При обновлении установленного пакета RPM старый пакет RPM удаляется, и устанавливается новый пакет RPM.
Удаление установленного пакета RPM
Чтобы удалить установленный в системе пакет RPM, используйте параметр -ev или -e в команде rpm.
rpm -ev pkgship
Восстановление поврежденной базы данных RPM
При попытке обновить систему с помощью команды yum update может появиться сообщение об ошибке, указывающее, что база данных RPM повреждена. Если вы получили такое сообщение, используйте параметр –rebuilddb в команде rmp, чтобы перестроить базу данных.
rm /var/lib/rpm/__db*
rpm --rebuilddb
Проверка исправления уязвимостей в конкретных пакетах
Вы можете использовать параметр –changelog в команде rpm и ввести соответствующий идентификатор CVE.
rpm -q --changelog python-2.6.6 | grep -i "CVE-2019-9636"
Импорт ключа GPG RPM
По умолчанию при добавлении в систему Linux нового репозитория ключ GPG импортируется автоматически. Вы также можете использовать параметр –import в команде rpm, чтобы вручную импортировать ключ GPG RPM для проверки целостности пакета при загрузке его из репозитория.
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-OpenEuler-22.03-LTS
3. dnf commands
Таблица 3. Команды dnf
Команда | Описание |
---|---|
repolist | Отображает настроенный источник репозитория программного обеспечения. |
install | Устанавливает один или несколько программных пакетов в Linux. |
upgrade | Обновляет один или несколько программных пакетов в Linux. |
list | Выводит один программный пакет или группу программных пакетов. |
info | Отображает подробную информацию о пакете или группе пакетов. |
updateinfo | Отображает сводную информацию о пакете. |
search | Выполняет поиск указанной строки символов в сведениях о программном пакете. |
check-update | Проверяет наличие обновлений программного пакета. |
remove | Удаляет один или несколько программных пакетов из системы. |
reinstall | Переустанавливает пакет. |
downgrade | Понижает версию программного пакета. |
autoremove | Удаляет все ненужные программные пакеты, установленные из-за отношений зависимости. |
distro-sync | Синхронизирует установленный программный пакет с последней доступной версией. |
makecache | Создает кэш метаданных. |
repository-package | Выполняет команды для всех программных пакетов в указанном репозитории. |
provides | Выполняет поиск программного пакета, предоставляющего указанное содержимое. |
group | Отображает или использует информацию о группе. |
history | Отображает или использует историю транзакций. |
clean | Удаляет кэшированные данные. |
Отображение настроенных репозиториев программного обеспечения
По умолчанию добавлен параметр –enabled для отображения включенных репозиториев программного обеспечения.
- –all: отображает все репозитории программного обеспечения.
- –disabled: отображает отключенные репозитории программного обеспечения.
- –enabled: отображает включенные репозитории (используется по умолчанию).
Установка одного или нескольких программных пакетов
Вы можете выполнить команду install, чтобы установить пакеты RPM.
Во время установки программного пакета могут присутствовать конфликтующие пакеты или пакеты, которые невозможно установить. Вы можете добавить к команде параметр –allowerasing, чтобы заменить конфликтующие пакеты, или параметр –skip-broken, чтобы пропустить пакеты, которые невозможно установить.
При использовании dnf для установки программного пакета, добавьте параметр –installroot, чтобы задать корневой каталог для установки программного пакета.
Если вам нужно временно указать источник репозитория для установки, можно добавить параметр –setopt=reposdir=, чтобы указать каталог загрузки источника репозитория.
Если во время установки интерактивное подтверждение не требуется, можно добавить параметр -y или –assumeyes, чтобы все устанавливаемые программные пакеты автоматически отвечали Да.
Чтобы установить пакет RPM, указав конкретный источник репозитория, можно использовать параметр –repo или –enablerepo. Для возврата в исходное состояние можно также использовать параметр –disablerepo, чтобы отключить соответствующий источник репозитория. Рекомендуется использовать параметр –repo для установки пакета RPM.
Переустановка программного пакета
Вы можете выполнить команду reinstall, чтобы переустановить программный пакет в системе.
Обновление одного или нескольких программных пакетов
- Вы можете использовать команду upgrade для обновления одного или нескольких программных пакетов в Linux.
- Кроме того, вы можете выполнить команду update, чтобы обновить один или несколько программных пакетов.
Понижение версии программного пакета
Если возникает проблема совместимости из-за слишком поздней версии программного пакета, можно понизить версию этого пакета.
Вывод одного программного пакета или группы программных пакетов
Вы можете выполнить команду list, чтобы просмотреть программные пакеты, установленные в системе, и программные пакеты в настроенном репозитории.
Можно добавить параметры для фильтрации отображаемого списка пакетов.
- –all: отображает все программные пакеты (используется по умолчанию).
- – available: отображает только доступные программные пакеты.
- –installed: отображает только установленные программные пакеты.
- –extras: отображает только дополнительные программные пакеты.
- –updates: отображает только программные пакеты, которые необходимо обновить.
- --upgrades: отображает только программные пакеты, подлежащие обновлению.
- –autoremove: отображает только программные пакеты, которые необходимо удалить.
- –recent: отображает недавно измененные программные пакеты.
Запрос сведений о программном пакете
Вы можете выполнить команду info, чтобы запросить информацию о программном пакете.
Поиск программного пакета
Если вам нужно установить программный пакет в системе, но вы не помните его полное имя, можно выполнить команду search для поиска соответствующего пакета.
Удаление одного или нескольких программных пакетов
Вы можете выполнить команду remove, чтобы удалить просроченный или повторяющийся пакет программного обеспечения.
- –duplicates: удаляет установленные (дублирующиеся) программные пакеты.
- –oldinstallonly: удаляет программные пакеты категории installonly, у которых истек срок действия.
Автоматическое удаление программных пакетов, установленных из-за отношений зависимости
Вы можете выполнить команду autoremove, чтобы удалить ненужные программные пакеты, установленные из-за отношений зависимости.
Настройка SSH#
- Знакомство с сервисом SSH
Secure Shell (SSH) — это надежный протокол, обеспечивающий безопасность сеансов удаленного входа в систему и других сетевых сервисов. Протокол SSH способен эффективно предотвращать утечку информации во время удаленного управления. SSH шифрует передаваемые данные, чтобы предотвратить спуфинг сервера доменных имен (DNS) и IP-спуфинг. OpenSSH создавался в качестве альтернативы проприетарному протоколу SSH, основанной на открытом коде.
- Настройка сервиса SSH
# Open and modify the **/etc/ssh/sshd_config** file.
vi /etc/ssh/sshd_config
# Restart the SSH service.
systemctl restart sshd
# Check the SSH service status.
systemctl status sshd
- Main options in the SSH service configuration file
# Specify the SSH protocol version.
Protocol 2
# Allowed users
AllowUsers xxx
# Denied users
DenyUser root
# Configure session timeout.
ClientAliveInterval 120
# Disable SSH root login.
PermitRootLogin no
# Configure or change the SSH port number.
Port 1234
# Disable SSH password authentication.
PasswordAuthentication no