Я решил этот случай и хотел бы поделиться здесь для кого-то, если это будет полезно.
Виртуальный хост XAMPP в моем случае
Интернет root Путь
/opt/lampp/htdocs/abcd.com/
Конфигурация виртуального хоста
/opt/lampp/etc/extra/httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot "/opt/lampp/htdocs/abcd.com"
ServerName abcd.com
<Directory "/opt/lampp/htdocs/abcd.com">
Options Includes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog "/opt/lampp/htdocs/abcd.com/domain_error_log"
ErrorDocument 404 '404'
</VirtualHost>
. Хорошо известный
/opt/lampp/htdocs/abcd.com/.well-known/acme-challenge
1. Важные шаги, когда мы будем использовать --manual-auth-hook --manual-cleanup-hook для создания исполняемого файла (. sh)
1.1 Создать аутентификатор. sh
sudo nano /opt/lampp/htdocs/abcd.com.authenticator.sh
#----- copy and paste -----
#!/bin/bash
echo $CERTBOT_VALIDATION > /opt/lampp/htdocs/Project/vtl-solutions.com/.well-known/acme-challenge/$CERTBOT_TOKEN
#----- copy and paste -----
sudo chmod -R 777 /opt/lampp/htdocs/abcd.com.authenticator.sh
1.2 Создать очистку. sh
sudo nano /opt/lampp/htdocs/abcd.com.cleanup.sh
#----- copy and paste -----
#!/bin/bash
rm -f /opt/lampp/htdocs/abcd.com/.well-known/acme-challenge/$CERTBOT_TOKEN
#----- copy and paste -----
sudo chmod -R 777 /opt/lampp/htdocs/abcd.com.cleanup.sh
2. Мы можем запустить команду, чтобы сделать сейчас
sudo certbot certonly --manual \
--preferred-challenges=http \
--manual-auth-hook /opt/lampp/htdocs/abcd.com.authenticator.sh \
--manual-cleanup-hook /opt/lampp/htdocs/abcd.com.cleanup.sh \
-d abcd.com
А вот подробности и журнал выполнения для справки:
https://github.com/oliguo/Server-Certbot-XAMPP-Ubuntu