Важно! Если УЦ расположен на нескольких машинах (например ЦР+ЦС) то диагностику необходимо собрать в полном объеме с каждой машины!
0.Получение списка запущенных процессов и открытых портов
sudo ps -eF | grep -e CryptoPro -e nginx -e nats -e cpro -e postgres
sudo netstat -tulpn
Скриншот с результатом выполнения необходимо будет прикрепить к заявке на ТП.
1. Сбор конфиг файлов(CA +NGINX):
#Выполнять в bash, под тем пользователем, который имеет права на доступ в директорию с УЦ #Путь к файлам УЦ задается в переменной dir, если у Вас файлы УЦ расположенные в директории отличной от директории/opt/cpca то значение данной переменной необходимо будет перезадать
dir=/opt/cpca mkdir /tmp/uc_config if [ -f "$dir/CryptoPro.Ca.Service/appsettings.json" ]; then echo "File Ca.Service/appsettings.json found" ; cp "$dir/CryptoPro.Ca.Service/appsettings.json" /tmp/uc_config/CryptoPro.Ca.Service_appsettings.json ; fi if [ -f "$dir/CryptoPro.CertRegistry.Service/appsettings.json" ]; then echo "File CertRegistry.Service/appsettings.json found" ; cp "$dir/CryptoPro.CertRegistry.Service/appsettings.json" /tmp/uc_config/CertRegistry.Service_appsettings.json ; fi if [ -f "$dir/CryptoPro.CertRegistry.Web/appsettings.json" ]; then echo "File CryptoPro.CertRegistry.Web/appsettings.json found" ; cp "$dir/CryptoPro.CertRegistry.Web/appsettings.json" /tmp/uc_config/CryptoPro.CertRegistry.Web_appsettings.json ; fi if [ -f "$dir/CryptoPro.Ra.Service/appsettings.json" ]; then echo "File CryptoPro.Ra.Service/appsettings.json found" ; cp "$dir/CryptoPro.Ra.Service/appsettings.json" /tmp/uc_config/CryptoPro.Ra.Service_appsettings.json ; fi if [ -f "$dir/CryptoPro.Ra.Web/appsettings.json" ]; then echo "File CryptoPro.Ra.Web/appsettings.json found" ; cp "$dir/CryptoPro.Ra.Web/appsettings.json" /tmp/uc_config/CryptoPro.Ra.Web_appsettings.json ; fi if [ -f "$dir/CryptoPro.Ra.Web.Ui/init.json" ]; then echo "File $dir/CryptoPro.Ra.Web.Ui/init.json found" ; cp "$dir/CryptoPro.Ra.Web.Ui/init.json" /tmp/uc_config/CryptoPro.Ra.Web.Ui_init.json ; fi if [ -f "$dir/nats-streaming/nats.conf" ]; then echo "File nats-streaming/nats.conf found" ; cp "$dir/nats-streaming/nats.conf" /tmp/uc_config/nats.conf ; fi if [ -f "$dir/nats-streaming/nats.no-tls.conf" ]; then echo "File nats-streaming/nats.no-tls.conf found" ; cp "$dir/nats-streaming/nats.no-tls.conf" /tmp/uc_config/nats.no-tls.conf ; fi if [ -f "$dir/pkica/appsettings.json" ]; then echo "File pkica/appsettings.json found" ; cp "$dir/pkica/appsettings.json" /tmp/uc_config/pkica_appsettings.json ; fi if [ -f "/etc/nginx/nginx.conf" ]; then echo "File nginx.conf found" ; cp "/etc/nginx/nginx.conf" /tmp/uc_config/nginx ; fi if [ -f "/var/log/nginx/error.log" ]; then echo "/var/log/nginx/error.log found" ; cp "/var/log/nginx/error.log" /tmp/uc_config/nginx_error.log ; fi if [ -f "/var/log/nginx/error.log" ]; then echo "/var/log/nginx/access.log found" ; cp "/var/log/nginx/access.log" /tmp/uc_config/nginx_access.log ; fi tar -cvf /tmp/uc_config.gz /tmp/uc_config/ |
#результатом будет архив uc_config.gz который необходимо будет прикрепить к заявке на ТП.
2. Сбор информации о сертификатах
#Чтобы получить информацию о сертификатах, установленных в хранилище пользователя необходимо: #Важо выполнять команду от имени того пользователя, которому принадлежат права на диреторию УЦ, и из под которого запускаются демоны.
/opt/cprocsp/bin/amd64/certmgr -list -store uMy -verbose -chain > /tmp/cert_user_ca.txt |
#То-же самое для пользователя nginx(или пользователя из под которого запускается nginx)
sudo -u nginx /opt/cprocsp/bin/amd64/certmgr -list -store uMy -verbose -chain > /tmp/cert_nginx.txt |
Результатом будут файлы /tmp/cert_user_ca.txt и /tmp/cert_nginx.txt которые необходимо будет прикрепить к заявке на ТП.
3. Сбор логов УЦ, за текущую дату
#Значение переменной dir=/var/log/cpca/ это путь к файлам логов по умолчанию, если у Вас используется другой путь, то это значение можно перезадать dir=/var/log/cpca/
d=$(date +%Y%m%d) mkdir "/tmp/$d" find $dir -type f | grep $d |xargs -i cp {} /tmp/$d/ tar -cvf /tmp/$d_uclog.gz "/tmp/$d/" |
Результатом будет файл /tmp/<текущая дата>_uclog.gz который необходимо будет прикрепить к заявке на ТП.
3.1(опционально) Сбор логов демонов в неструктурированном виде, за определенный промежуток времени:
Для сбора диагностики, когда не стартуют демоны, перед сбором информации небходимо попробовать их запуститьб чтобы ошибки записались в лог
#Где 20 это количество минут, за которые надо собрать логи
sudo journalctl --since "20 min ago" | grep -e CryptoPro -e nginx -e nats -e cpro | grep -v capi > /tmp/uc_log.txt |
4. TSP/OCSP
Конфиги:
OCSP - В директории установки службы OCSP распологается файл ocsp_2012.json -его необходимо скопировать и приложить в обращение.
TSP - В директории установки службы TSP распологается файл tsp_2012.json -его необходимо скопировать и приложить в обращение.
Лог файлы:
В конфиг файлах, распоолжене котрых описанно выше прописан путь к лог файлам, стандартный путь это
для OCSP /tmp/ocsp_2012_HH:mm:ss
для TSP /tmp/tsp_2012_HH:mm:ss
Самый свежий файл логов необходимо приложить в обращение
|