選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
Robin Thoni 96a0874653 added pattern example 7年前
.idea added per host commands 7年前
extra added pattern example 7年前
sitegencli README.md 7年前
tests moved files 7年前
.gitignore .gitignore 7年前
README.md README.md 7年前
TODO simplified templates files; updated completion and generation; added bash completion for tests; TODO 7年前
install added per host commands 7年前
requirements.txt site create; bash completion 8年前

README.md

sitegen

CLI tool to build web site configuration and obtain SSL certificates from letsencrypt using certbot.

Also provide a simpler way to request SSL certificate over certbot.

Installation

#Install from pip
pip2 install sitegencli
#Install from sources
python2 setup.py install

Configuration

Configuration must be copied from /usr/local/etc/sitegen to /etc/sitegen:

sitegen.json looks like:

{
  "siteConfDir": "/etc/apache2/sites-available/",
  "siteDir": "/var/",
  "confDir": "/etc/sitegen/",
  "certRenewTime": 5356800,
  "letsencryptCommands": [
    {
      "patterns": [
        "example.com",
        "*.example.com"
      ],
      "command": {
        "letsencryptCommand": "certbot",
        "letsencryptArgs": [
          "--agree-tos",
          "--text",
          "--renew-by-default",
          "--webroot",
          "--webroot-path",
          "/tmp/acme-challenge/",
          "certonly"
        ]
      }
    },
    {
      "patterns": "*",
      "command": {
        "letsencryptCommand": "certbot",
        "letsencryptArgs": [
          "--agree-tos",
          "--text",
          "--renew-by-default",
          "--authenticator",
          "certbot-pdns:auth",
          "certonly"
        ]
      }
    }
  ],
  "letsencryptDir": "/etc/letsencrypt/live/",
  "certDir": "/etc/ssl/private/"
}

Configuration keys:

  • siteConfDir: Apache available sites folder.
  • siteDir: Where to put new site document root folder.
  • confDir: Sitegen configuration folder
  • certRenewTime: Number of seconds before SSL certificate expiration
  • letsencryptCommands: Commands to be used to generate SSL certificates
    • patterns: Fnmatch patterns to select command from domain name
    • command: The command to be executed to generate the certificate
      • letsencryptCommand: Command name
      • letsencryptArgs: Command arguments
  • letsencryptDir: The root directory used by letsencrypt (certbot)
  • certDir: Where to put symlink to certificate files

Usage

Generate a site with SSL:

sitegen --site-create example.com:default.https

Request a SSL certificate:

sitegen --cert-request example.com

See sitegen --help for more.