diff options
Diffstat (limited to 'lib/App/Acmeman/Source/Apache.pm')
-rw-r--r-- | lib/App/Acmeman/Source/Apache.pm | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/App/Acmeman/Source/Apache.pm b/lib/App/Acmeman/Source/Apache.pm index 2041bb1..b429f89 100644 --- a/lib/App/Acmeman/Source/Apache.pm +++ b/lib/App/Acmeman/Source/Apache.pm @@ -11,2 +11,3 @@ use App::Acmeman::Apache::Layout; use parent 'App::Acmeman::Source'; +use Getopt::Long qw(GetOptionsFromArray :config gnu_getopt no_ignore_case); @@ -14,3 +15,8 @@ sub new { my $class = shift; - bless { _layout => new App::Acmeman::Apache::Layout(@_) }, $class; + my $server_root; + GetOptionsFromArray(\@_, + 'server-root=s' => \$server_root); + my $self = bless { _layout => new App::Acmeman::Apache::Layout(@_) }, $class; + $self->server_root($server_root) if $server_root; + return $self; } @@ -240,3 +246,3 @@ sub setup { SSLHonorCipherOrder on - SSLCipherSuite EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:EECDH+RC4:RSA+RC4:!MD5 + SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA SSLCertificateFile /etc/ssl/acme/\$domain/cert.pem @@ -291,2 +297,7 @@ sub probe { close $nullout; + unless ($self->server_root) { + ::error("can't deduce server root directory"); + ::error("use `source = apache --server-root=DIR' in [core] section of /etc/acmeman.conf to declare it"); + exit(1); + } } |