mirror of
https://github.com/plantroon/acme.sh.git
synced 2024-12-27 07:21:53 +00:00
support "--listen-v4" and "--listen-v6" (#311)
https://github.com/Neilpang/acme.sh/issues/310
This commit is contained in:
parent
c583d6bb49
commit
6ae0f7f5c6
62
acme.sh
62
acme.sh
@ -1199,8 +1199,16 @@ _startserver() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
_debug "_NC" "$_NC"
|
|
||||||
_debug Le_HTTPPort "$Le_HTTPPort"
|
_debug Le_HTTPPort "$Le_HTTPPort"
|
||||||
|
_debug Le_Listen_V4 "$Le_Listen_V4"
|
||||||
|
_debug Le_Listen_V6 "$Le_Listen_V6"
|
||||||
|
if [ "$Le_Listen_V4" ] ; then
|
||||||
|
_NC="$_NC -4"
|
||||||
|
elif [ "$Le_Listen_V6" ] ; then
|
||||||
|
_NC="$_NC -6"
|
||||||
|
fi
|
||||||
|
_debug "_NC" "$_NC"
|
||||||
|
|
||||||
# while true ; do
|
# while true ; do
|
||||||
if [ "$DEBUG" ] ; then
|
if [ "$DEBUG" ] ; then
|
||||||
if ! printf "HTTP/1.1 200 OK\r\n\r\n$content" | $_NC -p $Le_HTTPPort ; then
|
if ! printf "HTTP/1.1 200 OK\r\n\r\n$content" | $_NC -p $Le_HTTPPort ; then
|
||||||
@ -1264,13 +1272,14 @@ _sleep() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# _starttlsserver san_a san_b port content
|
# _starttlsserver san_a san_b port content _ncaddr
|
||||||
_starttlsserver() {
|
_starttlsserver() {
|
||||||
_info "Starting tls server."
|
_info "Starting tls server."
|
||||||
san_a="$1"
|
san_a="$1"
|
||||||
san_b="$2"
|
san_b="$2"
|
||||||
port="$3"
|
port="$3"
|
||||||
content="$4"
|
content="$4"
|
||||||
|
opaddr="$5"
|
||||||
|
|
||||||
_debug san_a "$san_a"
|
_debug san_a "$san_a"
|
||||||
_debug san_b "$san_b"
|
_debug san_b "$san_b"
|
||||||
@ -1298,12 +1307,27 @@ _starttlsserver() {
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#start openssl
|
__S_OPENSSL="openssl s_server -cert $TLS_CERT -key $TLS_KEY "
|
||||||
_debug "openssl s_server -cert \"$TLS_CERT\" -key \"$TLS_KEY\" -accept $port -tlsextdebug"
|
if [ "$opaddr" ] ; then
|
||||||
if [ "$DEBUG" ] && [ "$DEBUG" -ge "2" ] ; then
|
__S_OPENSSL="$__S_OPENSSL -accept $opaddr:$port"
|
||||||
(printf "HTTP/1.1 200 OK\r\n\r\n$content" | openssl s_server -cert "$TLS_CERT" -key "$TLS_KEY" -accept $port -tlsextdebug ) &
|
|
||||||
else
|
else
|
||||||
(printf "HTTP/1.1 200 OK\r\n\r\n$content" | openssl s_server -cert "$TLS_CERT" -key "$TLS_KEY" -accept $port >/dev/null 2>&1) &
|
__S_OPENSSL="$__S_OPENSSL -accept $port"
|
||||||
|
fi
|
||||||
|
|
||||||
|
_debug Le_Listen_V4 "$Le_Listen_V4"
|
||||||
|
_debug Le_Listen_V6 "$Le_Listen_V6"
|
||||||
|
if [ "$Le_Listen_V4" ] ; then
|
||||||
|
__S_OPENSSL="$__S_OPENSSL -4"
|
||||||
|
elif [ "$Le_Listen_V6" ] ; then
|
||||||
|
__S_OPENSSL="$__S_OPENSSL -6"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#start openssl
|
||||||
|
_debug "$__S_OPENSSL"
|
||||||
|
if [ "$DEBUG" ] && [ "$DEBUG" -ge "2" ] ; then
|
||||||
|
(printf "HTTP/1.1 200 OK\r\n\r\n$content" | $__S_OPENSSL -tlsextdebug ) &
|
||||||
|
else
|
||||||
|
(printf "HTTP/1.1 200 OK\r\n\r\n$content" | $__S_OPENSSL >/dev/null 2>&1) &
|
||||||
fi
|
fi
|
||||||
|
|
||||||
serverproc="$!"
|
serverproc="$!"
|
||||||
@ -1997,6 +2021,16 @@ issue() {
|
|||||||
_savedomainconf "Le_RenewHook" "$Le_RenewHook"
|
_savedomainconf "Le_RenewHook" "$Le_RenewHook"
|
||||||
_savedomainconf "Le_LocalAddress" "$Le_LocalAddress"
|
_savedomainconf "Le_LocalAddress" "$Le_LocalAddress"
|
||||||
|
|
||||||
|
|
||||||
|
if [ "$Le_Listen_V4" ] ; then
|
||||||
|
_savedomainconf "Le_Listen_V4" "$Le_Listen_V4"
|
||||||
|
_cleardomainconf Le_Listen_V6
|
||||||
|
elif [ "$Le_Listen_V6" ] ; then
|
||||||
|
_savedomainconf "Le_Listen_V6" "$Le_Listen_V6"
|
||||||
|
_cleardomainconf Le_Listen_V4
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
Le_API="$API"
|
Le_API="$API"
|
||||||
_savedomainconf "Le_API" "$Le_API"
|
_savedomainconf "Le_API" "$Le_API"
|
||||||
|
|
||||||
@ -3435,7 +3469,7 @@ Parameters:
|
|||||||
--days Specifies the days to renew the cert when using '--issue' command. The max value is $MAX_RENEW days.
|
--days Specifies the days to renew the cert when using '--issue' command. The max value is $MAX_RENEW days.
|
||||||
--httpport Specifies the standalone listening port. Only valid if the server is behind a reverse proxy or load balancer.
|
--httpport Specifies the standalone listening port. Only valid if the server is behind a reverse proxy or load balancer.
|
||||||
--tlsport Specifies the standalone tls listening port. Only valid if the server is behind a reverse proxy or load balancer.
|
--tlsport Specifies the standalone tls listening port. Only valid if the server is behind a reverse proxy or load balancer.
|
||||||
--local-address Specifies the standalone server listening address, in case you have multiple ip addresses.
|
--local-address Specifies the standalone/tls server listening address, in case you have multiple ip addresses.
|
||||||
--listraw Only used for '--list' command, list the certs in raw format.
|
--listraw Only used for '--list' command, list the certs in raw format.
|
||||||
--stopRenewOnError, -se Only valid for '--renewall' command. Stop if one cert has error in renewal.
|
--stopRenewOnError, -se Only valid for '--renewall' command. Stop if one cert has error in renewal.
|
||||||
--insecure Do not check the server certificate, in some devices, the api server's certificate may not be trusted.
|
--insecure Do not check the server certificate, in some devices, the api server's certificate may not be trusted.
|
||||||
@ -3448,6 +3482,8 @@ Parameters:
|
|||||||
--renew-hook Command to be run once for each successfully renewed certificate.
|
--renew-hook Command to be run once for each successfully renewed certificate.
|
||||||
--ocsp-must-staple, --ocsp Generate ocsp must Staple extension.
|
--ocsp-must-staple, --ocsp Generate ocsp must Staple extension.
|
||||||
--auto-upgrade [0|1] Valid for '--upgrade' command, indicating whether to upgrade automatically in future.
|
--auto-upgrade [0|1] Valid for '--upgrade' command, indicating whether to upgrade automatically in future.
|
||||||
|
--listen-v4 Force standalone/tls server to listen at ipv4.
|
||||||
|
--listen-v6 Force standalone/tls server to listen at ipv6.
|
||||||
"
|
"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3555,6 +3591,8 @@ _process() {
|
|||||||
_local_address=""
|
_local_address=""
|
||||||
_log_level=""
|
_log_level=""
|
||||||
_auto_upgrade=""
|
_auto_upgrade=""
|
||||||
|
_listen_v4=""
|
||||||
|
_listen_v6=""
|
||||||
while [ ${#} -gt 0 ] ; do
|
while [ ${#} -gt 0 ] ; do
|
||||||
case "${1}" in
|
case "${1}" in
|
||||||
|
|
||||||
@ -3870,6 +3908,14 @@ _process() {
|
|||||||
fi
|
fi
|
||||||
AUTO_UPGRADE="$_auto_upgrade"
|
AUTO_UPGRADE="$_auto_upgrade"
|
||||||
;;
|
;;
|
||||||
|
--listen-v4)
|
||||||
|
_listen_v4="1"
|
||||||
|
Le_Listen_V4="$_listen_v4"
|
||||||
|
;;
|
||||||
|
--listen-v6)
|
||||||
|
_listen_v6="1"
|
||||||
|
Le_Listen_V6="$_listen_v6"
|
||||||
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
_err "Unknown parameter : $1"
|
_err "Unknown parameter : $1"
|
||||||
|
Loading…
Reference in New Issue
Block a user