--- # Create a smbuser # - name: Create smb user user: name: "{{ smbuser }}" shell: /sbin/nologin password: "{{ smbpassword }}" - name: Create the public folder file: dest: "{{ shared_dir }}" owner: "{{ smbuser }}" group: "{{ smbuser }}" mode: 0777 state: directory # Install and configure samba server (requires ports 137, 138, 139, 445 open). - name: Ensure Samba-related packages are installed package: name: "{{ item }}" state: present with_items: - samba - samba-client - samba-common - cifs-utils tags: - samba - download - name: Put our smb.conf in place template: src: smb.conf.j2 dest: /etc/samba/smb.conf - name: Ensure Samba is running and set to start on boot. service: name: "{{ smb_service }}" state: started enabled: yes tags: - samba when : samba_enabled - name: NetBIOS name server is running and set to start on boot service: name: "{{ nmb_service }}" state: started enabled: yes tags: - samba when : samba_enabled - name: Disable Samba if that is wanted service: name: "{{ smb_service }}" state: stopped enabled: no tags: - samba when : not samba_enabled - name: Disable Samba name server if that is wanted service: name: "{{ nmb_service }}" state: stopped enabled: no tags: - samba when : not samba_enabled - name: Add 'samba' to list of services at /etc/iiab/iiab.ini ini_file: dest: "{{ service_filelist }}" section: samba option: "{{ item.option }}" value: "{{ item.value }}" with_items: - option: name value: Samba - option: description value: '"Samba is a Microsoft-compatible network file system that re-implements SMB/CIFS (Common Internet File System)."' - option: enabled value: "{{ samba_enabled }}"