No description
  • Jinja 97.4%
  • Shell 2.6%
Find a file
semantic-release-bot 1992e32555 chore(release): 1.10.0 [skip ci]
# [1.10.0](https://github.com/de-it-krachten/ansible-role-samba/compare/v1.9.0...v1.10.0) (2026-03-15)

### Features

* Added support for Fedora 43 ([2501004](2501004190))
* Drop support for Fedora 41 ([794ff85](794ff85c15))
* Drop support for openSUSE Leap 15 ([e00a3e3](e00a3e3c73))
* Drop support for SUSE Linux Enterprise 15 ([1eabd8b](1eabd8bbbc))
2026-03-15 14:32:02 +00:00
.github/workflows Update CI 2026-03-14 20:00:50 +01:00
defaults feat: Update supported platforms & CI 2023-08-16 23:01:32 +02:00
files feat: add basic dfree script 2022-03-13 22:51:39 +01:00
handlers feat: Move to FQCN 2022-10-09 23:17:45 +02:00
meta Update CI 2026-03-14 20:00:50 +01:00
molecule/default Update CI 2026-03-14 20:00:50 +01:00
tasks fix: Fix loop label to string 2023-09-03 19:49:24 +02:00
templates fix: template format fixed 2022-04-10 14:28:54 +02:00
.ansible-lint feat: Update CI to latest standards 2022-10-09 23:20:10 +02:00
.cicd Update CI 2026-03-06 23:09:20 +01:00
.cicd.overwrite Update CI 2026-03-14 20:00:50 +01:00
.collections feat: Move to FQCN 2022-10-09 23:17:45 +02:00
.gitignore feat: Update supported platforms & CI 2024-12-29 12:44:56 +01:00
.releaserc.yml Update CI 2026-03-06 23:09:20 +01:00
.roles feat: Update CI to latest standards 2022-10-09 23:20:10 +02:00
.yamllint feat: Update supported platforms & CI 2024-12-29 12:44:56 +01:00
CHANGELOG.md chore(release): 1.10.0 [skip ci] 2026-03-15 14:32:02 +00:00
README.md Update CI 2026-03-14 20:00:50 +01:00

CI

ansible-role-samba

Install/configure samba

Dependencies

Roles

None

Collections

None

Platforms

Supported platforms

  • Red Hat Enterprise Linux 81
  • Red Hat Enterprise Linux 91
  • Red Hat Enterprise Linux 101
  • RockyLinux 8
  • RockyLinux 9
  • RockyLinux 10
  • OracleLinux 8
  • OracleLinux 9
  • OracleLinux 10
  • AlmaLinux 8
  • AlmaLinux 9
  • AlmaLinux 10
  • Debian 11 (Bullseye)
  • Debian 12 (Bookworm)
  • Debian 13 (Trixie)
  • Ubuntu 20.04 LTS
  • Ubuntu 22.04 LTS
  • Ubuntu 24.04 LTS
  • Fedora 42
  • Fedora 43

Note: 1 : no automated testing is performed on these platforms

Role Variables

defaults/main.yml


# Packages required to install samba
samba_packages:
  - samba
  - cifs-utils

# Should this server function within ActiveDirectory
samba_ad: true

# Should this server support legacy Netbios
samba_netbios: false

# Configuration template
samba_conf: samba.conf.j2

# dfree script
samba_dfree_script: /usr/local/bin/dfree

# List of shares
samba_shares: []

# Should the samba users be defined as OS users
samba_create_users: false

# List of local samba users
samba_users: []

# List of samba scripts
samba_scripts: []

# should this role manage firewall rules
samba_manage_firewall: true

# samba firewall ports
samba_firewall_ports_netbios:
  - { port: 137, proto: udp }
  - { port: 138, proto: udp }
  - { port: 139, proto: tcp }
samba_firewall_ports_ad:
  - { port: 445, proto: tcp }
  - { port: 445, proto: udp }

defaults/family-Debian.yml


# samba service
samba_services:
  - smbd

defaults/family-RedHat.yml


# samba service
samba_services:
  - smb

defaults/family-Suse.yml


# samba service
samba_services:
  - smb

Example Playbook

molecule/default/converge.yml


- name: sample playbook for role 'samba'
  hosts: all
  become: 'yes'
  vars:
    molecule_driver: '{{ lookup(''env'', ''MOLECULE_DRIVER_NAME'') }}'
    samba_ad: true
    samba_netbios: true
    samba_create_users: true
    samba_users:
      - name: user1
        password: password1
      - name: user2
        password: password2
    samba_shares:
      - name: homes
        settings:
          comment: Home Directories
          browseable: 'yes'
          read__only: 'no'
          create__mask: '0700'
          directory__mask: '0700'
          valid__users: '%S'
          writeable: 'yes'
          public: 'yes'
          dfree__command: /usr/local/bin/dfree
      - name: private
        settings:
          comment: private directories
          browseable: 'no'
          public: 'no'
          dfree__command: /usr/local/bin/dfree
  tasks:
    - name: Include role 'samba'
      ansible.builtin.include_role:
        name: samba