1# FileSender {#module-services-filesender}
2
3[FileSender](https://filesender.org/software/) is a software that makes it easy to send and receive big files.
4
5## Quickstart {#module-services-filesender-quickstart}
6
7FileSender uses [SimpleSAMLphp](https://simplesamlphp.org/) for authentication, which needs to be configured separately.
8
9Minimal working instance of FileSender that uses password-authentication would look like this:
10
11```nix
12let
13 format = pkgs.formats.php {};
14in
15{
16 networking.firewall.allowedTCPPorts = [ 80 443 ];
17 services.filesender = {
18 enable = true;
19 localDomain = "filesender.example.com";
20 configureNginx = true;
21 database.createLocally = true;
22
23 settings = {
24 auth_sp_saml_authentication_source = "default";
25 auth_sp_saml_uid_attribute = "uid";
26 storage_filesystem_path = "<STORAGE PATH FOR UPLOADED FILES>";
27 admin = "admin";
28 admin_email = "admin@example.com";
29 email_reply_to = "noreply@example.com";
30 };
31 };
32 services.simplesamlphp.filesender = {
33 settings = {
34 "module.enable".exampleauth = true;
35 };
36 authSources = {
37 admin = [ "core:AdminPassword" ];
38 default = format.lib.mkMixedArray [ "exampleauth:UserPass" ] {
39 "admin:admin123" = {
40 uid = [ "admin" ];
41 cn = [ "admin" ];
42 mail = [ "admin@example.com" ];
43 };
44 };
45 };
46 };
47}
48```
49
50::: {.warning}
51Example above uses hardcoded clear-text password, in production you should use other authentication method like LDAP. You can check supported authentication methods [in SimpleSAMLphp documentation](https://simplesamlphp.org/docs/stable/simplesamlphp-idp.html).
52:::