Home Issue Cert dengan Stateless Mode
Post
Cancel

Issue Cert dengan Stateless Mode

Cara kerja Stateless mode adalah dengan cara mengidentifikasi account key yang diberikan pada saat --register-account. Hampir mirip dengan HTTP/HTTPS validation.

Jadi Anda perlu konfigurasikan web server agar account key tersebut dapat diakses dan diverifikasi melalui path .well-known/acme-challenge/

Gunakan parameter --register-account untuk mendapatkan ACCOUNT_THUMBPRINT

1
2
3
4
$ acme.sh --register-account
[Mon Feb 20 04:32:52 UTC 2023] Registering account
[Mon Feb 20 04:32:58 UTC 2023] Already registered
[Mon Feb 20 04:32:58 UTC 2023] ACCOUNT_THUMBPRINT='6fXAG9VyG0IahirPEU2ZerUtItW2DHzDzD9wZaEKpqd'

Konfigurasi web server agar dapat mengakses thumbprint

NGINX

Tambahkan baris berikut pada nginx.conf atau file virtualhost:

1
2
3
4
5
6
7
8
9
10
11
http {
...
  server {
  ...
    location ~ ^/\.well-known/acme-challenge/([-_a-zA-Z0-9]+)$ {
      default_type text/plain;
      return 200 "$1.6fXAG9VyG0IahirPEU2ZerUtItW2DHzDzD9wZaEKpqd";
    }
  ...
  }
}

CADDY

Tambahkan baris berikut pada pada file Caddyfile:

1
2
3
4
5
example.com {
  @achallenge {
    path_regexp ch ^/\.well-known/acme-challenge/([-_a-zA-Z0-9]+)$
 }
 respond @achallenge "{re.ch.1}.6fXAG9VyG0IahirPEU2ZerUtItW2DHzDzD9wZaEKpqd"

APACHE

Tambahkan baris pada httpd.conf atau file konfig vhost:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
LoadModule php7_module libexec/apache2/libphp7.so
...
<VirtualHost *:80>
    ...
    <IfModule php7_module>
        AddType application/x-httpd-php .php
        AddType application/x-httpd-php-source .phps
        <IfModule dir_module>
            DirectoryIndex index.html index.php
        </IfModule>
    </IfModule>
    ...
    <Directory "/PATH/TO/WWW/ROOT/.well-known/acme-challenge/">
        RewriteEngine On
        RewriteRule "^[-_a-zA-Z0-9]+$" "index.php"
    </Directory>
    ...
</VirtualHost>
...

Lalu tambahkan file pada /PATH/TO/WWW/ROOT/.well-known/acme-challenge/index.php:

1
2
3
4
5
<?php
header("Content-Type: text/plain");
$token = array_pop(explode('/',$_SERVER['REQUEST_URI']));
echo "$token.6fXAG9VyG0IahirPEU2ZerUtItW2DHzDzD9wZaEKpqd";
?>

Apabila pada proses verify gagal maka coba buat file .htaccess pada path acme-challenge lalu isi RewriteRule yang sama

Issue cert

1
acme.sh --issue -d example.com --stateless
This post is licensed under CC BY 4.0 by the author.