Skip to content

Kazarrackt/Certificate-Manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Certificate Manager

Certificate Manager is a web-based application designed to help manage SSL/TLS certificates, track their expiry dates, and send notifications when certificates are about to expire.

Features

  • Certificate Management

    • Upload certificates in various formats (.pem, .crt, .pfx, etc.)
    • Extract expiry dates automatically
    • Track certificate details and expiry dates
    • Set custom notification thresholds for each certificate
  • Remote Server Management

    • Specify the server and directory where each certificate is deployed
    • Deploy renewed certificates directly to servers via SSH
  • Notification System

    • Email notifications when certificates are nearing expiry
    • Configurable notification thresholds and frequency
    • Custom SMTP server configuration
  • Certificate Generation

    • Generate new certificates using Let's Encrypt
    • Automate certificate renewal process

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd certificate-manager
    
  2. Install dependencies:

    pip install -r requirements.txt
    
  3. Run the application:

    python app.py
    
  4. Access the web interface at http://localhost:5000

Requirements

  • Python 3.7+
  • Required Python packages (see requirements.txt)
  • For Let's Encrypt certificate generation:
    • Certbot installed on the server
    • OpenSSL for certificate operations

Configuration

Configuration settings can be modified in config/config.json:

  • SECRET_KEY: Flask secret key (change this in production!)
  • UPLOAD_FOLDER: Directory where uploaded certificates are stored
  • MAX_CONTENT_LENGTH: Maximum allowed upload size
  • EMAIL_CHECK_INTERVAL: How often (in seconds) to check for expiring certificates

Usage

Adding a Certificate

  1. Navigate to the "Add Certificate" page
  2. Upload your certificate file
  3. Provide a friendly name and optionally specify server details
  4. The application will automatically extract the expiry date
  5. Click "Add Certificate" to save

Generating a Certificate with Let's Encrypt

  1. Navigate to the "Generate Certificate" page
  2. Enter the domain name and your email address
  3. Optionally specify a custom name and server details
  4. Click "Generate Certificate"
  5. The certificate will be generated and added to your list

Deploying a Certificate to a Server

  1. View a certificate's details
  2. Ensure host and directory information is provided
  3. Click "Deploy to Server"
  4. The certificate will be uploaded to the specified location

Setting Up Email Notifications

  1. Navigate to the "Settings" page
  2. Configure your SMTP server details
  3. Set notification thresholds and frequency
  4. Save settings
  5. Use the "Run Notification Check" button to manually trigger checks

License

This project is licensed under the MIT License - see the LICENSE file for details.


© 2025 Kazlabs - Made with ♥️ by Liam Sorensen

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published