Install SSL certificate Cockpit на CentOS 7

Edit SSL Cockpit directory

nano /etc/cockpit/ws-certs.d/0-self-signed.cert

Add new SSL Certificate

Для установки SSL сертификата на веб-интерфейсе управления сервером Cockpit на операционной системе CentOS 7, выполните следующие шаги пошагово:

Шаг 1: Установите Nginx

Сначала установим web-сервер Nginx, поскольку Cockpit работает на порту 9090, и мы можем настроить Nginx для безопасного подключения через HTTPS.

sudo yum install nginx -y

Запустите службу Nginx и добавьте её в автозагрузку:

sudo systemctl start nginx
sudo systemctl enable nginx

Шаг 2: Получение SSL сертификата

Есть два способа получения SSL сертификатов:

2.1 Самоподписанный сертификат

Создаем самоподписанный сертификат, используя команду OpenSSL:

mkdir /etc/nginx/ssl && cd /etc/nginx/ssl
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout cockpit.key -out cockpit.crt

Это создаст ключ (cockpit.key) и сертификат (cockpit.crt).

2.2 Бесплатный сертификат Let’s Encrypt

Установите certbot для автоматического получения и обновления бесплатных сертификатов от Let’s Encrypt:

sudo yum install epel-release
sudo yum install python-certbot-nginx
certbot --nginx

Следуйте инструкциям Certbot, выбрав доменное имя вашего сервера.

Шаг 3: Настройка Nginx

Откройте конфигурационный файл Nginx (обычно /etc/nginx/default.d/cockpit.conf, создайте новый файл):

vim /etc/nginx/default.d/cockpit.conf

Добавьте следующее содержимое файла конфигурации:

server {
    listen       443 ssl http2 default_server;
    server_name  yourdomain.com;

    ssl_certificate     /etc/nginx/ssl/cockpit.crt; # путь к вашему сертификату
    ssl_certificate_key /etc/nginx/ssl/cockpit.key; # путь к вашему приватному ключу

    location / {
        proxy_pass http://localhost:9090;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
    }
}

Убедитесь, что пути к файлам ключа и сертификата указаны правильно.

Перезапустите Nginx:

sudo systemctl restart nginx

Шаг 4: Тестирование

Теперь ваш интерфейс Cockpit доступен по адресу https://yourdomain.com. Попробуйте зайти через браузер — должно появиться защищённое соединение.


Таким образом, вы настроили SSL шифрование для интерфейса Cockpit на вашем сервере CentOS 7. Если используете самоподписанные сертификаты, убедитесь, что пользователи доверяют этому сертификату вручную.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.