ACME Client in Rust
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
Hatter Jiang 4980d41db7 chore: add .gitignore 1 week ago
src feat: add logging, check 1 week ago
.gitignore chore: add .gitignore 1 week ago
Cargo.lock feat: domain check 1 week ago
Cargo.toml feat: domain check 1 week ago
LICENSE Initial commit 2 weeks ago
README.md chore: update help message 1 week ago
justfile fix: cargo cache 1 week ago

README.md

acme-client-rs

ACME Client in Rust

Acme client help:

$ acme-client --help
acme-client 0.5.0
Hatter Jiang <jht5945@gmail.com>
Acme auto challenge client, acme-client can issue certificates from Let's encrypt

USAGE:
    acme-client [FLAGS] [OPTIONS]

FLAGS:
        --check             Check cert config
    -h, --help              Prints help information
        --hide-logo         Hide logo
        --skip-verify-ip    Skip verify public ip
    -v, --verbose           Verbose
    -V, --version           Print version

OPTIONS:
    -a, --algo <algo>           Pki algo [default: ec384]
    -c, --config <config>       Cert config
        --dir <dir>             Account key dir [default: acme_dir]
    -d, --domain <domain>...    Domains
        --email <email>         Contract email
    -m, --mode <mode>           Mode [default: prod]
    -p, --port <port>           Http port [default: 80]
        --timeout <timeout>     Timeout (ms) [default: 5000]
    -t, --type <type>           Type http or dns [default: http]

签发一张证书示例

  • 先将域名指向对应的服务器,保证服务器上的 80 端口可被互联网访问
  • acme-client --email your-email@example.com --domain your-domain.example.com

使用参数 --config 时的配置文件示例:

{
  "certItems": [{
    "path": "dir_cryptofan_org",
    "dnsNames": ["cryptofan.org", "www.cryptofan.org"]
  }]
}

Cross build uses: https://github.com/messense/rust-musl-cross