certbot-dns-micetro


Namecertbot-dns-micetro JSON
Version 1.0.0 PyPI version JSON
download
home_pagehttps://github.com/cedarville-university/certbot-dns-micetro
SummaryCertbot plugin for Micetro DNS authentication
upload_time2025-08-20 13:47:13
maintainerNone
docs_urlNone
authorNat Biggs
requires_python>=3.6
licenseApache License 2.0
keywords certbot micetro dns ssl certificate letsencrypt
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Certbot DNS Micetro Plugin

A certbot plugin for automating DNS-01 challenges using the BlueCat Micetro DNS management system.

## Features

- Automatic DNS TXT record creation and cleanup for ACME challenges
- Support for wildcard certificates
- Secure credential management via INI files
- Preference for external DNS zones over internal zones
- Comprehensive logging and error handling

## Installation

### From PyPI

```bash
pip install certbot-dns-micetro
```

### From Source

```bash
git clone https://github.com/cedarville-university/certbot-dns-micetro.git
cd certbot-dns-micetro
pip install .
```

## Configuration

Create a credentials INI file with your Micetro API details:

```ini
# micetro.ini
# Micetro API credentials for certbot DNS authentication
# Save this file with restricted permissions: chmod 600 micetro.ini

# Username for your Micetro account
certbot_dns_micetro:dns_micetro_username = your_micetro_username

# Password for your Micetro account  
certbot_dns_micetro:dns_micetro_password = your_micetro_password

# Micetro API base URL (include the protocol and port if needed)
# Example: https://ipam.yourcompany.com/mmws/api/v2
certbot_dns_micetro:dns_micetro_url = https://your-micetro-server/mmws/api/v2
```

**Important:** Secure your credentials file:
```bash
chmod 600 micetro.ini
```

## Usage

### Obtain a certificate

```bash
certbot certonly \
  --authenticator certbot-dns-micetro:dns-micetro \
  --certbot-dns-micetro:dns-micetro-credentials /path/to/micetro.ini \
  -d example.com
```

### Obtain a wildcard certificate

```bash
certbot certonly \
  --authenticator certbot-dns-micetro:dns-micetro \
  --certbot-dns-micetro:dns-micetro-credentials /path/to/micetro.ini \
  -d example.com \
  -d "*.example.com"
```

### Certificate renewal

Certificates obtained with this plugin will be automatically renewed by certbot using the same DNS challenge method.

## API Requirements

This plugin requires:
- Micetro DNS management system with API access
- Valid user account with DNS zone management permissions
- Network connectivity to the Micetro API endpoint

The plugin authenticates using username/password credentials and obtains a session token from the `/sessions` endpoint.

## Zone Selection

When multiple DNS zones exist for the same domain (e.g., internal and external views), this plugin will:
1. Prefer external zones over internal zones
2. Use the first available zone if no external zone is found

## Troubleshooting

### Authentication Issues

- Verify your credentials in the INI file
- Ensure the Micetro API URL is correct and accessible
- Check that your user account has appropriate permissions

### DNS Issues

- Verify that the domain's DNS zone is managed by Micetro
- Ensure the zone allows dynamic DNS updates
- Check network connectivity to the Micetro server

### Debugging

Enable debug logging to troubleshoot issues:

```bash
certbot certonly \
  --authenticator certbot-dns-micetro:dns-micetro \
  --certbot-dns-micetro:dns-micetro-credentials /path/to/micetro.ini \
  -d example.com \
  --debug
```

## Development

### Setting up development environment

```bash
git clone https://github.com/cedarville-university/certbot-dns-micetro.git
cd certbot-dns-micetro
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -e .
pip install -r requirements.txt
```

### Running tests

```bash
python -m pytest tests/
```

## Contributing

1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

## License

This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.

## Acknowledgments

- Built on the [certbot](https://certbot.eff.org/) framework
- Designed for [BlueCat Micetro](https://www.bluecatnetworks.com/) DNS management
- Inspired by other certbot DNS plugins

## Support

For issues and questions:
- Open an issue on [GitHub](https://github.com/cedarville-university/certbot-dns-micetro/issues)
- Check the certbot documentation for general SSL certificate help

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/cedarville-university/certbot-dns-micetro",
    "name": "certbot-dns-micetro",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "certbot micetro dns ssl certificate letsencrypt",
    "author": "Nat Biggs",
    "author_email": "nbiggs112@cedarville.edu",
    "download_url": "https://files.pythonhosted.org/packages/c5/2f/4f1e6f30f06174f0f52cdc980956c5f91aaed760feffef58325fea2ae931/certbot_dns_micetro-1.0.0.tar.gz",
    "platform": null,
    "description": "# Certbot DNS Micetro Plugin\n\nA certbot plugin for automating DNS-01 challenges using the BlueCat Micetro DNS management system.\n\n## Features\n\n- Automatic DNS TXT record creation and cleanup for ACME challenges\n- Support for wildcard certificates\n- Secure credential management via INI files\n- Preference for external DNS zones over internal zones\n- Comprehensive logging and error handling\n\n## Installation\n\n### From PyPI\n\n```bash\npip install certbot-dns-micetro\n```\n\n### From Source\n\n```bash\ngit clone https://github.com/cedarville-university/certbot-dns-micetro.git\ncd certbot-dns-micetro\npip install .\n```\n\n## Configuration\n\nCreate a credentials INI file with your Micetro API details:\n\n```ini\n# micetro.ini\n# Micetro API credentials for certbot DNS authentication\n# Save this file with restricted permissions: chmod 600 micetro.ini\n\n# Username for your Micetro account\ncertbot_dns_micetro:dns_micetro_username = your_micetro_username\n\n# Password for your Micetro account  \ncertbot_dns_micetro:dns_micetro_password = your_micetro_password\n\n# Micetro API base URL (include the protocol and port if needed)\n# Example: https://ipam.yourcompany.com/mmws/api/v2\ncertbot_dns_micetro:dns_micetro_url = https://your-micetro-server/mmws/api/v2\n```\n\n**Important:** Secure your credentials file:\n```bash\nchmod 600 micetro.ini\n```\n\n## Usage\n\n### Obtain a certificate\n\n```bash\ncertbot certonly \\\n  --authenticator certbot-dns-micetro:dns-micetro \\\n  --certbot-dns-micetro:dns-micetro-credentials /path/to/micetro.ini \\\n  -d example.com\n```\n\n### Obtain a wildcard certificate\n\n```bash\ncertbot certonly \\\n  --authenticator certbot-dns-micetro:dns-micetro \\\n  --certbot-dns-micetro:dns-micetro-credentials /path/to/micetro.ini \\\n  -d example.com \\\n  -d \"*.example.com\"\n```\n\n### Certificate renewal\n\nCertificates obtained with this plugin will be automatically renewed by certbot using the same DNS challenge method.\n\n## API Requirements\n\nThis plugin requires:\n- Micetro DNS management system with API access\n- Valid user account with DNS zone management permissions\n- Network connectivity to the Micetro API endpoint\n\nThe plugin authenticates using username/password credentials and obtains a session token from the `/sessions` endpoint.\n\n## Zone Selection\n\nWhen multiple DNS zones exist for the same domain (e.g., internal and external views), this plugin will:\n1. Prefer external zones over internal zones\n2. Use the first available zone if no external zone is found\n\n## Troubleshooting\n\n### Authentication Issues\n\n- Verify your credentials in the INI file\n- Ensure the Micetro API URL is correct and accessible\n- Check that your user account has appropriate permissions\n\n### DNS Issues\n\n- Verify that the domain's DNS zone is managed by Micetro\n- Ensure the zone allows dynamic DNS updates\n- Check network connectivity to the Micetro server\n\n### Debugging\n\nEnable debug logging to troubleshoot issues:\n\n```bash\ncertbot certonly \\\n  --authenticator certbot-dns-micetro:dns-micetro \\\n  --certbot-dns-micetro:dns-micetro-credentials /path/to/micetro.ini \\\n  -d example.com \\\n  --debug\n```\n\n## Development\n\n### Setting up development environment\n\n```bash\ngit clone https://github.com/cedarville-university/certbot-dns-micetro.git\ncd certbot-dns-micetro\npython -m venv venv\nsource venv/bin/activate  # On Windows: venv\\Scripts\\activate\npip install -e .\npip install -r requirements.txt\n```\n\n### Running tests\n\n```bash\npython -m pytest tests/\n```\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add some amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n## License\n\nThis project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- Built on the [certbot](https://certbot.eff.org/) framework\n- Designed for [BlueCat Micetro](https://www.bluecatnetworks.com/) DNS management\n- Inspired by other certbot DNS plugins\n\n## Support\n\nFor issues and questions:\n- Open an issue on [GitHub](https://github.com/cedarville-university/certbot-dns-micetro/issues)\n- Check the certbot documentation for general SSL certificate help\n",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "Certbot plugin for Micetro DNS authentication",
    "version": "1.0.0",
    "project_urls": {
        "Bug Reports": "https://github.com/cedarville-university/certbot-dns-micetro/issues",
        "Homepage": "https://github.com/cedarville-university/certbot-dns-micetro",
        "Source": "https://github.com/cedarville-university/certbot-dns-micetro"
    },
    "split_keywords": [
        "certbot",
        "micetro",
        "dns",
        "ssl",
        "certificate",
        "letsencrypt"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8cb2ab756ac5f69b4c3ff0526d27e4b7c714ebe86eeeeecb246d396efaa53df9",
                "md5": "831f18e814c91fdce90ebcb94a893c61",
                "sha256": "30b5cbea6fbd2f8bd2cba4d1a68d0f74b180df49bf5033c85f3bb1155962752a"
            },
            "downloads": -1,
            "filename": "certbot_dns_micetro-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "831f18e814c91fdce90ebcb94a893c61",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 10480,
            "upload_time": "2025-08-20T13:47:12",
            "upload_time_iso_8601": "2025-08-20T13:47:12.343179Z",
            "url": "https://files.pythonhosted.org/packages/8c/b2/ab756ac5f69b4c3ff0526d27e4b7c714ebe86eeeeecb246d396efaa53df9/certbot_dns_micetro-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c52f4f1e6f30f06174f0f52cdc980956c5f91aaed760feffef58325fea2ae931",
                "md5": "d08797c21491741c57ab9dab30985bd8",
                "sha256": "fdbcc291299011f02fe5289d51b915236b122bed98bf3dee18d4018b235c48e2"
            },
            "downloads": -1,
            "filename": "certbot_dns_micetro-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "d08797c21491741c57ab9dab30985bd8",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 9920,
            "upload_time": "2025-08-20T13:47:13",
            "upload_time_iso_8601": "2025-08-20T13:47:13.670640Z",
            "url": "https://files.pythonhosted.org/packages/c5/2f/4f1e6f30f06174f0f52cdc980956c5f91aaed760feffef58325fea2ae931/certbot_dns_micetro-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-20 13:47:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "cedarville-university",
    "github_project": "certbot-dns-micetro",
    "github_not_found": true,
    "lcname": "certbot-dns-micetro"
}
        
Elapsed time: 0.77407s