# linux-scripts-tools **Repository Path**: myisen/linux-scripts-tools ## Basic Information - **Project Name**: linux-scripts-tools - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-09-17 - **Last Updated**: 2025-07-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Linux 系统管理和安全配置工具集 这个项目提供了一系列用于 Linux 系统管理和安全配置的 Bash 脚本,旨在简化 Linux 服务器的配置、管理和安全加固过程。 ## 功能特点 - 自动化系统安全配置 - 创建和管理系统用户 - 安装和配置 Ansible 自动化工具 - 设置 Ansible 项目环境 - 安装常用的 Linux 工具和实用程序 ## 目录结构 ``` . ├── README.md # 项目说明文档 ├── tools/ # 工具脚本目录 │ ├── manage_tools.sh # 主菜单脚本 │ ├── setup_linux_tools.sh # Linux 工具安装脚本 │ ├── create_adoper_user.sh # 创建管理用户脚本 │ ├── secure_system.sh # 系统安全配置脚本 │ ├── install_ansible.sh # Ansible 安装脚本 │ └── setup_ansible_environment.sh # Ansible 环境设置脚本 ``` ## 使用方法 ### 快速开始 1. 克隆仓库到本地: ```bash git clone https://github.com/yourusername/linux-scripts-tools.git cd linux-scripts-tools ``` 2. 运行主菜单脚本: ```bash ./tools/manage_tools.sh ``` 3. 从菜单中选择要执行的操作。 ### 脚本说明 #### manage_tools.sh 主菜单脚本,提供交互式界面来运行其他脚本。 ```bash ./tools/manage_tools.sh ``` #### setup_linux_tools.sh 安装和配置各种 Linux 工具,包括监控、性能、网络、安全和通用工具。 ```bash ./tools/setup_linux_tools.sh [选项] ``` 选项: - `--category CATEGORY` - 指定要安装的工具类别 (monitoring, performance, network, security, general) - `--list` - 列出可用的工具 - `--install TOOL` - 安装指定的工具 - `-h, --help` - 显示帮助信息 #### create_adoper_user.sh 创建管理用户并配置 sudo 权限。 ```bash ./tools/create_adoper_user.sh [选项] ``` 选项: - `--username USERNAME` - 用户名 (默认: adoper) - `--password PASSWORD` - 密码 (默认: changeme) - `--sudo-all` - 配置无密码 sudo 权限 (默认) - `--no-sudo-all` - 不配置无密码 sudo 权限 - `--no-ssh-dir` - 不创建 SSH 目录 - `--generate-ssh-key` - 生成 SSH 密钥对 - `-h, --help` - 显示帮助信息 #### secure_system.sh 配置系统安全设置。 ```bash ./tools/secure_system.sh [选项] ``` 选项: - `--disable-root-ssh` - 禁用 SSH 根用户登录 (默认) - `--enable-root-ssh` - 启用 SSH 根用户登录 - `--ssh-port PORT` - 设置 SSH 端口 (默认: 22) - `--enable-firewall` - 启用防火墙 (默认) - `--disable-firewall` - 禁用防火墙 - `--update-system` - 更新系统软件包 (默认) - `--no-update-system` - 不更新系统软件包 - `--no-fail2ban` - 不配置 Fail2ban - `--no-sysctl` - 不强化 sysctl 设置 - `--no-secure-memory` - 不保护共享内存 - `--no-secure-cron` - 不保护 cron - `--keep-unused-packages` - 不移除未使用的软件包 - `-h, --help` - 显示帮助信息 #### install_ansible.sh 在不同的 Linux 发行版上安装 Ansible。 ```bash ./tools/install_ansible.sh [选项] ``` 选项: - `--method METHOD` - 安装方法 (package, pip) (默认: package) - `--version VERSION` - Ansible 版本 (latest, 或特定版本如 2.9.27) (默认: latest) - `--no-dependencies` - 不安装依赖项 - `--no-inventory` - 不配置默认清单 - `-h, --help` - 显示帮助信息 #### setup_ansible_environment.sh 创建和配置 Ansible 项目环境。 ```bash ./tools/setup_ansible_environment.sh [选项] ``` 选项: - `--directory DIR` - 项目目录名称 (默认: ansible-project) - `--no-roles` - 不创建角色目录结构 - `--no-examples` - 不创建示例文件 - `--inventory TYPE` - 清单类型 (standard, multi-env) (默认: standard) - `-h, --help` - 显示帮助信息 ## 示例 ### 安装监控工具 ```bash ./tools/setup_linux_tools.sh --category monitoring ``` ### 创建管理用户并生成 SSH 密钥 ```bash ./tools/create_adoper_user.sh --username admin --password secure123 --generate-ssh-key ``` ### 配置系统安全设置并更改 SSH 端口 ```bash ./tools/secure_system.sh --ssh-port 2222 ``` ### 安装 Ansible 并使用 pip 安装方法 ```bash ./tools/install_ansible.sh --method pip ``` ### 设置多环境 Ansible 项目 ```bash ./tools/setup_ansible_environment.sh --directory my-ansible --inventory multi-env ``` ## 注意事项 - 这些脚本需要 root 权限才能运行 - 在生产环境中使用前,请先在测试环境中测试 - 建议在运行脚本前备份重要数据和配置文件 ## 贡献 欢迎提交 Pull Request 或创建 Issue 来改进这个项目。 ## 许可证 MIT