diff --git a/group_vars/create-container-vlan-30.yml b/create-container-vlan-30.yml similarity index 100% rename from group_vars/create-container-vlan-30.yml rename to create-container-vlan-30.yml diff --git a/deploy_printer_srv.yml b/deploy_printer_srv.yml new file mode 100644 index 0000000..3275493 --- /dev/null +++ b/deploy_printer_srv.yml @@ -0,0 +1,10 @@ +--- +- name: Настройка сервера печати в LXC + hosts: all + become: yes + vars: + printer_name: "HP" + printer_ip: "192.168.20.249" + + roles: + - cups_server diff --git a/group_vars/all.yml b/group_vars/all.yml deleted file mode 100644 index 05b1422..0000000 --- a/group_vars/all.yml +++ /dev/null @@ -1,78 +0,0 @@ ---- -- name: Финальное развертывание Unprivileged LXC (ZFS + VLAN) - hosts: localhost - connection: local - become: yes - gather_facts: no - vars: - # Базовый конфиг (ID маппинг согласно вашему /etc/subuid) - base_lxc_conf: | - lxc.include = /usr/share/lxc/config/common.conf - lxc.include = /usr/share/lxc/config/debian.common.conf - lxc.arch = x86_64 - # Маппинг для безопасного root (хост: 1,000,000 -> контейнер: 0) - lxc.idmap = u 0 1000000 65536 - lxc.idmap = g 0 1000000 65536 - # Сетевой интерфейс - lxc.net.0.type = veth - lxc.net.0.link = br0 - lxc.net.0.flags = up - lxc.net.0.name = eth0 - - tasks: - - name: 1. Мгновенный клон из обновленного шаблона - shell: "zfs clone pool/lxc/template-debian12@snap0 pool/lxc/{{ item }}" - loop: [ 'bit-srv-prn', 'mail-bit-it-ru' ] - - - name: 2. Настройка Legacy Mountpoint (важно для ZFS + LXC) - shell: "zfs set mountpoint=legacy pool/lxc/{{ item }}" - loop: [ 'bit-srv-prn', 'mail-bit-it-ru' ] - - - name: 3. Подготовка директорий контейнеров - file: - path: "/var/lib/lxc/{{ item }}" - state: directory - loop: [ 'bit-srv-prn', 'mail-bit-it-ru' ] - - - name: 4. Права на внешние данные почты (UID 1000000) - file: - path: /pool/bit-mail-data - owner: "1000000" - group: "1000000" - state: directory - recurse: yes - - - name: 5. Запись конфига ПРИНТЕР (VLAN 30) - copy: - dest: /var/lib/lxc/bit-srv-prn/config - content: | - {{ base_lxc_conf }} - lxc.uts.name = bit-srv-prn - lxc.rootfs.path = zfs:pool/lxc/bit-srv-prn - lxc.net.0.veth.vlan.id = 30 - - - name: 6. Запись конфига ПОЧТА (VLAN 60 + Mount) - copy: - dest: /var/lib/lxc/mail-bit-it-ru/config - content: | - {{ base_lxc_conf }} - lxc.uts.name = mail-bit-it-ru - lxc.rootfs.path = zfs:pool/lxc/mail-bit-it-ru - lxc.net.0.veth.vlan.id = 60 - lxc.mount.entry = /pool/bit-mail-data var/mail none bind,create=dir 0 0 - - - name: 7. Запуск контейнеров - shell: "lxc-start -n {{ item }} -d" - loop: [ 'bit-srv-prn', 'mail-bit-it-ru' ] - - - name: 8. Проверка статуса (ждем загрузку) - pause: - seconds: 5 - - - name: 9. Итоговая таблица - shell: "lxc-ls -f" - register: lxc_final - - - name: Результат - debug: - msg: "{{ lxc_final.stdout_lines }}" diff --git a/group_vars/all.yml-old b/group_vars/all.yml-old deleted file mode 100644 index cd967b8..0000000 --- a/group_vars/all.yml-old +++ /dev/null @@ -1,69 +0,0 @@ ---- -- name: Развертывание Unprivileged LXC (Финал) - hosts: localhost - connection: local - become: yes - gather_facts: no - vars: - # Конфиг уже включает ID Mapping - base_conf: | - lxc.include = /usr/share/lxc/config/common.conf - lxc.include = /usr/share/lxc/config/debian.common.conf - lxc.arch = x86_64 - lxc.idmap = u 0 100000 65536 - lxc.idmap = g 0 100000 65536 - lxc.net.0.type = veth - lxc.net.0.link = br0 - lxc.net.0.flags = up - lxc.net.0.name = eth0 - - tasks: - - name: 1. Очистка старых контейнеров - shell: | - lxc-stop -n {{ item }} -k || true - lxc-destroy -n {{ item }} || true - zfs destroy -r pool/lxc/{{ item }} || true - loop: [ 'bit-srv-prn', 'mail-bit-it-ru' ] - failed_when: false - - - name: 2. Мгновенный клон ZFS (уже с правами 100000) - shell: "zfs clone pool/lxc/template-debian12@snap0 pool/lxc/{{ item }}" - loop: [ 'bit-srv-prn', 'mail-bit-it-ru' ] - - - name: 3. Установка legacy mountpoint - shell: "zfs set mountpoint=legacy pool/lxc/{{ item }}" - loop: [ 'bit-srv-prn', 'mail-bit-it-ru' ] - - - name: 4. Подготовка папок LXC - file: - path: "/var/lib/lxc/{{ item }}" - state: directory - - -loop: [ 'bit-srv-prn', 'mail-bit-it-ru' ] - - - name: 5. Права на внешние данные (для почты) - file: - path: /pool/bit-mail-data - owner: "100000" - group: "100000" - recurse: yes - - - name: 6. Запись конфигов - copy: - dest: "/var/lib/lxc/{{ item.name }}/config" - content: | - {{ base_conf }} - lxc.net.0.veth.vlan.id = {{ item.vlan }} - lxc.rootfs.path = zfs:pool/lxc/{{ item.name }} - lxc.uts.name = {{ item.name }} - {% if item.mount is defined %}{{ item.mount }}{% endif %} - loop: - - { name: 'bit-srv-prn', vlan: '30' } - - { name: 'mail-bit-it-ru', vlan: '60', mount: 'lxc.mount.entry = /pool/bit-mail-data var/mail none bind,create=dir 0 0' } - - - name: 7. Запуск - shell: "lxc-start -n {{ item.name }} -d" - loop: - - { name: 'bit-srv-prn' } - - { name: 'mail-bit-it-ru' } diff --git a/roles/cups_server/files/HP_P2015d.ppd b/roles/cups_server/files/HP_P2015d.ppd new file mode 100644 index 0000000..fac2ca5 --- /dev/null +++ b/roles/cups_server/files/HP_P2015d.ppd @@ -0,0 +1,237 @@ +*PPD-Adobe: "4.3" +*%%%% PPD file for HP LaserJet p2015d Series with CUPS. +*%%%% Created by the CUPS PPD Compiler CUPS v2.4.2. +*% (c) 2008 Copyright HP Development Company, LP +*FormatVersion: "4.3" +*FileVersion: "3.22.10" +*LanguageVersion: English +*LanguageEncoding: ISOLatin1 +*PCFileName: "hp-laserjet_p2015d_series.ppd" +*Product: "(HP LaserJet p2015d Printer)" +*Manufacturer: "HP" +*ModelName: "HP LaserJet p2015d Series" +*ShortNickName: "HP LaserJet p2015d Series" +*NickName: "HP LaserJet p2015d Series, hpcups 3.22.10" +*PSVersion: "(3010.000) 0" +*LanguageLevel: "3" +*ColorDevice: False +*DefaultColorSpace: Gray +*FileSystem: False +*Throughput: "1" +*LandscapeOrientation: Plus90 +*TTRasterizer: Type42 +*% Driver-defined attributes... +*RequiresPageRegion All: True +*cupsEvenDuplex: True +*hpPrinterLanguage: "ljmono" +*cupsModelName: "HP LaserJet" +*1284DeviceID: "MFG:Hewlett-Packard;MDL:hp laserjet p2015d series;DES:hp laserjet p2015d series;" +*cupsVersion: 2.4 +*cupsModelNumber: 0 +*cupsManualCopies: True +*cupsFilter: "application/vnd.cups-raster 0 hpcups" +*cupsLanguages: "en" +*OpenUI *PageSize/Media Size: PickOne +*OrderDependency: 10 AnySetup *PageSize +*DefaultPageSize: Letter +*PageSize Card3x5/Index Card 3x5in: "<>setpagedevice" +*PageSize Hagaki/Hagaki 100x148mm: "<>setpagedevice" +*PageSize Photo4x6/Photo 4x6in: "<>setpagedevice" +*PageSize A6/A6 105x148mm: "<>setpagedevice" +*PageSize Photo5x7/Photo 5x7in: "<>setpagedevice" +*PageSize Card5x8/Index Card 5x8in: "<>setpagedevice" +*PageSize Oufuku/Oufuku-Hagaki 148x200mm: "<>setpagedevice" +*PageSize A5/A5 148x210mm: "<>setpagedevice" +*PageSize B5/B5 176x250mm: "<>setpagedevice" +*PageSize JB5/JB5 182x257mm: "<>setpagedevice" +*PageSize Executive/Executive 7.25x10.5in: "<>setpagedevice" +*PageSize 16k/16k 7.75x10.75in: "<>setpagedevice" +*PageSize Letter/Letter 8.5x11in: "<>setpagedevice" +*PageSize A4/A4 210x297mm: "<>setpagedevice" +*PageSize ExecutiveJIS/Executive (JIS) 8.5x12.986in: "<>setpagedevice" +*PageSize FLSA/American Foolscap 8.5x13in: "<>setpagedevice" +*PageSize Legal/Legal 8.5x14in: "<>setpagedevice" +*PageSize EnvA2/A2 Envelope 4.37x5.75in: "<>setpagedevice" +*PageSize EnvC6/C6 Envelope 114x162mm: "<>setpagedevice" +*PageSize EnvChou4/#4 Japanese Envelope 90x205mm: "<>setpagedevice" +*PageSize EnvMonarch/Monarch Envelope 3.875x7.5in: "<>setpagedevice" +*PageSize EnvDL/DL Envelope 110x220mm: "<>setpagedevice" +*PageSize Env10/#10 Envelope 4.12x9.5in: "<>setpagedevice" +*PageSize EnvChou3/#3 Japanese Envelope 120x235mm: "<>setpagedevice" +*PageSize EnvC5/C5 Envelope 162x229mm: "<>setpagedevice" +*PageSize EnvB5/B5 Envelope 176x250mm: "<>setpagedevice" +*CloseUI: *PageSize +*OpenUI *PageRegion/Media Size: PickOne +*OrderDependency: 10 AnySetup *PageRegion +*DefaultPageRegion: Letter +*PageRegion Card3x5/Index Card 3x5in: "<>setpagedevice" +*PageRegion Hagaki/Hagaki 100x148mm: "<>setpagedevice" +*PageRegion Photo4x6/Photo 4x6in: "<>setpagedevice" +*PageRegion A6/A6 105x148mm: "<>setpagedevice" +*PageRegion Photo5x7/Photo 5x7in: "<>setpagedevice" +*PageRegion Card5x8/Index Card 5x8in: "<>setpagedevice" +*PageRegion Oufuku/Oufuku-Hagaki 148x200mm: "<>setpagedevice" +*PageRegion A5/A5 148x210mm: "<>setpagedevice" +*PageRegion B5/B5 176x250mm: "<>setpagedevice" +*PageRegion JB5/JB5 182x257mm: "<>setpagedevice" +*PageRegion Executive/Executive 7.25x10.5in: "<>setpagedevice" +*PageRegion 16k/16k 7.75x10.75in: "<>setpagedevice" +*PageRegion Letter/Letter 8.5x11in: "<>setpagedevice" +*PageRegion A4/A4 210x297mm: "<>setpagedevice" +*PageRegion ExecutiveJIS/Executive (JIS) 8.5x12.986in: "<>setpagedevice" +*PageRegion FLSA/American Foolscap 8.5x13in: "<>setpagedevice" +*PageRegion Legal/Legal 8.5x14in: "<>setpagedevice" +*PageRegion EnvA2/A2 Envelope 4.37x5.75in: "<>setpagedevice" +*PageRegion EnvC6/C6 Envelope 114x162mm: "<>setpagedevice" +*PageRegion EnvChou4/#4 Japanese Envelope 90x205mm: "<>setpagedevice" +*PageRegion EnvMonarch/Monarch Envelope 3.875x7.5in: "<>setpagedevice" +*PageRegion EnvDL/DL Envelope 110x220mm: "<>setpagedevice" +*PageRegion Env10/#10 Envelope 4.12x9.5in: "<>setpagedevice" +*PageRegion EnvChou3/#3 Japanese Envelope 120x235mm: "<>setpagedevice" +*PageRegion EnvC5/C5 Envelope 162x229mm: "<>setpagedevice" +*PageRegion EnvB5/B5 Envelope 176x250mm: "<>setpagedevice" +*CloseUI: *PageRegion +*DefaultImageableArea: Letter +*ImageableArea Card3x5/Index Card 3x5in: "18 14 198 346" +*ImageableArea Hagaki/Hagaki 100x148mm: "18 14 266 406" +*ImageableArea Photo4x6/Photo 4x6in: "18 14 270 418" +*ImageableArea A6/A6 105x148mm: "18 14 279.359985351562 405.760009765625" +*ImageableArea Photo5x7/Photo 5x7in: "18 14 342 490" +*ImageableArea Card5x8/Index Card 5x8in: "18 14 342 562" +*ImageableArea Oufuku/Oufuku-Hagaki 148x200mm: "18 14 549 406" +*ImageableArea A5/A5 148x210mm: "18 14 401.760009765625 581.440002441406" +*ImageableArea B5/B5 176x250mm: "18 14 480.959991455078 694.47998046875" +*ImageableArea JB5/JB5 182x257mm: "18 14 498.239990234375 714.640014648438" +*ImageableArea Executive/Executive 7.25x10.5in: "18 14 504 742" +*ImageableArea 16k/16k 7.75x10.75in: "18 14 540 760" +*ImageableArea Letter/Letter 8.5x11in: "18 14 594 778" +*ImageableArea A4/A4 210x297mm: "18 14 577.440002441406 827.679992675781" +*ImageableArea ExecutiveJIS/Executive (JIS) 8.5x12.986in: "18 14 594 922" +*ImageableArea FLSA/American Foolscap 8.5x13in: "18 14 594 922" +*ImageableArea Legal/Legal 8.5x14in: "18 14 594 994" +*ImageableArea EnvA2/A2 Envelope 4.37x5.75in: "18 14 296.640014648438 400" +*ImageableArea EnvC6/C6 Envelope 114x162mm: "18 14 305.279998779297 445.359985351562" +*ImageableArea EnvChou4/#4 Japanese Envelope 90x205mm: "18 14 236.880004882812 567.039978027344" +*ImageableArea EnvMonarch/Monarch Envelope 3.875x7.5in: "18 14 261 526" +*ImageableArea EnvDL/DL Envelope 110x220mm: "18 14 293.760009765625 609.52001953125" +*ImageableArea Env10/#10 Envelope 4.12x9.5in: "18 14 279 670" +*ImageableArea EnvChou3/#3 Japanese Envelope 120x235mm: "18 14 321.839996337891 652" +*ImageableArea EnvC5/C5 Envelope 162x229mm: "18 14 441 635" +*ImageableArea EnvB5/B5 Envelope 176x250mm: "18 14 481 695" +*DefaultPaperDimension: Letter +*PaperDimension Card3x5/Index Card 3x5in: "216 360" +*PaperDimension Hagaki/Hagaki 100x148mm: "284 420" +*PaperDimension Photo4x6/Photo 4x6in: "288 432" +*PaperDimension A6/A6 105x148mm: "297.359985351562 419.760009765625" +*PaperDimension Photo5x7/Photo 5x7in: "360 504" +*PaperDimension Card5x8/Index Card 5x8in: "360 576" +*PaperDimension Oufuku/Oufuku-Hagaki 148x200mm: "567 420" +*PaperDimension A5/A5 148x210mm: "419.760009765625 595.440002441406" +*PaperDimension B5/B5 176x250mm: "498.959991455078 708.47998046875" +*PaperDimension JB5/JB5 182x257mm: "516.239990234375 728.640014648438" +*PaperDimension Executive/Executive 7.25x10.5in: "522 756" +*PaperDimension 16k/16k 7.75x10.75in: "558 774" +*PaperDimension Letter/Letter 8.5x11in: "612 792" +*PaperDimension A4/A4 210x297mm: "595.440002441406 841.679992675781" +*PaperDimension ExecutiveJIS/Executive (JIS) 8.5x12.986in: "612 936" +*PaperDimension FLSA/American Foolscap 8.5x13in: "612 936" +*PaperDimension Legal/Legal 8.5x14in: "612 1008" +*PaperDimension EnvA2/A2 Envelope 4.37x5.75in: "314.640014648438 414" +*PaperDimension EnvC6/C6 Envelope 114x162mm: "323.279998779297 459.359985351562" +*PaperDimension EnvChou4/#4 Japanese Envelope 90x205mm: "254.880004882812 581.039978027344" +*PaperDimension EnvMonarch/Monarch Envelope 3.875x7.5in: "279 540" +*PaperDimension EnvDL/DL Envelope 110x220mm: "311.760009765625 623.52001953125" +*PaperDimension Env10/#10 Envelope 4.12x9.5in: "297 684" +*PaperDimension EnvChou3/#3 Japanese Envelope 120x235mm: "339.839996337891 666" +*PaperDimension EnvC5/C5 Envelope 162x229mm: "459 649" +*PaperDimension EnvB5/B5 Envelope 176x250mm: "499 709" +*MaxMediaWidth: "612" +*MaxMediaHeight: "1008" +*HWMargins: 18 14 18 14 +*CustomPageSize True: "pop pop pop <>setpagedevice" +*ParamCustomPageSize Width: 1 points 72 612 +*ParamCustomPageSize Height: 2 points 288 1008 +*ParamCustomPageSize WidthOffset: 3 points 0 0 +*ParamCustomPageSize HeightOffset: 4 points 0 0 +*ParamCustomPageSize Orientation: 5 int 0 0 +*OpenUI *Duplex/Double-Sided Printing: PickOne +*OrderDependency: 10 AnySetup *Duplex +*DefaultDuplex: DuplexNoTumble +*Duplex DuplexNoTumble/Long Edge (Standard): "<>setpagedevice" +*Duplex DuplexTumble/Short Edge (Flip): "<>setpagedevice" +*Duplex None/Off: "<>setpagedevice" +*CloseUI: *Duplex +*OpenUI *InputSlot/Media Source: PickOne +*OrderDependency: 10 AnySetup *InputSlot +*DefaultInputSlot: Auto +*InputSlot Auto/Auto-Select: "<>setpagedevice" +*InputSlot PhotoTray/Photo Tray: "<>setpagedevice" +*InputSlot Upper/Upper Tray: "<>setpagedevice" +*InputSlot Lower/Lower Tray: "<>setpagedevice" +*InputSlot Envelope/Envelope Feeder: "<>setpagedevice" +*InputSlot LargeCapacity/Large Capacity Tray: "<>setpagedevice" +*InputSlot Manual/Manual Feeder: "<>setpagedevice" +*InputSlot MPTray/Multi Purpose Tray: "<>setpagedevice" +*CloseUI: *InputSlot +*OpenUI *ColorModel/Output Mode: PickOne +*OrderDependency: 10 AnySetup *ColorModel +*DefaultColorModel: Gray +*ColorModel Gray/Grayscale: "<>setpagedevice" +*CloseUI: *ColorModel +*OpenUI *MediaType/Media Type: PickOne +*OrderDependency: 10 AnySetup *MediaType +*DefaultMediaType: Plain +*MediaType Plain/Plain Paper: "<>setpagedevice" +*CloseUI: *MediaType +*OpenUI *OutputMode/Print Quality: PickOne +*OrderDependency: 10 AnySetup *OutputMode +*DefaultOutputMode: Normal +*OutputMode Normal/Normal: "<>setpagedevice" +*OutputMode Draft/Draft (Economy): "<>setpagedevice" +*OutputMode Best/Best: "<>setpagedevice" +*CloseUI: *OutputMode +*OpenGroup: InstallableOptions/Installable Options +*OpenUI *OptionDuplex/Duplexer Installed: Boolean +*OrderDependency: 10 AnySetup *OptionDuplex +*DefaultOptionDuplex: False +*OptionDuplex False/Not Installed: "" +*OptionDuplex True/Installed: "" +*CloseUI: *OptionDuplex +*CloseGroup: InstallableOptions +*DefaultFont: Courier +*Font AvantGarde-Book: Standard "(1.05)" Standard ROM +*Font AvantGarde-BookOblique: Standard "(1.05)" Standard ROM +*Font AvantGarde-Demi: Standard "(1.05)" Standard ROM +*Font AvantGarde-DemiOblique: Standard "(1.05)" Standard ROM +*Font Bookman-Demi: Standard "(1.05)" Standard ROM +*Font Bookman-DemiItalic: Standard "(1.05)" Standard ROM +*Font Bookman-Light: Standard "(1.05)" Standard ROM +*Font Bookman-LightItalic: Standard "(1.05)" Standard ROM +*Font Courier: Standard "(1.05)" Standard ROM +*Font Courier-Bold: Standard "(1.05)" Standard ROM +*Font Courier-BoldOblique: Standard "(1.05)" Standard ROM +*Font Courier-Oblique: Standard "(1.05)" Standard ROM +*Font Helvetica: Standard "(1.05)" Standard ROM +*Font Helvetica-Bold: Standard "(1.05)" Standard ROM +*Font Helvetica-BoldOblique: Standard "(1.05)" Standard ROM +*Font Helvetica-Narrow: Standard "(1.05)" Standard ROM +*Font Helvetica-Narrow-Bold: Standard "(1.05)" Standard ROM +*Font Helvetica-Narrow-BoldOblique: Standard "(1.05)" Standard ROM +*Font Helvetica-Narrow-Oblique: Standard "(1.05)" Standard ROM +*Font Helvetica-Oblique: Standard "(1.05)" Standard ROM +*Font NewCenturySchlbk-Bold: Standard "(1.05)" Standard ROM +*Font NewCenturySchlbk-BoldItalic: Standard "(1.05)" Standard ROM +*Font NewCenturySchlbk-Italic: Standard "(1.05)" Standard ROM +*Font NewCenturySchlbk-Roman: Standard "(1.05)" Standard ROM +*Font Palatino-Bold: Standard "(1.05)" Standard ROM +*Font Palatino-BoldItalic: Standard "(1.05)" Standard ROM +*Font Palatino-Italic: Standard "(1.05)" Standard ROM +*Font Palatino-Roman: Standard "(1.05)" Standard ROM +*Font Symbol: Special "(001.005)" Special ROM +*Font Times-Bold: Standard "(1.05)" Standard ROM +*Font Times-BoldItalic: Standard "(1.05)" Standard ROM +*Font Times-Italic: Standard "(1.05)" Standard ROM +*Font Times-Roman: Standard "(1.05)" Standard ROM +*Font ZapfChancery-MediumItalic: Standard "(1.05)" Standard ROM +*Font ZapfDingbats: Special "(001.005)" Special ROM +*% End of hp-laserjet_p2015d_series.ppd, 15199 bytes. diff --git a/roles/cups_server/handlers/main.yml b/roles/cups_server/handlers/main.yml new file mode 100644 index 0000000..3b3bf7c --- /dev/null +++ b/roles/cups_server/handlers/main.yml @@ -0,0 +1,5 @@ +--- +- name: restart_cups + service: + name: cups + state: restarted diff --git a/roles/cups_server/tasks/main.yml b/roles/cups_server/tasks/main.yml new file mode 100644 index 0000000..59c0783 --- /dev/null +++ b/roles/cups_server/tasks/main.yml @@ -0,0 +1,45 @@ +--- +- name: Установка необходимых пакетов печати + apt: + name: + - cups + - hplip + - printer-driver-hpcups + state: present + update_cache: yes + +- name: Остановка сервиса CUPS перед обновлением конфига + service: + name: cups + state: stopped + +- name: Развертывание конфигурации принтеров из шаблона + template: + src: printers.conf.j2 + dest: /etc/cups/printers.conf + owner: root + group: lp + mode: '0600' + +- name: Копирование PPD файла (настройки дуплекса и драйвера) + copy: + src: HP_P2015d.ppd + dest: /etc/cups/ppd/HP_P2015d.ppd + owner: root + group: root + mode: '0644' + +- name: Развертывание основного конфигурационного файла CUPS + template: + src: cupsd.conf.j2 + dest: /etc/cups/cupsd.conf + owner: root + group: lp + mode: '0644' + notify: restart_cups + +- name: Запуск и включение сервиса CUPS + service: + name: cups + state: started + enabled: yes diff --git a/roles/cups_server/templates/cupsd.conf.j2 b/roles/cups_server/templates/cupsd.conf.j2 new file mode 100644 index 0000000..5ed14c0 --- /dev/null +++ b/roles/cups_server/templates/cupsd.conf.j2 @@ -0,0 +1,145 @@ +LogLevel warn +PageLogFormat +MaxLogSize 0 +ErrorPolicy retry-job +# Allow remote access +Port 631 +Listen *:631 +ServerAlias bit-srv-prn.bit-it.ru +# Share local printers on the local network. +Browsing On +BrowseLocalProtocols dnssd +DefaultAuthType Basic +WebInterface Yes +IdleExitTimeout 60 + + Order allow,deny + Allow 192.168.0.0/16 + Allow localhost + + + + AuthType Default + Require user @SYSTEM + Order allow,deny + Allow 192.168.0.0/16 + Allow localhost + + + + + AuthType Default + Require user @SYSTEM + Order allow,deny + Allow 192.168.0.0/16 + + + + AuthType Default + Require user @SYSTEM + Order allow,deny + Allow 192.168.0.0/16 + + + + + JobPrivateAccess default + JobPrivateValues default + SubscriptionPrivateAccess default + SubscriptionPrivateValues default + + Order deny,allow + + + Require user @OWNER @SYSTEM + Order deny,allow + + + AuthType Default + Require user @OWNER @SYSTEM + Order deny,allow + + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + Require user @OWNER @SYSTEM + Order deny,allow + + + Order deny,allow + + + + JobPrivateAccess default + JobPrivateValues default + SubscriptionPrivateAccess default + SubscriptionPrivateValues default + + AuthType Default + Order deny,allow + + + AuthType Default + Require user @OWNER @SYSTEM + Order deny,allow + + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + AuthType Default + Require user @OWNER @SYSTEM + Order deny,allow + + + Order deny,allow + + + + JobPrivateAccess default + JobPrivateValues default + SubscriptionPrivateAccess default + SubscriptionPrivateValues default + + AuthType Negotiate + Order deny,allow + + + AuthType Negotiate + Require user @OWNER @SYSTEM + Order deny,allow + + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + AuthType Negotiate + Require user @OWNER @SYSTEM + Order deny,allow + + + Order deny,allow + + diff --git a/roles/cups_server/templates/printers.conf.j2 b/roles/cups_server/templates/printers.conf.j2 new file mode 100644 index 0000000..078283b --- /dev/null +++ b/roles/cups_server/templates/printers.conf.j2 @@ -0,0 +1,22 @@ +NextPrinterId 3 + +PrinterId 2 +UUID urn:uuid:{{ 10000000 | random | hash('md5') | batch(8) | map('join') | join('-') }} +Info {{ printer_info | default('HP LaserJet P2015d') }} +MakeModel HP LaserJet p2015d Series, hpcups 3.22.10 +DeviceURI socket://{{ printer_ip }}:9100 +State Idle +StateTime {{ ansible_date_time.epoch }} +ConfigTime {{ ansible_date_time.epoch }} +Type 36884 +Accepting Yes +Shared Yes +JobSheets none none +QuotaPeriod 0 +PageLimit 0 +KLimit 0 +OpPolicy default +ErrorPolicy retry-job +Option Duplex DuplexNoTumble +Option Duplexer True +