--- # SAMBA and ibays - name: Installing SAMBA and ibays packages yum: name: - "@nethserver-file-server" - nethserver-samba-audit state: present # SAMBA - name: Checking for default SAMBA behaviour shell: /sbin/e-smith/db configuration getprop smb HomeAdmStatus register: check_smbbehavior changed_when: "'enabled' not in check_smbbehavior" ignore_errors: yes - name: Configuring standard SAMBA behaviour on shared folders shell: /sbin/e-smith/db configuration setprop smb HomeAdmStatus enabled InheritOwner yes ShareAdmStatus enabled when: check_smbbehavior|changed - name: Activating default SAMBA behaviour shell: /sbin/e-smith/signal-event nethserver-samba-save when: check_smbbehavior|changed - name: "Create directory structure for templates-custom" file: path: "/etc/e-smith/templates-custom/etc/samba/smb.conf" owner: root group: root mode: 0755 state: directory register: check_tempcust - name: "Copying settings from default." copy: src: /etc/e-smith/templates/etc/samba/smb.conf/10global dest: /etc/e-smith/templates-custom/etc/samba/smb.conf/10global remote_src: true owner: root group: root mode: 0644 when: check_tempcust|changed - name: "Enabling unix extensions on SAMBA" lineinfile: dest: /etc/e-smith/templates-custom/etc/samba/smb.conf/10global line: 'unix extensions = yes' state: present insertafter: EOF when: check_tempcust|changed - name: Adding server signing as mandatory lineinfile: dest: /etc/e-smith/templates-custom/etc/samba/smb.conf/10global line: "server signing = mandatory" state: present insertafter: EOF when: check_tempcust|changed - name: Applying custom configurations to running SAMBA shell: /sbin/e-smith/signal-event nethserver-samba-save become: yes when: check_tempcust|changed # ibays - name: Checking for shared ibay shell: /sbin/e-smith/db accounts show shared ignore_errors: true register: chk_shared #- name: Copying default templates for shared template type # shell: cp -r /etc/e-smith/templates/etc/samba/smb.conf/ibay-default /etc/e-smith/templates/etc/samba/smb.conf/ibay-shared # when: force_ibay_shared|bool or chk_shared|failed # #- name: Configuring ibay-shared template structure (directory mask) # lineinfile: # dest: /etc/e-smith/templates/etc/samba/smb.conf/ibay-shared/20profile_default # line: 'directory mask = 0775' # insertafter: '^create mask' # state: present # when: force_ibay_shared|bool or chk_shared|failed # #- name: Configuring force create mode # lineinfile: # dest: /etc/e-smith/templates/etc/samba/smb.conf/ibay-shared/20profile_default # line: 'force create mode = 0664' # insertafter: '^directory mask' # state: present # when: force_ibay_shared|bool or chk_shared|failed # #- name: Configuring force directory mode # lineinfile: # dest: /etc/e-smith/templates/etc/samba/smb.conf/ibay-shared/20profile_default # line: 'force directory mode = 0775' # insertafter: '^force create mode' # state: present # when: force_ibay_shared|bool or chk_shared|failed - name: Configuring shared ibay shell: /sbin/e-smith/db accounts set shared ibay AclRead "" AclWrite "" Description "Cartella condivisa" GroupAccess rw OtherAccess "" OwningGroup "domain users@{{ ansible_local.domain.domainfull }}" SmbAuditStatus enabled SmbGuestAccessType none SmbRecycleBinStatus enabled SmbRecycleBinVersionsStatus enabled SmbShareBrowseable enabled when: chk_shared|failed - name: Activating shared ibay shell: /sbin/e-smith/signal-event ibay-create shared become: yes when: chk_shared|failed #- name: Changing ibay profile for shared # shell: /sbin/e-smith/db accounts setprop shared SmbProfileType shared # become: yes # when: force_ibay_shared|bool or chk_shared|failed #- name: Forcing regeneration of smb.conf # shell: /sbin/e-smith/signal-event nethserver-samba-update # become: yes # when: force_ibay_shared|bool or chk_shared|failed or check_tempcust|changed # Fixing issue #3 - Configure sudo access for admin on server for operator # access # https://github.com/bglug-it/server-config/issues/3 - name: Configuring sudo access for admin account lineinfile: dest: /etc/sudoers.d/admin line: 'admin@{{ ansible_local.domain.domainfull }} ALL=(ALL) NOPASSWD: ALL' create: yes owner: root group: root mode: 0440 validate: 'visudo -cf %s'