Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Оплата
Новости
Доставка
Загрузки
Форум
Настройка
    info@proxmox.su
    +7 (495) 320-70-49
    Заказать звонок
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Телефоны
    +7 (495) 320-70-49
    Заказать звонок
    0
    0
    0
    Аспро: ЛайтШоп
    • +7 (495) 320-70-49
      • Назад
      • Телефоны
      • +7 (495) 320-70-49
      • Заказать звонок
    • info@proxmox.su
    • Москва, Бакунинская улица, 69с1
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Proxmox Виртуальная Среда
    Возможности LXC

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Возможности LXC, Proxmox Виртуальная Среда
     
    lweidig
    Guest
    #1
    0
    16.10.2015 19:18:00
    Надеюсь опереться на опыт сообщества, чтобы разобраться с проблемой, которая возникла после перехода с OpenVZ на LXC в системе версии 4.0. Одному из контейнеров нужны права, позволяющие бинарнику открывать порты 80 и 443 для веб-сервисов, но при этом он должен запускаться от непривилегированной учётной записи.

    Конкретная команда, выполняемая при установке, такая:  
    setcap "CAP_NET_BIND_SERVICE,CAP_NET_BROADCAST+ep" "/usr/local/bin/myprogram"

    Похоже, что права устанавливаются в папке /usr/share/lxc/config через несколько конфигурационных файлов. Хотелось бы, чтобы это было разрешено только для одного конкретного контейнера, который в этом нуждается, и не затрагивало остальные. Интересно, как это правильно переопределить только для нужного контейнера.

    Буду признателен за любые советы! Спасибо!
     
     
     
    lweidig
    Guest
    #2
    0
    06.11.2015 00:43:00
    Ладно, чувствую себя немного глупо, но хочу поделиться решением этой проблемы для себя. Сначала мне пришлось добавить в конфигурационный файл, который находится в /etc/pve/lxc/nnn.conf (где nnn — это VMID), следующую строку: lxc.aa_profile = unconfined. Я не уверен, что это было абсолютно обязательно, но вовсе не хочу останавливать машину, чтобы проверить. После этого мне просто нужно было заново запустить команду внутри контейнера: setcap "CAP_NET_BIND_SERVICE,CAP_NET_BROADCAST+ep" "/usr/local/bin/myprogram". Видимо, способности (capabilities) при резервном копировании и восстановлении не переносятся.
     
     
     
    wbumiller
    Guest
    #3
    0
    06.11.2015 08:35:00
    Верно. Резервные файлы (как и шаблоны) — это tar-архивы, которые по умолчанию не включают расширенные атрибуты (именно так хранятся capabilities). Также есть разногласия по поводу того, как эти атрибуты должны храниться в архивах. Архивы, созданные GNU tar, вызывают ошибку в bsdtar, и наоборот, когда они пытаются включить такие атрибуты. По-видимому, GNU tar включает сырые бинарные данные для xattrs, что противоречит спецификации pax (см. ссылки ниже). Кстати, не нужно заморачиваться с lxc.cap.keep для этих конкретных capabilities, так как они входят в набор по умолчанию. Без какой-либо дополнительной настройки:  
    Код:  
    container # grep CapPrm /proc/self/status  
    CapPrm: 0000003c7d6cffff  
    container # capsh --decode=0000003c7d6cffff  
    0x0000003c7d6cffff=cap_chown,cap_dac_override,cap_dac_read_search,cap_fowner,cap_fsetid,cap_kill,cap_setgid,cap_setuid,cap_setpcap,cap_linux_immutable,cap_net_bind_service,cap_net_broadcast,cap_net_admin,cap_net_raw,cap_ipc_lock,cap_ipc_owner,cap_sys_chroot,cap_sys_ptrace,cap_sys_admin,cap_sys_boot,cap_sys_resource,cap_sys_tty_config,cap_mknod,cap_lease,cap_audit_write,cap_audit_control,cap_syslog,cap_wake_alarm,cap_block_suspend,37  
    Ссылки:  
    http://lists.gnu.org/archive/html/bug-tar/2013-12/msg00012.html  
    http://lists.gnu.org/archive/html/bug-tar/2013-12/msg00016.html
     
     
     
    wbumiller
    Guest
    #4
    0
    10.11.2015 10:05:00
    Если вам интересно: https://git.proxmox.com/?p=pve-container.git;a=commit;h=fc4e132e1a718a31dd7a098375ea3c24211fcebb Они должны сохраняться при дампах после следующих обновлений пакета.
     
     
     
    lweidig
    Guest
    #5
    0
    10.11.2015 14:02:00
    Спасибо за это улучшение, очень ценю!
     
     
     
    wbumiller
    Guest
    #6
    0
    10.11.2015 14:32:00
    Обратите внимание, что, к сожалению, только недавно созданные дампы будут содержать необходимую информацию.
     
     
     
    lweidig
    Guest
    #7
    0
    10.11.2015 14:39:00
    Ах, да ладно. Прочитай все старые дампы и влей их в бэкапы. Шучу, конечно, понял, что это будет делаться в дальнейшем. Всё равно огромное спасибо за это!
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

    Конфиденциальность Оферта
    © 2026 Proxmox.su
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры