Compare commits
	
		
			1 Commits
		
	
	
		
			d05c5d3086
			...
			jellyfin
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| ba44547066 | 
							
								
								
									
										25
									
								
								roles/base/tasks/samba.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								roles/base/tasks/samba.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
			
		||||
- name: Install Samba
 | 
			
		||||
  ansible.builtin.apt:
 | 
			
		||||
    name: samba
 | 
			
		||||
    state: present
 | 
			
		||||
 | 
			
		||||
- name: Create Samba users
 | 
			
		||||
  ansible.builtin.command: "smbpasswd -a -s {{ item.name }}"
 | 
			
		||||
  args:
 | 
			
		||||
    stdin: "{{ item.password }}\n{{ item.password }}"
 | 
			
		||||
  loop: "{{ samba.users }}"
 | 
			
		||||
  register: samba_users
 | 
			
		||||
  changed_when: "'User added' in samba_users.stdout"
 | 
			
		||||
 | 
			
		||||
- name: Ensure share directories exist
 | 
			
		||||
  ansible.builtin.file:
 | 
			
		||||
    path: "{{ item.path }}"
 | 
			
		||||
    state: directory
 | 
			
		||||
    mode: 0755
 | 
			
		||||
  loop: "{{ samba.shares }}"
 | 
			
		||||
 | 
			
		||||
- name: Configure Samba shares
 | 
			
		||||
  ansible.builtin.template:
 | 
			
		||||
    src: smb.conf.j2
 | 
			
		||||
    dest: /etc/samba/smb.conf
 | 
			
		||||
  notify: samba_restart
 | 
			
		||||
							
								
								
									
										19
									
								
								roles/base/templates/smb.conf.j2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								roles/base/templates/smb.conf.j2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
[global]
 | 
			
		||||
   workgroup = WORKGROUP
 | 
			
		||||
   server string = Samba Server %v
 | 
			
		||||
   netbios name = {{ ansible_hostname }}
 | 
			
		||||
   security = user
 | 
			
		||||
   map to guest = bad user
 | 
			
		||||
   dns proxy = no
 | 
			
		||||
{% for user in samba.users %}
 | 
			
		||||
   smb encrypt = {{ 'mandatory' if user.encrypt | default(false) else 'disabled' }}
 | 
			
		||||
{% endfor %}
 | 
			
		||||
 | 
			
		||||
{% for share in samba.shares %}
 | 
			
		||||
[{{ share.name }}]
 | 
			
		||||
   path = {{ share.path }}
 | 
			
		||||
   browsable = yes
 | 
			
		||||
   guest ok = no
 | 
			
		||||
   read only = {{ 'yes' if share.read_only | default(false) else 'no' }}
 | 
			
		||||
   valid users = {{ share.valid_users }}
 | 
			
		||||
{% endfor %}
 | 
			
		||||
		Reference in New Issue
	
	Block a user