Skip to content
  • Категории
  • Последние
  • Метки
  • Популярные
  • World
  • Пользователи
  • Группы
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • По умолчанию (Darkly)
  • Нет скина
Collapse

База знаний (кластер NBICS)

  1. Главная
  2. Cockpit
  3. Cockpit - установка на Debian

Cockpit - установка на Debian

Запланировано Прикреплена Закрыта Перенесена Cockpit
4 Сообщения 1 Posters 20 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • A Не в сети
    A Не в сети
    Admin
    написал в отредактировано
    #1

    Установка Cockpit на Debian 12 (Bookworm) — это быстрый процесс, так как пакеты уже находятся в официальных репозиториях. Cockpit позволяет управлять сервером через удобный веб-интерфейс: мониторить ресурсы, управлять сетями, контейнерами и пользователями.

    Вот пошаговая инструкция:

    1. Обновление системы

    Перед установкой любого ПО рекомендуется обновить списки пакетов:

    sudo apt update && sudo apt upgrade -y
    
    

    2. Установка Cockpit

    Установите основной пакет Cockpit с помощью apt:

    sudo apt install cockpit -y
    
    

    3. Запуск и проверка службы

    После установки служба должна запуститься автоматически. Проверьте её статус:

    systemctl status cockpit.socket
    
    

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

    sudo systemctl enable --now cockpit.socket
    
    

    4. Настройка брандмауэра (если включен)

    Cockpit по умолчанию использует порт 9090. Если у вас активен ufw или nftables, нужно открыть этот порт:

    • Для UFW:
    sudo ufw allow 9090/tcp
    
    
    • Для nftables/iptables: Убедитесь, что входящий трафик на порт 9090 разрешен.

    5. Доступ к веб-интерфейсу

    Теперь вы можете зайти в панель управления через браузер. Введите в адресную строку:

    https://ip-вашего-сервера:9090

    Примечание: Браузер может показать предупреждение о "небезопасном соединении", так как Cockpit использует самоподписанный SSL-сертификат. Нажмите "Дополнительно" и "Перейти на сайт (небезопасно)".

    Для входа используйте логин и пароль вашего обычного пользователя в системе или root.


    Дополнительные возможности

    Чтобы расширить функционал Cockpit, вы можете установить дополнительные модули:

    • Управление виртуальными машинами (KVM):
      sudo apt install cockpit-machines
    • Управление Podman (контейнеры):
      sudo apt install cockpit-podman
    • Управление сетевыми хранилищами и дисками:
      sudo apt install cockpit-storaged

    1 ответ Последний ответ
    0
    • A Не в сети
      A Не в сети
      Admin
      написал в отредактировано Admin
      #2

      Создание конфига для NGINX и сертификата


      1. Создаём простой стандартный конфиг для нужного домена
      cd /etc/nginx/sites-available
      sudo touch <my_site>.conf
      sudo nano <my_site>.conf
      
      1. Вписываем в конфиг примитив, сохраняем
      server {
          listen 80;
          server_name my_domain.tld; # Замените на ваш домен
      
          location / {
              root /var/www/html;
          }
      }
      
      1. Создаём линк
      sudo ln -s /etc/nginx/sites-available/<my_site>.conf /etc/nginx/sites-enabled/
      
      1. Устанавливаем certbot, если ещё не установлен
      sudo apt install certbot python3-certbot-nginx -y
      
      1. Создаём сертификат для домена
      sudo certbot --nginx -d my_domain.tld
      
      1. Заходим сюда /etc/nginx/sites-available/<my_site>.conf и меняем текст конфига таком образом:
      server {
          listen 443 ssl;
          server_name my_domain.tld;  # Подставляем свой домен
      
          ssl_certificate /etc/letsencrypt/live/my_domain.tld/fullchain.pem; # Подставляем свой домен
          ssl_certificate_key /etc/letsencrypt/live/my_domain.tld/privkey.pem; # Подставляем свой домен
      
          location / {
              # Перенаправляем трафик на локальный порт Cockpit
              proxy_pass https://10.155.64.245:9090; # Подставляем нужный айпи-адрес
              
              # Настройки для поддержки WebSockets (обязательно для Cockpit)
              proxy_http_version 1.1;
              proxy_set_header Upgrade $http_upgrade;
              proxy_set_header Connection "upgrade";
      
              # Передача заголовков хоста и реального IP
              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 $scheme;
      
              # Отключаем буферизацию для мгновенного отклика терминала
              proxy_buffering off;
          }
      }
      
      1 ответ Последний ответ
      0
      • A Не в сети
        A Не в сети
        Admin
        написал в отредактировано Admin
        #3

        Изменение конфига Cockpit


        Выполните следующие шаги:

        1. Создание файла

        Запустите nano (он создаст пустой буфер, который сохранится как файл):

        sudo nano /etc/cockpit/cockpit.conf
        
        

        2. Содержимое файла

        Скопируйте и вставьте туда следующий блок (это критически важно для работы через Nginx, чтобы избежать ошибок "Cross-Origin" и бесконечной загрузки):

        [WebService]
        Origins = https://ваш-домен.com
        ProtocolHeader = X-Forwarded-Proto
        AllowUnencrypted = true
        
        
        • Origins: Укажите здесь адрес, по которому вы будете заходить в браузер (включая https://). Если адресов несколько, перечислите их через пробел.
        • ProtocolHeader: Говорит Cockpit верить заголовку от Nginx, что соединение безопасно.
        • AllowUnencrypted: Позволяет Cockpit принимать трафик от Nginx по локальной сети.

        3. Сохранение

        1. Нажмите Ctrl + O (сохранить).
        2. Нажмите Enter (подтвердить имя файла).
        3. Нажмите Ctrl + X (выйти из редактора).

        4. Перезапуск службы

        Чтобы Cockpit подхватил новые настройки, обязательно перезапустите его:

        sudo systemctl restart cockpit.socket
        

        Почему это важно?

        Без этого файла Cockpit увидит, что запрос пришел от прокси-сервера (Nginx), а не напрямую от клиента, и заблокирует соединение из соображений безопасности. В консоли браузера при этом обычно видна ошибка 403 Forbidden или проблемы с подключением WebSockets.

        1 ответ Последний ответ
        0
        • A Не в сети
          A Не в сети
          Admin
          написал в отредактировано
          #4
          1. Заходим по адресу https://my_domain.tld

          1. Вводим имя и пароль системного пользователя в окне авторизации
          1 ответ Последний ответ
          0
          Ответить
          • Ответить, создав новую тему
          Авторизуйтесь, чтобы ответить
          • Сначала старые
          • Сначала новые
          • По количеству голосов


          • Войти

          • Login or register to search.
          Powered by NodeBB Contributors
          • Первое сообщение
            Последнее сообщение
          0
          • Категории
          • Последние
          • Метки
          • Популярные
          • World
          • Пользователи
          • Группы