...
Утилита sos предназначена для анализа системы операционной системы (ОС) при поступлении запроса в службу технической поддержки. С ее помощью осуществляется сбор диагностической информации, которая помогает инженерам службы технической поддержки определять проблему и исключать повторные запросы данных об ошибках.
Утилита sos позволяет собирать различную отладочную информацию из одной или нескольких системнескольких ОС, при необходимости очищать конфиденциальные данные.
...
Информация, собранная в отчете, содержит сведения о конфигурации, системную информацию и диагностическую информацию из системыОС, такую как:
- запущенная версия ядра;
- загруженные модули ядра;
- конфигурационные файлы системы и служб;
- вывод диагностической команды;
- список установленных пакетов.
...
Утилита сохраняет архив и его контрольную сумму в каталоге /tmp/:
| Блок кода |
|---|
astra@server:~$ ls -l /tmp/sosreport* -rw-r----- 1 root astra-admin 87036 ноя 27 09:27 /tmp/sosreport-server-123-2023-11-27-aywdsnl.tar.xz -rw-r--r-- 1 root root 33 ноя 27 09:27 /tmp/sosreport-server-123-2023-11-27-aywdsnl.tar.xz.md5 |
...
Утилита sos входит в состав ОС Astra Linux Special Edition 1.7 и выше.
Чтобы установить утилиту на другие более ранние версии ОС Astra Linux, требуются права суперпользователя:
...
Выполнить команду:
Блок кода sudo sos report
Следовать инструкциям на экране:
Блок кода sosreport (version 4.0) This command will collect system configuration and diagnostic information from this Debian system. For more information on the Debian project visit: https://www.debian.org/ The generated archive may contain data considered sensitive and its content should be reviewed by the originating organization before being passed to any third party. No changes will be made to system configuration. Нажмите ENTER для продолжения или CTRL-C для выхода.
Имя файла отчета отображается в конце вывода:
Блок кода Finished running plugins Создается архив... Your sosreport has been generated and saved in: /tmp/sosreport-server-123-2023-11-27-ztdyuvc.tar.xz Size 11.14MiB Owner root md5 9713252c24d0ea5f524b119156b6825f Please send this file to your support representative.Информация Чтобы обфусцировать создаваемый sosreport, см. Обфускация отчета.
Убедиться, что создан архив в каталоге
/tmp/, соответствующий описанию из выходных данных команды:Блок кода astra@server:~$ ls -l /tmp/sosreport* -rw-r----- 1 root astra-admin 87036 ноя 27 09:27 /tmp/sosreport-server-123-2023-11-27-aywdsnl.tar.xz -rw-r--r-- 1 root root 33 ноя 27 09:27 /tmp/sosreport-server-123-2023-11-27-aywdsnl.tar.xz.md5
Создание и сбор отчета в нескольких
...
ОС
| Информация |
|---|
Во всех системах ОС должны соблюдаться условия:
|
- Выполнить команду:
Блок кода sos collect
Информация По умолчанию
sos collectпытается определить определяет тип кластера, в котором выполняется, чтобы автоматически идентифицировать узлы, с которых будут собираться отчеты. Любая допустимая опция будет передаваться при выполнении всех отчетов.Опции утилиты
sos:--cluster-typeили--nodes— задать вручную типы кластеров или узлов;--master— указать удаленному узлу определять тип кластера и список узлов (не требуется входить в систему на узлах кластера, чтобы собирать отчетыsos).
- Следовать инструкциям на экране:
Блок кода collapse true astra@pcmk-1:~# sudo sos collect -o process --nodes=pcmk-1,pcmk-2 --ssh-user=astra --password sos-collector (version 4.0) ... Press ENTER to continue, or CTRL-C to quit Please enter the case id you are collecting reports for: test Provide the SSH password for user astra: Cluster type set to Pacemaker High Availability Cluster Manager The following is a list of nodes to collect from: pcmk-1 pcmk-2 Connecting to nodes... Beginning collection of sosreports from 2 nodes, collecting a maximum of 4 concurrently pcmk-1 : Generating sosreport... pcmk-2 : Generating sosreport... pcmk-2 : Retrieving sosreport... pcmk-2 : Successfully collected sosreport pcmk-1 : Retrieving sosreport... pcmk-1 : Successfully collected sosreport The following archive has been created. Please provide it to your support team. /tmp/sos-collector-test-2023-12-02-lnyhg.tar.xz
- Убедиться, что создан архив в каталоге
/tmp/, соответствующий описанию из выходных данных команды:Блок кода astra@pcmk-1:~# sudo ls -l /tmp/sos* -rw------- 1 root root 13109664 дек 2 13:26 /tmp/sos-collector-test-2023-12-02-lnyhg.tar.xz
...
- Выполнить команду:
Блок кода sudo sos report
- Указать парольную фразу с помощью опции
--encrypt-pass. - Следовать инструкциям. Имя файла отчета отображается в конце вывода:
Блок кода collapse true astra@pcmk-1:~$ sudo sos report --encrypt-pass 1234 sosreport (version 4.0) ... Нажмите ENTER для продолжения или CTRL-C для выхода. Please enter the case id that you are generating this report for []: gpg-test Setting up archive ... Setting up plugins ... Running plugins. Please wait ... Finishing plugins [Running: pacemaker] Finished running plugins Создается архив... Your sosreport has been generated and saved in: /tmp/secured-sosreport-pcmk-1-gpg-test-2023-12-02-bluhmko.tar.xz.gpg Size 10.54MiB Owner root md5 005d7b79b61ebcfc0c97707b355306db Please send this file to your support representative. - Убедиться, что создан архив, соответствующий следующим требованиям:
- имя файла начинается с
secured; - имя файла заканчивается на файл имеет расширение
.gpg; - архив находится в каталоге
/tmp/.Блок кода astra@pcmk-1:~$ ls -l /tmp/secured* -rw-r----- 1 root astra-admin 11051437 дек 2 07:26 /tmp/secured-sosreport-pcmk-1-gpg-test-2023-12-02-bluhmko.tar.xz.gpg -rw-r--r-- 1 root root 33 дек 2 07:26 /tmp/secured-sosreport-pcmk-1-gpg-test-2023-12-02-bluhmko.tar.xz.gpg.md5
- имя файла начинается с
- Убедиться, что архив можно расшифровать с помощью парольной фразы, которая использовалась для его шифрования:
Выполнить команду:
Блок кода astra@pcmk-1:~$ sudo gpg --output decrypted-sosreport.tar.gz --decrypt /tmp/secured-sosreport-pcmk-1-gpg-test-2023-12-02-bluhmko.tar.xz.gpg
Ввести кодовую фразупарольную фразу, которая использовалась для шифрования архива:
Блок кода ┌────────────────────────────────────────────────────────┐ │ Введите фразу-пароль │ │ │ │ │ │ Фраза-пароль: ________________________________________ │ │ │ │ <OK> <Отмена (C)> │ └────────────────────────────────────────────────────────┘
Убедиться, что создан незашифрованный архив с расширением
.tar.gz:Блок кода astra@pcmk-1:~$ ls -l decrypted* -rw-r--r-- 1 root root 11025760 дек 2 07:32 decrypted-sosreport.tar.gz
...
Защита отчета с помощью пары ключей из связки ключей GPG подходит для отчетов, хранящихся на сервере.
...
- Создать ключ GPG2 (см. ниже).
Выполнить команду:
Блок кода sudo sos report
Указать имя пользователя, которому принадлежит связка ключей GPG, с помощью опции
--encrypt-key.Следовать инструкциям. Имя файла отчета отображается в конце вывода:
Блок кода collapse true astra@pcmk-1:~$ sudo sos report --encrypt-key 1234 sosreport (version 4.0) ... Нажмите ENTER для продолжения или CTRL-C для выхода. Please enter the case id that you are generating this report for []: gpg-test Setting up archive ... Setting up plugins ... Running plugins. Please wait ... Finishing plugins [Running: pacemaker] Finished running plugins Создается архив... Your sosreport has been generated and saved in: /tmp/secured-sosreport-pcmk-1-gpg-test-2023-12-02-bluhmko.tar.xz.gpg Size 10.54MiB Owner root md5 005d7b79b61ebcfc0c97707b355306db Please send this file to your support representative.- Убедиться, что создан архив, соответствующий следующим требованиям:
- имя файла начинается с
secured. - имя файла заканчивается на файл имеет расширение
.gpg. архив находится в каталоге
/tmp/.Блок кода astra@pcmk-1:~$ ls -l /tmp/secured* -rw-r----- 1 root astra-admin 11051437 дек 2 08:26 /tmp/secured-sosreport-pcmk-1-gpg-test-key-2023-12-02-bluhmko.tar.xz.gpg -rw-r--r-- 1 root root 33 дек 2 08:26 /tmp/secured-sosreport-pcmk-1-gpg-test-key-2023-12-02-bluhmko.tar.xz.gpg.md5
- имя файла начинается с
Убедиться, что архив можно расшифровать с помощью парольной фразы, которая использовалась для его шифрования:
Выполнить команду:
Блок кода astra@pcmk-1:~$ sudo gpg --output decrypted-sosreport-key.tar.gz --decrypt /tmp/secured-sosreport-pcmk-1-gpg-test-key-2023-12-02-bluhmko.tar.xz.gpg
- Ввести кодовую фразу, которая использовалась при создании ключа GPG:
Блок кода ┌───────────────────────────────────────────────────────────────────┐ │ Введите фразу-пароль для разблокировки секретного ключа OpenPGP: │ │ "GPG User (first key) <root@example.com>" │ │ 2048-битный ключ RSA, идентификатор B7354458F02D70D5, │ │ создан 2023-12-02. │ │ │ │ │ │ Фраза-пароль: ___________________________________________________ │ │ │ │ <OK> <Отмена (C)> │ └───────────────────────────────────────────────────────────────────┘
- Убедиться, что создан незашифрованный архив с расширением
.tar.gz:Блок кода astra@pcmk-1:~$ ls -l decrypted* -rw-r--r-- 1 root root 11025760 дек 2 08:32 decrypted-sosreport-key.tar.gz
Создание
...
пары ключей GPG
| Якорь | ||||
|---|---|---|---|---|
|
Создать файл
key-input, используемый для генерации пары ключей GPG с предпочтительными данными. Например:Блок кода collapse true astra@pcmk-1:~$ cat >key-input <<EOF %echo Generating a standard key Key-Type: RSA Key-Length: 2048 Name-Real: GPG User Name-Comment: first key Name-Email: root@example.com Expire-Date: 0 %commit %echo Finished creating standard key EOF
Сгенерировать ключ GPG2 на основе содержимого файла
key-input:Блок кода astra@pcmk-1:~$sudo gpg --batch --gen-key key-input
Ввести кодовую парольную фразу для защиты ключа GPG (доступ к закрытому ключу для расшифровки):
Блок кода ┌────────────────────────────────────────────────────────┐ │ Введите фразу-пароль │ │ для защиты нового ключа │ │ │ │ Фраза-пароль: ________________________________________ │ │ │ │ <OK> <Отмена (C)> │ └────────────────────────────────────────────────────────┘Повторить ввод кодовой парольной фразы:
Блок кода ┌────────────────────────────────────────────────────────┐ │ Повторите фразу-пароль: │ │ │ │ Фраза-пароль: ________________________________________ │ │ │ │ <OK> <Отмена (C)> │ └────────────────────────────────────────────────────────┘Убедиться, что новый ключ GPG успешно создан:
Блок кода gpg: Generating a standard key gpg: /root/.gnupg/trustdb.gpg: создана таблица доверия gpg: ключ B7354458F02D70D5 помечен как абсолютно доверенный gpg: создан каталог '/root/.gnupg/openpgp-revocs.d' gpg: сертификат отзыва записан в '/root/.gnupg/openpgp-revocs.d/0BF533429D80F579827F61CFB7354458F02D70D5.rev'. gpg: Finished creating standard key
Проверить GPG-ключи пользователя
rootна сервере:Блок кода astra@pcmk-1:~$ sudo gpg --list-secret-key /root/.gnupg/pubring.kbx ------------------------ sec rsa2048 2023-12-02 [SCEA] 0BF533429D80F579827F61CFB7354458F02D70D5 uid [ абсолютно ] GPG User (first key) <root@example.com>
...
Режим восстановления позволяет смонтировать целевую системуОС, получив доступ к ее содержимому и запустить команду sos report.
...
- Выполнить шаги из статьи Справочного центра Режимы восстановления.
- Перейти в псевдотерминал.
- Активировать консоль, нажав клавишу <Enter>.
Выполнить команду
chroot /targetдля получения доступа к корневому разделу:Блок кода Please press Enter to activate this console. BusyBox vl.30.1 (Debian 1:1.30.1—4+ci202301251328+astra2) built—in shell (ash) Enter 'help' for a list of built—in commands. ~ # chroot /target sh-5.0# _
Выполнить команду:
Блок кода sos report
Следовать инструкциям для продолжения на экране:
Блок кода collapse true sh-5.0# sos report sosreport (version 4.0) This command will collect system configuration and diagnostic information from this Debian system. For more information on the Debian project visit: https://www.debian.org/ The generated archive may contain data considered sensitive and its content should be reviewed by the originating organization before being passed to any third party. No changes will be made to system configuration. Нажмите ENTER для продолжения или CTRL-C для выхода.
Имя файла отчета отображается в конце вывода:
Блок кода collapse true Finishing plugins [Running: systemd] Finished running plugins Создается архив... Your sosreport has been generated and saved in: /tmp/sosreport-astra-rescue-mod-test-2023-12-06-bfbowtj.tar.xz Size 10.43MiB Owner root md5 ddd7de0e428d7e4c7dc5caf36555b714 Please send this file to your support representative. sh-5.0#
Убедиться, что создан архив в каталоге каталоге /
tmp/:Блок кода sh-5.0# ls -l /tmp/sosreport* -rw-r----- 1 root astra-admin 10939108 дек 6 09:34 /tmp/sosreport-astra-rescue-mod-test-2023-12-06-bfbowtj.tar.xz -rw-r--r-- 1 root root 33 дек 6 09:34 /tmp/sosreport-astra-rescue-mod-test-2023-12-06-bfbowtj.tar.xz.md5 sh-5.0#
Скопировать диагностический архив на удаленное или USB-устройство:
- по сети:
- Проверить статус сетевого интерфейса:
Пример вывода команды:Блок кода ip a
Блок кода sh—5.0# ip a 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enpls0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 52:51:00:2f:7f:7c brd ff:ff:ff:ff:ff:ff sh—5.0# _
- Если состояние интерфейса DOWN, выполнить команду:
гдеБлок кода ip link set enp1s0 up
enp1s0— имя необходимого интерфейса. - Назначить IP-адрес интерфейсу:
- DHCP -сервер работает:
Блок кода dhclient
- DHCP-сервер отсутствует:
гдеБлок кода ip addr add 192.168.0.123/255.255.255.0 dev enp1s0
192.168.0.123— IP-адрес устройства;255.255.255.0— маска подсети,enp1s0— имя необходимого интерфейса.Пример настроенного интерфейса
enp1s0:Блок кода 1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enpls0: <BROADCAST,MULTICAST,UP.LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1 000 link/ether 52:51:00:2f:7f:7c brd ff:ff:ff:ff:ff:ff inet 192.168.0.123/21 scope global enpls0 valid_lft forever preferred_lft forever inet6 fe80::5054:ff:fe2f:7f7c/64 scope link valid_lft forever preferred_lft forever
- DHCP -сервер работает:
- Cкопировать диагностический архив на удаленное устройство:
гдеБлок кода scp /tmp/sosreport* test@192.168.0.100:/tmp
- test — имя пользователя для SSH-подключения;
- 192.168.0.100 — IP-адрес удаленного устройства;
/tmp— каталог на удаленном устройстве.Примечание Для подключения на удаленном устройстве должен быть настроен SSH-сервер (см. статью Справочного центра SSH).
- Проверить статус сетевого интерфейса:
- через с помощью USB-устройствоустройства:
- Подключить USB-устройство.
- Выполнить поиск USB-устройства. Например:
Блок кода sh—5.0# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPRINT sda 8:0 0 953.9G 0 disk '—sda1 8:1 0 953.9G 0 part sr0 11:0 1 1.2G 0 rom vda 252:0 0 29.3G 0 disk '—vda1 252:1 0 29.3G 0 part / sh—5.0# _
- Смонтировать раздел USB-устройства в каталог:
гдеБлок кода mount /dev/sda1 /media
/dev/sda1— раздел USB-устройства;/media— точка монтирования.
- Скопировать диагностический архив на USB-устройство:
Блок кода cp /tmp/sosreport* /media
- по сети:
- Выполнить шаги из статьи Справочного центра Режимы восстановления.
- Завершить работу с псевдотерминалом.
...
- Выполнить команду (для архива, созданного
sos reportилиsos collect):Блок кода sudo sos clean
- Следовать инструкциям на экране. Чтобы дополнительно заменить базовый список ключевых слов, добавить опцию
--keywords:Блок кода collapse true astra@pcmk-1:~#sudo sos clean /tmp/sos-collector-test-2023-12-02-lnyhg.tar.xz sos clean (version 4.0) ... Press ENTER to continue, or CTRL-C to quit. Found 3 total reports to obfuscate, processing up to 4 concurrently sosreport-pcmk-2-test-2023-12-02-qkjsswr : Extracting... sosreport-pcmk-1-test-2023-12-02-xjjpysa : Extracting... sos-collector-test-2023-12-02-lnyhg : Beginning obfuscation... sos-collector-test-2023-12-02-lnyhg : Obfuscation completed sosreport-pcmk-2-test-2023-12-02-qkjsswr : Beginning obfuscation... sosreport-pcmk-1-test-2023-12-02-xjjpysa : Beginning obfuscation... sosreport-pcmk-1-test-2023-12-02-xjjpysa : Re-compressing... sosreport-pcmk-2-test-2023-12-02-qkjsswr : Re-compressing... sosreport-pcmk-2-test-2023-12-02-qkjsswr : Obfuscation completed sosreport-pcmk-1-test-2023-12-02-xjjpysa : Obfuscation completed Successfully obfuscated 3 report(s) A mapping of obfuscated elements is available at /tmp/sos-collector-test-2023-12-02-lnyhg-private_map The obfuscated archive is available at /tmp/sos-collector-test-2023-12-02-lnyhg-obfuscated.tar.xz Size 12.52MiB Owner root Please send the obfuscated archive to your support representative and keep the mapping file private
- Убедиться, что создан архив со скрытыми данными в каталоге
/tmp/, соответствующий описанию из выходных данных команды:Блок кода astra@pcmk-1:~# ls -l /tmp/sos-collector-test-2023-12-02-lnyhg* -rw------- 1 root root 13130372 дек 2 13:50 /tmp/sos-collector-test-2023-12-02-lnyhg-obfuscated.tar.xz -rw------- 1 root root 1253 дек 2 13:50 /tmp/sos-collector-test-2023-12-02-lnyhg-obfuscation.log -rw------- 1 root root 2198 дек 2 13:50 /tmp/sos-collector-test-2023-12-02-lnyhg-private_map -rw------- 1 root root 13109664 дек 2 13:26 /tmp/sos-collector-test-2023-12-02-lnyhg.tar.xz
- Проверить файл
*-private_mapна предмет отображения карты соотношения реальных данных к обфусцированнымобфускации данных:Блок кода collapse true { "hostname_map": { "pcmk-2": "host0", "pcmk-1": "host1" }, "ip_map": { "10.10.10.0/24": "100.0.0.0/24", ... }, "mac_map": { "52:54:00:cb:d0:d9": "53:4f:53:b7:47:88", ... "1b36:0100:1af4:1100": "534f:53ff:fe5f:c599" }, "keyword_map": {} }