mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-03-26 03:03:32 +01:00
Optimized mds
This commit is contained in:
parent
7b17362986
commit
2667f3c259
35
README.md
35
README.md
@ -12,6 +12,37 @@ Our intuitive interface, coupled with in-depth documentation, makes it accessibl
|
||||
|
||||
With CyMaIS, setting up a secure, scalable, and robust IT infrastructure is not just faster and easier, but also aligned with the best industry practices, ensuring that your organization stays ahead in the ever-evolving digital landscape.
|
||||
|
||||
## License
|
||||
## Documentation
|
||||
|
||||
This project is licensed from Kevin Veen-Birkenbach. The full license is available in the [LICENSE.md](./LICENSE.md) of this repository.
|
||||
Explore the key documents for detailed information about CyMaIS:
|
||||
|
||||
- [Features](01_FEATURES.md)
|
||||
*Overview of the core features and capabilities of CyMaIS.*
|
||||
|
||||
- [Vision](02_VISION.md)
|
||||
*Learn about the vision and long-term goals behind CyMaIS.*
|
||||
|
||||
- [Installation](03_INSTALLATION.md)
|
||||
*Step-by-step instructions for installing the system and its dependencies.*
|
||||
|
||||
- [Setup](04_SETUP.md)
|
||||
*Detailed procedures for configuring and deploying CyMaIS.*
|
||||
|
||||
- [Enterprise](05_ENTERPRISE.md)
|
||||
*Guidance and best practices for enterprise deployments.*
|
||||
|
||||
- [Donate](06_DONATE.md)
|
||||
*Information on how to support and donate to the CyMaIS project.*
|
||||
|
||||
- [Code of Conduct](CODE_OF_CONDUCT.md)
|
||||
*Our guidelines to ensure a respectful and collaborative community.*
|
||||
|
||||
- [Contributing](CONTRIBUTING.md)
|
||||
*Learn how to contribute to CyMaIS.*
|
||||
|
||||
- [License](LICENSE.md)
|
||||
*Legal information regarding the use and distribution of CyMaIS.*
|
||||
|
||||
---
|
||||
|
||||
Feel free to explore the individual documents for more detailed information. Enjoy using CyMaIS, and thank you for your interest in our project!
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This Ansible role automates data backups to a swappable USB device. It triggers the backup process automatically when the USB is mounted, allowing for customizable source and destination paths and integrating with systemd for reliable execution.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for Archlinux, this role ensures that backups are performed consistently with minimal manual intervention. It leverages efficient synchronization methods and provides a seamless integration with systemd to manage the backup service.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This Ansible role pulls the [directory-validator](https://github.com/kevinveenbirkenbach/directory-validator.git) repository to a predefined location. It is used by the backup-docker-to-local and cleanup-failed-docker-backups roles to verify whether backups have been successfully created.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role retrieves the latest version of the directory-validator from its Git repository and installs it into the designated folder (configured via the `backup_directory_validator_folder` variable). A fact is set to ensure that the repository is pulled only once per playbook run.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This Ansible role automates the process of backing up Docker volumes to a local folder. It pulls the [backup-docker-to-local repository](https://github.com/kevinveenbirkenbach/backup-docker-to-local.git), installs required software, configures systemd services for both standard and "everything" backup modes, and seeds backup database entries as needed.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for Archlinux, this role ensures that Docker volume backups are performed reliably with minimal manual intervention. It integrates with several dependent roles to verify backup success and manage related tasks, including:
|
||||
- [backup-directory-validator](../backup-directory-validator/) – Validates backup directories.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role pulls backups from a remote server and stores them locally using rsync with retry logic. It is designed to retrieve remote backup data and integrate with your overall backup scheme.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for Archlinux, this role is a key component of a comprehensive backup system. It works in conjunction with other roles to ensure that backup data is collected, verified, and maintained. The role uses a Bash script to pull backups, manage remote connections, and handle incremental backup creation.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role sets up a dedicated backup user (`backup`) for performing secure backup operations. It creates the user, configures a restricted SSH environment with a custom `authorized_keys` template and an SSH wrapper script, and grants necessary sudo rights for executing rsync. This configuration helps ensure controlled and secure access specifically for backup processes.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role is a critical component in a secure backup scheme. By isolating backup operations to a dedicated user, it minimizes the risk of unauthorized actions. The role configures the SSH environment so that only specific, allowed commands can be executed, and it sets up passwordless sudo rights for rsync, ensuring smooth and secure backup operations.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role sets up and manages the host as a backup provider. It establishes the framework for secure backup operations and integrates with other roles to facilitate reliable backup data management.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for automated backup processes, this role:
|
||||
- Configures the host to provide backup services.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role automates the cleanup of old backups by executing a Python script that deletes outdated backup versions based on disk usage thresholds. It ensures that backup storage does not exceed a defined usage percentage.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for effective disk space management, this role:
|
||||
- Installs required packages (e.g. [lsof](https://en.wikipedia.org/wiki/Lsof) and [psutil](https://pypi.org/project/psutil/)) using pacman.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role sets up a systemd timer to schedule the periodic cleanup of old backups. It leverages the cleanup-backups-service role to perform the actual cleanup operation.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for automated maintenance, this role:
|
||||
- Sets a fact for the service name.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role frees disk space by executing a script that cleans up temporary files, clears package caches, and optionally cleans up backup directories and Docker resources when disk usage exceeds a specified threshold.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for efficient storage management, this role:
|
||||
- Creates a directory for disk cleanup scripts.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role cleans up failed Docker backups by pulling a [Git repository](https://github.com/kevinveenbirkenbach/cleanup-failed-docker-backups) that contains cleanup scripts and configuring a systemd service to execute them. It ensures that failed or incomplete backups are removed to free up disk space and maintain a healthy backup environment.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for backup maintenance, this role:
|
||||
- Clones the cleanup-failed-docker-backups repository.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role adapts iptables rules to enable proper connectivity for a WireGuard client running behind a NAT or firewall. It ensures that traffic is forwarded correctly by applying necessary masquerading rules.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for environments with network address translation (NAT), this role:
|
||||
- Executes shell commands to modify iptables rules.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role manages WireGuard on a client system. It sets up essential services and scripts to configure and optimize WireGuard connectivity. Additionally, it provides a link to an Administration document for creating client keys.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for client configurations, this role:
|
||||
- Deploys a systemd service (`set-mtu.cymais.service`) and its associated script to set the MTU on specified network interfaces.
|
||||
|
@ -4,7 +4,7 @@ This Ansible role provides the necessary tasks, files, templates, and variables
|
||||
|
||||
---
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
- **Database Variables**
|
||||
Defined in [./vars/database.yml](./vars/database.yml), these variables include:
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
This role manages the setup, reset, and maintenance of a Friendica instance running with Docker.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Friendica is a decentralized social networking platform. This role helps manage Friendica in a containerized environment with Docker and provides tools for debugging, resetting, and maintaining the installation.
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Docker-GitLab Ansible Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This Ansible role is designed for setting up and managing a GitLab server running in a Docker container. It automates the process of installing GitLab, configuring its environment, and managing dependencies such as a PostgreSQL database and an Nginx reverse proxy.
|
||||
|
||||
## Features
|
||||
|
@ -1,6 +1,6 @@
|
||||
# MariaDB Docker Ansible Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This Ansible role facilitates the deployment of a MariaDB server using Docker. It is designed to ensure ease of installation and configuration, with the flexibility to adapt to different environments.
|
||||
|
||||
## Features
|
||||
|
@ -1,6 +1,6 @@
|
||||
# 🚀 Docker Mastodon with OIDC Support
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This project provides a **Docker-based setup for Mastodon**, including full **OIDC (OpenID Connect) authentication support**. It is maintained by **[Kevin Veen-Birkenbach](https://www.veen.world)**.
|
||||
|
||||
## Credits 📝
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Docker Setup Matrix via Ansible
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
This document serves as the README for the `docker-ansible-matrix` role, a part of the `CyMaIS` project. This role automates the deployment of a Matrix server using Ansible.
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Docker-Matrix Role README
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
This document serves as the README for the `docker-matrix` role, a part of the `CyMaIS` project. This role automates the deployment of a Matrix server using Docker. This role was developed by [Kevin Veen-Birkenbach](https://www.veen.world/)
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
Welcome to the **Docker OAuth2 Proxy Role**! 🌟 This role contains helper functions to set up an OAuth2 proxy using [OAuth2 Proxy](https://github.com/oauth2-proxy/oauth2-proxy), a tool designed to secure applications by protecting them with OAuth2 authentication. 💡
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The OAuth2 Proxy is used to shield specific web applications from unauthorized access by requiring users to authenticate via an external identity provider, such as Keycloak. This role simplifies the setup process by providing templated configurations and tasks to integrate the OAuth2 Proxy with Docker Compose and Keycloak.
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
# OpenProject Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
This role is designed to deploy the [OpenProject](https://www.openproject.org/) application using Docker. It includes tasks for setting up the environment, pulling the Docker repository, and configuring a reverse proxy with Nginx. It was developed by [Kevin Veen-Birkenbach](https://www.veen.world/)
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Docker-Postgres Ansible Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This Ansible role is designed to deploy a PostgreSQL database using Docker. It includes tasks for setting up a Docker network, installing PostgreSQL in a Docker container, and initializing the database with a specified user and database.
|
||||
|
||||
## Role Variables
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This Ansible role automates the building and deployment of Sphinx documentation using Docker. It pulls the CyMaIS repository, builds the documentation with Sphinx, and serves the generated HTML files via a lightweight HTTP server.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for containerized environments, this role ensures that your documentation is consistently built and deployed with minimal manual intervention. It leverages Docker and Docker Compose for reproducible builds, enabling dynamic configuration of source and output directories.
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
# health-nginx
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
`health-nginx` is an Ansible role designed to send health reports for nginx configurations. It leverages Python scripting to check the status of nginx server configurations and reports back any issues. This role is especially useful for maintaining the health of nginx servers in a dynamic environment.
|
||||
|
||||
## Requirements
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Hunspell
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README accompanies the Hunspell Playbook, located within the `cymais` repository. The playbook is focused on installing Hunspell, a widely-used spell checker, along with various language packages to enhance its functionality.
|
||||
|
||||
## Playbook Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Java
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README file is for the Java role, which is part of the `cymais`. The role is specifically designed to automate the installation of Java on a system, focusing on the OpenJDK 11 version.
|
||||
|
||||
## Contents of the role
|
||||
|
@ -1,6 +1,6 @@
|
||||
# nginx-redirect-www
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
The `nginx-redirect-www` role is designed to automate the process of setting up redirects from `www.domain.tld` to `domain.tld` for all domains and subdomains configured within the `{{nginx.directories.http.servers}}` directory. This role dynamically identifies configuration files following the pattern `*domain.tld.conf` and creates corresponding redirection rules.
|
||||
|
||||
## Role Description
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Bluray-Player-Tools Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
Welcome to the `pc-bluray-player-tools` role, a part of the `cymais` repository. This role is dedicated to setting up software required for Blu-ray playback on personal computers. It focuses on installing necessary packages to enable the use of Blu-ray media with VLC player and other compatible software.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Designer-Tools Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README is associated with the `pc-designer-tools` role, part of the `cymais` repository. This role focuses on setting up a suite of essential design tools on personal computers, catering specifically to the needs of graphic designers, illustrators, and digital artists.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Developer-Tools-Arduino Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README file is for the `pc-developer-tools-arduino` role, a specialized component of the `cymais` repository. This role is specifically crafted for setting up Arduino development tools on personal computers.
|
||||
|
||||
## Role Details
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Developer-Tools-Bash Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README accompanies the `pc-developer-tools-bash` role within the `cymais` repository. This role is dedicated to equipping personal computers with essential tools for Bash scripting and development.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Developer-Tools-Java Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
Welcome to the `pc-developer-tools-java` role, a part of the `cymais` repository. This role is specifically designed for setting up Java development tools on personal computers. It is an essential component for Java developers, providing the necessary tools and dependencies for efficient Java development.
|
||||
|
||||
## Role Dependencies
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Developer-Tools-PHP Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README document is for the `pc-developer-tools-php` role within the `cymais` repository. This role is specifically designed to facilitate the setup of PHP development tools on personal computing environments.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Developer-Tools-Python Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README accompanies the `pc-developer-tools-python` role, which is part of the `cymais` repository. The role is dedicated to setting up Python development tools on personal computers.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Developer-Tools Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README document is for the `pc-developer-tools` role within the `cymais` repository. The role is designed to streamline the setup of essential development tools on personal computers, particularly for software development environments.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# README for PC-Docker Playbook
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This playbook, `pc-docker`, is part of a larger collection housed within the `cymais` repository. It is specifically tailored for setting up Docker and Docker Compose on personal computers (PCs) used for development purposes. The primary goal is to facilitate a development environment on individual workstations rather than configuring servers for hosting or distributing Docker images.
|
||||
|
||||
## Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Games Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README is for the `pc-games` role, a part of the `cymais` repository. This role is designed to install a variety of popular open-source and freely available games on personal computers.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Git Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
Welcome to the `pc-git` role documentation, part of the `cymais` repository. This role is focused on setting up Git, a widely-used version control system, on personal computers. The role includes tasks for installing Git and configuring global user details.
|
||||
|
||||
## Role Tasks
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Gnome Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
Welcome to the `pc-gnome` role, a key part of the `cymais` repository. This role is dedicated to setting up and configuring the GNOME desktop environment on personal computers.
|
||||
|
||||
## Role Details
|
||||
|
@ -1,6 +1,6 @@
|
||||
# GnuCash Installation Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This Ansible role is responsible for installing GnuCash, a free and open-source financial management software, on systems utilizing the Pacman package manager. It's particularly useful for setting up GnuCash in a Linux environment with minimal manual intervention.
|
||||
|
||||
## Role: pc-gnucash
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Jrnl Role for Ansible
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This role automates the installation of Jrnl, a simple and effective command-line journal application. It uses the `community.general.pacman` module for systems that support the Pacman package manager, ensuring that Jrnl is installed and up to date.
|
||||
|
||||
## Requirements
|
||||
|
@ -1,6 +1,6 @@
|
||||
# LaTeX Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
Welcome to the LaTeX role within the `cymais` repository. It focuses on setting up a comprehensive LaTeX environment on Arch Linux-based systems, catering to the needs of users who require an advanced document preparation system.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-LibreOffice Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README is for the `pc-libreoffice` role, part of the `cymais` repository. This role focuses on installing LibreOffice, a powerful and free office suite, along with necessary fonts and language packages.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Network-Analyze-Tools Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README accompanies the `pc-network-analyze-tools` role within the `cymais` repository. This role is dedicated to installing key network analysis tools on personal computers.
|
||||
|
||||
## Role Contents
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Nextcloud Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README details the `pc-nextcloud` role, part of the `cymais` repository. This role focuses on setting up the Nextcloud client on personal computers and configuring directory synchronization.
|
||||
|
||||
## Role Variables
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Office Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README document is for the `pc-office` role, a component of the `cymais` repository. This role is designed to install a suite of office-related software on personal computers, providing a comprehensive set of tools for various office tasks.
|
||||
|
||||
## Role Tasks
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-QBittorrent Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README is for the `pc-qbittorrent` role within the `cymais` repository. This role is specifically crafted for installing qBittorrent, a popular open-source torrent client, on personal computers.
|
||||
|
||||
## Role Tasks
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Security-Tools Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README document is for the `pc-security-tools` role, a part of the `cymais` repository. This role is designed to equip personal computers with essential tools for enhancing data security and privacy.
|
||||
|
||||
## Role Tasks
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Spotify Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README is for the `pc-spotify` role, part of the `cymais` repository. This role is dedicated to installing Spotify, a popular digital music streaming service, on personal computers.
|
||||
|
||||
## Role Tasks
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-SSH Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
Welcome to the `pc-ssh` role, a critical component of the `cymais` repository. This role is dedicated to setting up SSH (Secure Shell) on the client side, facilitating secure access to remote servers.
|
||||
|
||||
## Role Description
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Streaming-Tools Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README is associated with the `pc-streaming-tools` role, part of the `cymais` repository. This role is focused on setting up essential tools for live streaming and video recording on personal computers.
|
||||
|
||||
## Role Tasks
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-TorBrowser Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
This README document is for the `pc-torbrowser` role, a crucial component of the `cymais` repository. This role is specifically designed for the installation and setup of Tor Browser on personal computers.
|
||||
|
||||
## Role Tasks
|
||||
|
@ -1,6 +1,6 @@
|
||||
# PC-Video-Conference Role
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
Welcome to the `pc-video-conference` role documentation, a part of the `cymais` repository. This role is focused on installing video conferencing software on Linux systems, specifically tailored for personal use and remote work requirements.
|
||||
|
||||
## Role Tasks
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role installs and configures [Postfix](https://en.wikipedia.org/wiki/Postfix_(software)) – a mail transfer agent – on the target system. It deploys a preconfigured aliases file (using a Jinja2 template) that defines mail redirections and standard aliases for local mail delivery.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for secure and reliable mail delivery, this role:
|
||||
- Installs Postfix via [pacman](https://wiki.archlinux.org/title/Pacman).
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role installs the [python-pip](https://en.wikipedia.org/wiki/Pip_(package_manager)) package on the target system. It ensures that the pip package manager is available for installing Python packages.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for simplicity and idempotency, this role:
|
||||
- Installs the python-pip package using [pacman](https://wiki.archlinux.org/title/Pacman).
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
This role automates the restart process for Docker Compose instances within a specified directory. It deploys a Python script that checks for the presence of docker-compose.yml files and restarts the associated services—using a hard restart for certain directories if needed.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for containerized environments, this role:
|
||||
- Sets up the necessary directories and scripts for restarting Docker Compose instances.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role configures the SSH daemon ([sshd](https://man7.org/linux/man-pages/man5/sshd_config.5.html)) on the target system by deploying a templated configuration file. It ensures that secure and proper SSH settings are applied, reducing the risk of misconfiguration and potential lockout.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for secure remote access, this role:
|
||||
- Generates an SSH daemon configuration file from a Jinja2 template.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role installs the [sudo](https://en.wikipedia.org/wiki/Sudo) package and deploys a default sudoers file to ensure secure and consistent privilege escalation on the target system. It uses a preconfigured sudoers file that follows best practices and includes directives to read drop-in files from `/etc/sudoers.d`.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for security and ease of administration, this role guarantees that sudo is installed and configured according to recommended practices. The provided sudoers file includes essential comments, host/user aliases, and defaults to help prevent misconfigurations.
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
This role ensures that the AUR helper [yay](https://wiki.archlinux.org/title/Yay) is installed on the system. It installs yay via [pacman](https://wiki.archlinux.org/title/Pacman) and creates a dedicated `aur_builder` user to facilitate building AUR packages.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role performs the following tasks:
|
||||
- Installs the AUR helper [yay](https://wiki.archlinux.org/title/Yay) using pacman.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role automates the management and balancing of Btrfs file systems. It clones the latest version of the [auto-btrfs-balancer](https://github.com/kevinveenbirkenbach/auto-btrfs-balancer.git) repository and configures a systemd service and timer to run the balancing script automatically.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for automated file system management, this role:
|
||||
- Clones the auto-btrfs-balancer repository.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role provides a locking mechanism to ensure that critical services are not interrupted during maintenance activities such as updates, backups, or patch applications. It waits for specified services to stop and prevents conflicting operations.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role performs the following:
|
||||
- Blocks execution until specified services have stopped.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role configures security-related settings on the target system to ensure that essential security services are properly managed. It reinforces system security by integrating with related roles and enforcing best practices.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role focuses on:
|
||||
- Configuring key security services such as [SSH](https://en.wikipedia.org/wiki/Secure_Shell).
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role optimizes storage allocation for Docker volumes by migrating volumes between SSD (rapid storage) and HDD (mass storage) based on container image types. It creates symbolic links to maintain consistent storage paths after migration.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role performs the following tasks:
|
||||
- Migrates Docker volumes with database workloads to rapid storage (SSD) for improved performance.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role automates the creation of a swapfile on the target system by cloning a swapfile creation script from a Git repository and executing it with the specified swapfile size.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role performs the following tasks:
|
||||
- Clones the swapfile creation script from the Git repository.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role installs and configures the necessary components for sending email notifications via systemd when a service fails. It sets up the `systemd-notifier-email` service and configures email parameters and templates using msmtp.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for secure and reliable service failure notifications, this role is an integral part of the overall `systemd-notifier` suite. It ensures that, upon failure of a critical service, an email alert is sent automatically to enable prompt troubleshooting.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role installs and configures the necessary components for sending notifications via systemd when a service fails. It sets up the `systemd-notifier-telegram` service and configures parameters and customizable templates for sending messages through [Telegram](https://telegram.org).
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for real-time alerts, this role is a key component of the overall [`systemd-notifier` suite](../). It ensures that, upon failure of a critical service, a Telegram message is automatically sent to notify administrators and enable prompt troubleshooting.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role installs a systemd service that sends notifications via both [systemd-notifier-telegram](../systemd-notifier-telegram/README.md) and [systemd-notifier-email](../systemd-notifier-email/README.md) when any service fails.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for prompt and comprehensive failure alerts, this role configures a unified notification service. It leverages the capabilities of both Telegram and Email notifications to ensure that administrators are quickly informed about service issues, enabling rapid troubleshooting.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role configures a systemd timer to periodically start a corresponding service. It uses a Jinja2 template to create a timer unit file that specifies the scheduling parameters (such as OnCalendar and RandomizedDelaySec) and then restarts the timer service accordingly.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for automated task scheduling in a [systemd](https://en.wikipedia.org/wiki/Systemd) environment, this role:
|
||||
- Generates a timer unit file for a given service (using the `service_name` variable).
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role updates packages on Debian-based systems. It refreshes the apt cache and performs a distribution upgrade to ensure all packages are at their latest version.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Designed for Debian and Ubuntu systems, this role:
|
||||
- Updates the package cache using apt.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role updates Docker Compose instances by checking for changes in Docker image digests and applying updates if necessary. It utilizes a Python script to handle git pulls and Docker image pulls, and rebuilds containers when changes are detected.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role performs the following:
|
||||
- Deploys a Python script to check for Docker image updates.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role updates the package cache and upgrades installed packages on Arch Linux systems using [pacman](https://wiki.archlinux.org/title/Pacman).
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for Arch Linux, this role uses pacman to refresh the package cache and upgrade all installed packages to their latest available versions. It automates system updates to ensure that the system remains secure and up-to-date with the latest software improvements and security patches.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role updates AUR packages on Arch Linux systems using [yay](https://wiki.archlinux.org/title/Yay). It automates the process of upgrading AUR packages, ensuring that your system stays current with the latest software available in the Arch User Repository.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
The role performs the following:
|
||||
- Checks if the [yay](https://wiki.archlinux.org/title/Yay) AUR helper is installed.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role serves as a central orchestrator for system updates. It conditionally executes various update roles based on the target system and available directories, ensuring that packages and Docker images are kept up-to-date.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
This role performs the following tasks:
|
||||
- Checks if the Docker Compose instances directory exists.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role creates a dedicated administrator user for local administrative tasks. The administrator account is configured to require a password when executing [sudo](https://en.wikipedia.org/wiki/Sudo), ensuring secure privilege escalation. For security reasons, it is recommended to use this dedicated administrator user instead of the default root account. The role also sets up SSH-related configuration by copying an authorized_keys file from inventory data.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for secure system management, this role performs the following:
|
||||
- Creates an administrator user with a home directory.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role manages the generation and handling of an SSH key for the [root user](https://en.wikipedia.org/wiki/Superuser) on a target system. It ensures that an SSH key is generated if one does not already exist and outputs the public key, enabling secure SSH access for the root user in automated environments.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for secure system administration, this role performs the following tasks:
|
||||
- Verifies the existence of a root SSH public key.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role executes tasks that are relevant for all users by configuring essential shell files. It deploys customized templates for [`.bashrc`](https://wiki.archlinux.org/title/Bash#Startup_files) and [`.bash_profile`](https://wiki.archlinux.org/title/Bash#Login_shells) for any specified user. This ensures a consistent and enhanced shell environment across the system.
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for modular configuration, this role uses Jinja2 templates to create:
|
||||
- A customized [`.bashrc`](https://wiki.archlinux.org/title/Bash#Startup_files) that sets up a dynamic welcome message, system information, and useful aliases.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
This role manages [Wireguard](https://www.wireguard.com/) on the host. It installs the necessary Wireguard packages, configures sysctl settings for IPv4/IPv6 forwarding, and deploys the Wireguard configuration file to enable the VPN service using [wg-quick](https://www.wireguard.com/quickstart/).
|
||||
|
||||
## 📌 Overview
|
||||
## Overview
|
||||
|
||||
Optimized for both [Arch Linux](https://wiki.archlinux.org/index.php/WireGuard) and [Ubuntu/Debian](https://wireguard.com/install/), this role performs the following tasks:
|
||||
- Installs Wireguard tools using the appropriate package manager.
|
||||
|
Loading…
x
Reference in New Issue
Block a user