Merge branch 'master' of ssh://hsh04-source@hsh04.hostsharing.net/home/doms/source.hostsharing.net/source/hsadmin.git
This commit is contained in:
commit
502ff83910
@ -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 ) " +
|
||||
|
@ -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
|
||||
</Directory>
|
||||
|
||||
<Location /cgi-bin/>
|
||||
<Directory /home/doms/{DOM_HOSTNAME}/cgi-bin/>
|
||||
SetHandler cgi-script
|
||||
Options +ExecCGI -Indexes -MultiViews
|
||||
</Location>
|
||||
</Directory>
|
||||
|
||||
<Location /fastcgi-bin/>
|
||||
<Directory /home/doms/{DOM_HOSTNAME}/fastcgi-bin/>
|
||||
SetHandler fcgid-script
|
||||
Options +ExecCGI -Indexes -MultiViews
|
||||
</Location>
|
||||
</Directory>
|
||||
|
||||
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]
|
||||
|
||||
<!-- BEGIN: iterate -->
|
||||
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]
|
||||
|
||||
<!-- END: iterate -->
|
||||
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]
|
||||
|
||||
<!-- BEGIN: nosubdomainfallbackforhttps -->
|
||||
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]
|
||||
|
||||
<!-- END: nosubdomainfallbackforhttps -->
|
||||
AddType application/x-httpd-php .php .php5 .php4 .php3
|
||||
Action application/x-httpd-php /fastcgi-bin/phpstub
|
||||
|
@ -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
|
||||
</Directory>
|
||||
|
||||
<Location /cgi-bin/>
|
||||
<Directory /home/doms/{DOM_HOSTNAME}/cgi-bin/>
|
||||
Redirect 501 /
|
||||
</Location>
|
||||
</Directory>
|
||||
|
||||
<Location /fastcgi-bin/>
|
||||
<Directory /home/doms/{DOM_HOSTNAME}/fastcgi-bin/>
|
||||
Redirect 501 /
|
||||
</Location>
|
||||
</Directory>
|
||||
|
||||
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]
|
||||
|
||||
<!-- BEGIN: iterate --> RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:80)?$ [novary]
|
||||
RewriteCond /home/doms/{DOM_HOSTNAME}/subs/${tolower:%1} !-d
|
||||
RewriteRule ^(.*) - [redirect=404,last]
|
||||
|
||||
<!-- END: iterate -->
|
||||
</VirtualHost>
|
||||
|
||||
@ -84,6 +86,7 @@
|
||||
<!-- BEGIN: nosubdomainfallbackforhttps --> RewriteCond %{HTTP_HOST} ^(.+)\.{DOM_HOSTNAME}\.?(:443)?$ [novary]
|
||||
RewriteCond /home/doms/{DOM_HOSTNAME}/subs-ssl/${tolower:%1} !-d
|
||||
RewriteRule ^(.*) - [redirect=404,last]
|
||||
|
||||
<!-- END: nosubdomainfallbackforhttps -->
|
||||
</VirtualHost>
|
||||
<!-- END: main -->
|
@ -10,11 +10,11 @@
|
||||
|
||||
<p>Diese neue Website wurde gerade bei der
|
||||
<a href="http://www.hostsharing.net">Hostsharing eG</a>
|
||||
für {USER_NAME} eingerichtet. </p>
|
||||
für {USER_NAME} eingerichtet.</p>
|
||||
|
||||
<p>Der Inhaber der Domain ist bereits per Email unter
|
||||
<a href="mailto:webmaster(at){DOMAIN}">webmaster(at){DOMAIN}</a>
|
||||
zu erreichen. </p>
|
||||
zu erreichen.</p>
|
||||
|
||||
</body>
|
||||
|
||||
|
@ -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<String, String> hiveValues = fillHiveValues(hive);
|
||||
List<Map<String, String>> pacValuesList = fillPacValuesList(hive, null);
|
||||
// Map<String, String> 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<Map<String, String>> pacValuesList) throws ProcessorException {
|
||||
Processor domSetupProcessor = new CompoundProcessor(
|
||||
new CreateFileProcessor("/de/hsadmin/mods/pac/httpd-virtual.jtpl", new HashMap<String, String>(), 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<String, String> 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<String, String> fillEMailValues(String pacName,
|
||||
// String customerEMail, String password) {
|
||||
// Map<String, String> emailVars = new HashMap<String, String>();
|
||||
// emailVars.put("PAC", pacName);
|
||||
// emailVars.put("PASSWORD", password);
|
||||
// emailVars.put("CUST_EMAIL", customerEMail);
|
||||
// return emailVars;
|
||||
// }
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user