nix-dotfiles/hosts/tsuki/services/samba.nix

69 lines
1.8 KiB
Nix

{ config, lib, ... }:
{
# 100.120.148.116
services.samba = {
enable = true;
# openFirewall = true;
settings = {
global = {
"workgroup" = "TSUKI";
"server string" = "smbnix";
"netbios name" = "smbnix";
"security" = "user";
"use sendfile" = "yes";
"min protocol" = "SMB2";
"smb encrypt" = "desired";
# note: localhost is the ipv6 localhost ::1
"hosts allow" = "100.107.69.8 100.100.65.88";
"hosts deny" = "0.0.0.0/0";
"guest ok" = "no";
"map to guest" = "never";
};
cirno = {
path = "/data/cirno";
browseable = "yes";
"valid users" = "h7x4";
"read only" = "no";
"guest ok" = "no";
"create mask" = "0600";
"directory mask" = "0700";
"force user" = "h7x4";
"force group" = "users";
"comment" = "cirno data drive";
};
backup-import = {
path = "/data/backup/import";
browseable = "yes";
"valid users" = "h7x4";
"read only" = "no";
"guest ok" = "no";
"create mask" = "0600";
"directory mask" = "0700";
"force user" = "h7x4";
"force group" = "users";
"comment" = "backup import drive";
};
media = {
path = "/data/media";
browseable = "yes";
"valid users" = "h7x4";
"read only" = "no";
"guest ok" = "no";
"create mask" = "0644";
"directory mask" = "0755";
"force user" = "media";
"force group" = "media";
"comment" = "media drive";
};
};
};
networking.firewall.interfaces."tailscale0".allowedTCPPorts = [ 139 445 ];
networking.firewall.interfaces."tailscale0".allowedUDPPorts = [ 137 138 ];
}