diff --git a/hsarback/src/de/hsadmin/mods/dom/DomainProcessorFactory.java b/hsarback/src/de/hsadmin/mods/dom/DomainProcessorFactory.java index d5ef673..7572ddd 100644 --- a/hsarback/src/de/hsadmin/mods/dom/DomainProcessorFactory.java +++ b/hsarback/src/de/hsadmin/mods/dom/DomainProcessorFactory.java @@ -311,10 +311,10 @@ public class DomainProcessorFactory implements EntityProcessorFactory { } Processor domSetupProcessor = new CompoundProcessor( createDomainDirectoriesProcessor(dom, templateVars), - new CreateFileProcessor(selectVHostTemplate(dom), templateVars, "/etc/apache2/sites-available/" + domName + ".tmp", "root", "root", "644", true), + new CreateFileProcessor(selectVHostTemplate(dom), templateVars, iterateMaps.iterator(), "/etc/apache2/sites-available/" + domName + ".tmp", "root", "root", "644", true), new ShellProcessor("ls /etc/apache2/pems/" + pac + ".pem >/dev/null 2>&1 " + - " && sed -i '/SSLCertificate.*default/d' " + "/etc/apache2/sites-available/" + domName + ".tmp" + - " && (ls /etc/apache2/pems/" + pac + ".chain.pem >/dev/null 2>&1 || sed -i '/SSLCertificateChain.*" + pac + "/d' " + "/etc/apache2/sites-available/" + domName + ".tmp)" + + "&& sed -i '/SSLCertificate.*default/d' " + "/etc/apache2/sites-available/" + domName + ".tmp" + + " && (ls /etc/apache2/pems/" + pac + ".chain.pem >/dev/null 2>&1 || sed -i '/SSLCertificateChain.*" + pac + "/d' " + "/etc/apache2/sites-available/" + domName + ".tmp )" + " || sed -i '/SSLCertificate.*" + pac + "/d' " + "/etc/apache2/sites-available/" + domName + ".tmp"), new ShellProcessor( " (diff -q /etc/apache2/sites-available/" + domName + ".tmp /etc/apache2/sites-available/" + domName + " && rm /etc/apache2/sites-available/" + domName + ".tmp ) " + diff --git a/hsarback/src/de/hsadmin/mods/dom/httpd-vhost-dynamic.jtpl b/hsarback/src/de/hsadmin/mods/dom/httpd-vhost-dynamic.jtpl index 7ff5764..e8d7af6 100644 --- a/hsarback/src/de/hsadmin/mods/dom/httpd-vhost-dynamic.jtpl +++ b/hsarback/src/de/hsadmin/mods/dom/httpd-vhost-dynamic.jtpl @@ -7,7 +7,7 @@ ServerName {DOM_HOSTNAME} ServerAlias *.{DOM_HOSTNAME} - ServerAdmin {DOM_USERNAME}@{HIVE}.hostsharing.net + ServerAdmin webmaster@{DOM_HOSTNAME} SuexecUserGroup {DOM_USERNAME} {PAC} @@ -24,15 +24,15 @@ AllowOverride AuthConfig FileInfo Indexes Limit - + SetHandler cgi-script Options +ExecCGI -Indexes -MultiViews - + - + SetHandler fcgid-script Options +ExecCGI -Indexes -MultiViews - + RewriteEngine On RewriteOptions Inherit @@ -42,12 +42,14 @@ RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:80)?$ [novary] RewriteCond /home/doms/{DOM_HOSTNAME}/subs/${tolower:%1} -d RewriteRule ^(.*) /home/doms/{DOM_HOSTNAME}/subs/${tolower:%1}$1 [last] + RewriteCond %{REQUEST_URI} !^/cgi-bin/ RewriteCond %{REQUEST_URI} !^/fastcgi-bin/ RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:80)?$ [novary] RewriteCond /home/doms/{DOM_HOSTNAME}/subs/${tolower:%1} !-d RewriteRule ^(.*) - [redirect=404,last] + AddType application/x-httpd-php .php .php5 .php4 .php3 Action application/x-httpd-php /fastcgi-bin/phpstub @@ -100,12 +102,14 @@ RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:443)?$ [novary] RewriteCond /home/doms/{DOM_HOSTNAME}/subs-ssl/${tolower:%1} -d RewriteRule ^(.*) /home/doms/{DOM_HOSTNAME}/subs-ssl/${tolower:%1}$1 [last] + RewriteCond %{REQUEST_URI} !^/cgi-bin/ RewriteCond %{REQUEST_URI} !^/fastcgi-bin/ RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:443)?$ [novary] RewriteCond /home/doms/{DOM_HOSTNAME}/subs-ssl/${tolower:%1} !-d RewriteRule ^(.*) - [redirect=404,last] + AddType application/x-httpd-php .php .php5 .php4 .php3 Action application/x-httpd-php /fastcgi-bin/phpstub diff --git a/hsarback/src/de/hsadmin/mods/dom/httpd-vhost-static.jtpl b/hsarback/src/de/hsadmin/mods/dom/httpd-vhost-static.jtpl index 0f0cc6e..4a2cb1c 100644 --- a/hsarback/src/de/hsadmin/mods/dom/httpd-vhost-static.jtpl +++ b/hsarback/src/de/hsadmin/mods/dom/httpd-vhost-static.jtpl @@ -7,7 +7,7 @@ ServerName {DOM_HOSTNAME} ServerAlias *.{DOM_HOSTNAME} - ServerAdmin {DOM_USERNAME}@{HIVE}.hostsharing.net + ServerAdmin webmaster@{DOM_HOSTNAME} SuexecUserGroup {DOM_USERNAME} {PAC} @@ -21,13 +21,13 @@ AllowOverride AuthConfig FileInfo Indexes Limit - + Redirect 501 / - + - + Redirect 501 / - + RewriteEngine On RewriteOptions Inherit @@ -35,9 +35,11 @@ RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:80)?$ [novary] RewriteCond /home/doms/{DOM_HOSTNAME}/subs/${tolower:%1} -d RewriteRule ^(.*) /home/doms/{DOM_HOSTNAME}/subs/${tolower:%1}$1 [last] + RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:80)?$ [novary] RewriteCond /home/doms/{DOM_HOSTNAME}/subs/${tolower:%1} !-d RewriteRule ^(.*) - [redirect=404,last] + @@ -84,6 +86,7 @@ RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:443)?$ [novary] RewriteCond /home/doms/{DOM_HOSTNAME}/subs-ssl/${tolower:%1} !-d RewriteRule ^(.*) - [redirect=404,last] + \ No newline at end of file diff --git a/hsarback/src/de/hsadmin/mods/dom/index.html.jtpl b/hsarback/src/de/hsadmin/mods/dom/index.html.jtpl index b55e909..08d1a9d 100644 --- a/hsarback/src/de/hsadmin/mods/dom/index.html.jtpl +++ b/hsarback/src/de/hsadmin/mods/dom/index.html.jtpl @@ -10,11 +10,11 @@

Diese neue Website wurde gerade bei der Hostsharing eG -für {USER_NAME} eingerichtet.

+für {USER_NAME} eingerichtet.

Der Inhaber der Domain ist bereits per Email unter webmaster(at){DOMAIN} -zu erreichen.

+zu erreichen.

diff --git a/hsarback/src/de/hsadmin/mods/pac/PacProcessorFactory.java b/hsarback/src/de/hsadmin/mods/pac/PacProcessorFactory.java index d729873..f764792 100644 --- a/hsarback/src/de/hsadmin/mods/pac/PacProcessorFactory.java +++ b/hsarback/src/de/hsadmin/mods/pac/PacProcessorFactory.java @@ -29,13 +29,11 @@ public class PacProcessorFactory implements EntityProcessorFactory { EntityManager em, T entity) throws ProcessorException { Pac pac = (Pac) entity; String pacName = pac.getName(); -// String customerEMail = pac.getCustomer().getContractualContact().getEmail(); Hive hive = pac.getHive(); UnixUser unixUser = getPacAdminUser(pac); String password = PasswordTool.generatePassword(); Map hiveValues = fillHiveValues(hive); List> pacValuesList = fillPacValuesList(hive, null); -// Map emailVars = fillEMailValues(pacName, customerEMail, password); Processor priProcessor = new CompoundProcessor( createAddUserProc(pacName, unixUser, password), createSetQuotaProc(pac), @@ -46,20 +44,24 @@ public class PacProcessorFactory implements EntityProcessorFactory { createProftpdConfProc(hiveValues, pacValuesList), createMakePacDirectoryStructure(unixUser), createIfUp(pacName), - createHttpdVirtualProc(pacName, pacValuesList)); + createHttpdVirtualProc(pacName, pacValuesList), + createAccountingRulesProc()); WaitingTasksProcessor secProcessor = new WaitingTasksProcessor(priProcessor); -// secProcessor.appendProcessor(pac.getHiveName(), createSendEMailProc(pacName, customerEMail, emailVars), "send email to customer"); return secProcessor; } + private Processor createAccountingRulesProc() { + return new ShellProcessor("mk-iptables-rules Accounting"); + } + private Processor createHttpdVirtualProc( String pacName, List> pacValuesList) throws ProcessorException { Processor domSetupProcessor = new CompoundProcessor( new CreateFileProcessor("/de/hsadmin/mods/pac/httpd-virtual.jtpl", new HashMap(), pacValuesList.iterator(), "/etc/apache2/virtual.conf.tmp", "root", "root", "644", true), new ShellProcessor("ls /etc/apache2/pems/" + pacName + ".pem >/dev/null 2>&1 " + "&& sed -i '/SSLCertificate.*default/d' " + "/etc/apache2/apache.conf.tmp" + " && (ls /etc/apache2/pems/" + pacName + ".chain.pem >/dev/null 2>&1" - + " || sed -i '/SSLCertificateChain.*" + pacName + "/d' "/etc/apache2/virtual.conf.tmp)" - + " || sed -i '/SSLCertificate.*" + pacName"/d' " + "/etc/apache2/virtual.conf.tmp"), + + " || sed -i '/SSLCertificateChain.*" + pacName + "/d' " + "/etc/apache2/virtual.conf.tmp)" + + " || sed -i '/SSLCertificate.*" + pacName + "/d' " + "/etc/apache2/virtual.conf.tmp"), new ShellProcessor("(diff -q /etc/apache2/apache.conf.tmp /etc/apache2/apache.conf" + " && rm /etc/apache2/apache.conf.tmp)" + " || invoke-rc.d apache2 reload >/dev/null 2>&1")); @@ -85,7 +87,8 @@ public class PacProcessorFactory implements EntityProcessorFactory { createNetworkInterfacesProc(hiveValues, pacValuesList), createSudouersProc(hiveValues, pacValuesList), createProftpdConfProc(hiveValues, pacValuesList), - createHttpdVirtualProc(pac.getName(), pacValuesList))); + createHttpdVirtualProc(pac.getName(), pacValuesList), + createAccountingRulesProc())); waitingProcessor.appendProcessor(pac.getHiveName(), createDelUserProc(pac.getName()), "remove packet"); return waitingProcessor; } @@ -155,11 +158,13 @@ public class PacProcessorFactory implements EntityProcessorFactory { String username = unixUser.getName(); return new ShellProcessor("chmod 711 " + homedir + " && " + "su -l " + username + " -s \"/bin/bash\" -c \"mkdir -p " + + homedir + "/.bak " + homedir + "/doms " + homedir + "/etc " + homedir + "/users " + homedir + "/var " + "\" && " + + "chmod 0700 " + homedir + "/.bak && " + "chown httpd " + homedir + "/doms && " + "chmod 1550 " + homedir + "/doms && " + "chmod 2700 " + homedir + "/etc && " + @@ -168,16 +173,6 @@ public class PacProcessorFactory implements EntityProcessorFactory { ); } -// private Processor createSendEMailProc(String pacName, -// String customerEMail, Map emailVars) throws ProcessorException { -// return new MailerProcessor( -// customerEMail, -// "Zugangsdaten des neue Hostsharing Pakets " + pacName, -// "/de/hsadmin/mods/pac/email_new_pac_account.jtpl", -// emailVars -// ); -// } - private Processor createIfUp(String pacName) { return new ShellProcessor("ifup eth0:" + pacName); } @@ -224,13 +219,4 @@ public class PacProcessorFactory implements EntityProcessorFactory { return pacValuesList; } -// private Map fillEMailValues(String pacName, -// String customerEMail, String password) { -// Map emailVars = new HashMap(); -// emailVars.put("PAC", pacName); -// emailVars.put("PASSWORD", password); -// emailVars.put("CUST_EMAIL", customerEMail); -// return emailVars; -// } - }