diff --git a/hsarback/src/de/hsadmin/mods/pac/PacProcessorFactory.java b/hsarback/src/de/hsadmin/mods/pac/PacProcessorFactory.java
index b934bf1..273cb95 100644
--- a/hsarback/src/de/hsadmin/mods/pac/PacProcessorFactory.java
+++ b/hsarback/src/de/hsadmin/mods/pac/PacProcessorFactory.java
@@ -66,6 +66,7 @@ public class PacProcessorFactory implements EntityProcessorFactory {
Processor hostsAppender = new TemplateProcessor("/de/hsadmin/mods/pac/hosts.jtpl", hiveValues, pacValuesList.iterator(), "/etc/hosts", true);
Processor interfacesAppender = new TemplateProcessor("/de/hsadmin/mods/pac/interfaces.jtpl", hiveValues, pacValuesList.iterator(), "/etc/network/interfaces", true);
Processor sudoersAppender = new TemplateProcessor("/de/hsadmin/mods/pac/sudoers.jtpl", hiveValues, pacValuesList.iterator(), "/etc/sudoers", true);
+ Processor ftpdconfAppender = new TemplateProcessor("/de/hsadmin/mods/pac/proftpd-conf.jtpl", hiveValues, pacValuesList.iterator(), "/etc/proftpd/proftpd.conf", true);
String password = PwGenerator.generatePassword(7, flagBuilder.build(), 100, random);
Processor newUsersProc = new ShellProcessor(
"newusers", pacName + ":" + password + ":"
@@ -98,7 +99,13 @@ public class PacProcessorFactory implements EntityProcessorFactory {
"Zugangsdaten des neue Hostsharing Pakets " + pacName,
template.out())
);
- Processor priProcessor = new CompoundProcessor(newUsersProc, hostsAppender, interfacesAppender, sudoersAppender, mkdirsProc);
+ Processor priProcessor = new CompoundProcessor(
+ newUsersProc,
+ hostsAppender,
+ interfacesAppender,
+ sudoersAppender,
+ ftpdconfAppender,
+ mkdirsProc);
WaitingTasksProcessor secProcessor = new WaitingTasksProcessor(priProcessor);
secProcessor.appendProcessor(pac.getHiveName(), emailPasswordProc, "send email to customer");
return secProcessor;
diff --git a/hsarback/src/de/hsadmin/mods/pac/proftpd-conf.jtpl b/hsarback/src/de/hsadmin/mods/pac/proftpd-conf.jtpl
new file mode 100644
index 0000000..608493e
--- /dev/null
+++ b/hsarback/src/de/hsadmin/mods/pac/proftpd-conf.jtpl
@@ -0,0 +1,89 @@
+# This proftpd config file is generated by hsadmin.
+
+Include /etc/proftpd/modules.conf
+
+ServerName "Hostsharing eG"
+ServerType standalone
+DeferWelcome off
+UseIPv6 off
+UseReverseDNS off
+IdentLookups off
+
+ShowSymlinks on
+MultilineRFC2228 on
+DefaultServer on
+ShowSymlinks on
+AllowOverwrite on
+
+RequireValidShell off
+DefaultRoot ~
+AllowForeignAddress on
+
+TimeoutNoTransfer 900
+TimeoutStalled 900
+TimeoutIdle 1800
+
+DisplayLogin welcome.msg
+ListOptions "-la"
+
+DenyFilter \*.*/
+
+Port 21
+MaxInstances 128
+User nobody
+Group nogroup
+
+LoadModule mod_tls.c
+TLSEngine on
+TLSProtocol SSLv23 TLSv1
+TLSRequired off
+TLSVerifyClient off
+TLSRSACertificateFile /etc/proftpd/ftp-cert.pem
+TLSRSACertificateKeyFile /etc/proftpd/ftp-key.pem
+TLSCertificateChainFile /etc/proftpd/ftp-chain.pem
+
+LogFormat default "%h %l %u %t \"%r\" %s %b"
+LogFormat auth "%v [%P] %h %t \"%r\" %s"
+LogFormat write "%h %l %u %t \"%r\" %s %b"
+
+DelayEngine off
+
+PassivePorts 60000 65534
+
+
+ Umask 022 022
+ AllowOverwrite on
+
+
+
+#----------------------------------------------------------------------
+# {PAC}.hostsharing.net
+
+ DefaultRoot ~ {PAC}
+ ServerName "Hostsharing eG"
+ AllowOverwrite on
+ AllowForeignAddress on
+ RequireValidShell off
+
+
+ Order allow,deny
+ AllowGroup {PAC}
+ DenyAll
+
+
+ User {PAC}
+ Group {PAC}
+ UserAlias anonymous {PAC}
+ UserAlias ftp {PAC}
+ DirFakeUser on ftp
+ DirFakeGroup on ftp
+ DirFakeMode 000
+ AuthAliasOnly on
+
+ DenyAll
+
+
+
+
+
+
\ No newline at end of file