后端运维【免费下载链接】ajentiAjenti Core and stock plugins项目地址https://gitcode.com/gh_mirrors/aj/ajenti点击查看免费下载本篇指南基于 Ajenti 官方安装文档docs/source/man/install.rst编写系统讲解在 Debian/Ubuntu/RHEL 系 Linux 上部署 Ajenti 2 的全部路径推荐使用的虚拟环境自动安装、已被弃用的系统级自动安装、逐步骤手动安装以及服务启停、配置生成、故障排查与彻底卸载。读完本文你将掌握 Ajenti 2 从零部署到日常运维的完整技能并能理解安装脚本在底层做了哪些事、生成哪些文件、如何影响面板行为。支持的操作系统与安装方式总览Ajenti 官方明确支持以下操作系统详见 docs/source/man/install.rst 开头的 CAUTION 提示Debian 9 或更新版本Ubuntu Bionic18.04或更新版本RHEL 8 或更新版本其他 Linux 发行版可能可以运行但需要使用下面的手动安装方法自行处理依赖。安装方式按推荐程度分为三档安装方式适用场景推荐度虚拟环境自动安装install-venv.sh所有受支持系统尤其是 Debian 12/Ubuntu 24.04官方推荐系统级自动安装install.sh旧版本 Debian/Ubuntu 及其他系统已弃用手动安装任何受支持系统需自行控制依赖备选在 Debian 12、Ubuntu 24.04 及更高版本上pip 已默认启用externally managed environment保护策略禁止向系统 Python 环境直接安装包。虚拟环境安装正是为了规避这一限制而成为官方推荐方案。虚拟环境自动安装推荐执行以下命令即可需要 root 权限curl https://raw.githubusercontent.com/ajenti/ajenti/master/scripts/install-venv.sh | sudo bash -s -在当前镜像仓库中脚本位于 scripts/install-venv.sh可直接下载后以 root 执行。这条命令会以 root 身份运行脚本脚本内部自动完成以下全部步骤检测发行版通过/etc/issue与/etc/os-release识别 Debian / Ubuntu / CentOS / Rocky Linux / RHEL未知发行版会暂停并等待确认。安装系统依赖Debian/Ubuntubuild-essential python3-pip python3-venv python3-dev python3-lxml python3-dbus python3-augeas libssl-dev python3-apt ntpdateDebian 13 及以上还会额外安装ntpsec-ntpdate代替ntpdate。Ubuntu 需要先启用 universe 仓库add-apt-repository -y universe。RHEL 系gcc python3-devel python3-pip python3-virtualenv python3-pillow python3-augeas python3-dbus openssl-devel chrony redhat-lsb-core并先安装epel-release。创建虚拟环境python3 -m venv /opt/ajenti --system-site-packages后续所有 pip 操作都在/opt/ajenti/bin/python3中进行不污染系统 Python。升级 pip 并清理冲突升级pip wheel setuptools packaging若检测到已安装的gevent-socketio会先行卸载避免与 Ajenti 依赖冲突。安装 Ajenti 主程序与核心插件ajenti-panel及ajenti.plugin.core、dashboard、settings、plugins、notepad、terminal、filemanager、packages、services等。版本兼容修复安装gipc -U、固定gevent25.5.1、zope.event5.1.1脚本注释标明这是针对新版本 Python 的临时修复。生成配置文件创建/etc/ajenti/目录写入初始users.yml内容为users: null和config.yml若配置文件已存在则跳过不覆盖用户已有配置。生成 SSL 证书调用ajenti-ssl-gen $(hostname)。安装 init 脚本按优先级依次检测 Upstart/etc/init、systemd/lib/systemd/system、sysvinit/etc/init.d/ajenti分别生成对应的服务单元并启动。安装完成后脚本会打印本机 IP 并提示面板监听在https://IP:8000。登录后空白页升级 gipc 与 gevent如果在登录后收到空响应页面空白官方给出的排查方法是升级两个异步依赖/opt/ajenti/bin/python3 -m pip install gipc gevent -U这两个包是 Ajenti 消息推送与并发框架的基础版本过旧会导致 WebSocket/推送通道异常出现登录后无内容的典型症状。安装脚本本身已做过版本固定见 scripts/install-venv.sh此命令用于后续的临时升级修复。缺少 HTTPS 证书重新生成证书虚拟环境安装会调用ajenti-ssl-gen自动生成自签名证书。若因故缺失 https 证书可手动执行/opt/ajenti/bin/python3 /opt/ajenti/bin/ajenti-ssl-gen $(hostname)从 ajenti-panel/ajenti-ssl-gen 源码可以看到该工具的行为是以主机名为组织名生成 RSA 4096 位自签名证书有效期 10 年写入/etc/ajenti/ajenti.pem私钥与证书同文件读取/etc/ajenti/config.yml若ssl.certificate已配置则直接退出幂等保护否则将ssl.enable置为true、ssl.certificate指向证书文件并把结果回写回config.yml。系统级自动安装已弃用curl https://raw.githubusercontent.com/ajenti/ajenti/master/scripts/install.sh | sudo bash -s -当前镜像仓库中对应脚本为 scripts/install.sh。脚本开头会打印醒目的弃用警告这种方式会把 Ajenti 直接安装到系统 Python 环境/usr/lib/python3/dist-packages层级在较新的 Debian/Ubuntu 上会因 pip 的 PEP 668 保护而失败官方已不再推荐。仅适用于旧版本发行版及其他 Linux 系统。与虚拟环境脚本相比install.sh的差异点在于不创建虚拟环境直接用系统python3 -m pip安装在 Debian 系上安装前会先移除/usr/lib/python3/dist-packages/setuptools.egg-info兼容 Debian 7 的遗留处理其余逻辑依赖安装、配置文件生成、SSL 证书、init 脚本与install-venv.sh完全一致。手动安装手动安装适合需要精确控制依赖、或发行版不在官方支持列表中的场景核心是三步装好系统原生依赖 → 升级 pip → 用 pip 安装 Ajenti 及其插件。原生依赖Debian/UbuntuUbuntu 需先启用 universe 仓库sudo add-apt-repository universe然后安装依赖sudo apt-get install build-essential python3-pip python3-dev python3-lxml libssl-dev python3-dbus python3-augeas python3-apt ntpdate各依赖的作用可从 scripts/install.sh 得到印证python3-lxml用于 XML/HTML 解析python3-dbus支撑 D-Bus 系统总线交互python3-augeas提供 Augeas 配置编辑库网络、fstab 等插件依赖python3-apt供软件包管理插件使用libssl-dev供编译期链接ntpdate用于时间同步。原生依赖RHEL先启用 EPEL 仓库sudo dnf install epel-release再安装依赖sudo dnf install -y gcc python3-devel python3-pip python3-pillow python3-augeas python3-dbus chrony openssl-devel redhat-lsb-core其中redhat-lsb-core提供 LSB 兼容脚本支持sysvinit init 脚本检测lib/lsb/init-functions时用到chrony用于时间同步。安装 Ajenti 2先升级 pip 工具链sudo pip3 install setuptools pip wheel -U最小化安装仅面板 4 个基础插件适合先跑通sudo pip3 install ajenti-panel ajenti.plugin.core ajenti.plugin.dashboard ajenti.plugin.settings ajenti.plugin.plugins安装全部插件sudo pip3 install ajenti-panel ajenti.plugin.ace ajenti.plugin.augeas ajenti.plugin.auth-users ajenti.plugin.core ajenti.plugin.dashboard ajenti.plugin.datetime ajenti.plugin.filemanager ajenti.plugin.filesystem ajenti.plugin.network ajenti.plugin.notepad ajenti.plugin.packages ajenti.plugin.passwd ajenti.plugin.plugins ajenti.plugin.power ajenti.plugin.services ajenti.plugin.settings ajenti.plugin.terminal插件体系遵循每个功能一个 Python 包的约定aj是核心库即 ajenti-core其 setup.py 中版本为 2.2.16ajenti-panel是启动器各ajenti.plugin.*是功能插件。仓库根目录的 official_plugins.json 完整列出了官方维护的 26 个插件ace、augeas、auth_users、check_certificates、core、cron、dashboard、datetime、dns_api、docker、filemanager、filesystem、fstab、iptables、network、notepad、packages、passwd、plugins、power、services、session_list、settings、softraid、supervisor、terminal、traffic。你可以按需在 pip install 列表中增删。安装完成后的服务管理安装脚本两种自动安装脚本一致会按以下优先级注册服务Upstart存在/etc/init且可用start生成/etc/init/ajenti.conf以start on runlevel [2345]方式常驻systemd生成/lib/systemd/system/ajenti.serviceTypeforking、PIDFile/var/run/ajenti.pidExecStart为$PYTHON3 $PANEL -dsysvinit生成/etc/init.d/ajenti支持start|stop|restart|status四个动作。仓库中维护了一份标准 systemd 单元 debian/systemd/ajenti2.service与脚本生成的单元结构一致可供参考或手工部署。启动/重启服务的三种方式service ajenti restart # 或 /etc/init.d/ajenti restart # 或 systemctl restart ajenti面板默认监听HTTPS 8000 端口默认用户名为root密码即系统 root 密码认证走osprovider见下文配置说明。ajenti-panel 命令行参数手动运行面板时可用参数源码见 ajenti-panel/ajenti-panel 的usage()参数说明-c, --config file使用指定的配置文件替代默认的/etc/ajenti/config.yml-v调试/详细日志等价于--log debug--log level固定日志级别debug、info、warning、error--dev开发模式每次请求自动重建前端资源-d, --daemon后台守护进程模式--stock-plugins从 PYTHONPATH 加载内置插件未指定--plugins时的默认行为--plugins dir从指定目录加载额外插件可重复使用--autologin以运行面板的系统用户自动登录。公网暴露的系统上使用该选项存在严重安全隐患且源码强制要求必须与-v同时使用否则拒绝启动首次运行ajenti-panel时若/etc/ajenti/config.yml不存在启动器会自动创建一份带默认值的配置源码中可见默认bind.port: 8000、max_sessions: 9、session_max_time: 3600并同时初始化空的/etc/ajenti/users.yml与/etc/ajenti/smtp.yml。安装脚本生成的默认配置自动安装脚本写入的/etc/ajenti/config.yml初始内容如下后续可在面板设置或手工编辑中调整auth: allow_sudo: true emails: {} provider: os users_file: /etc/ajenti/users.yml bind: host: 0.0.0.0 mode: tcp port: 8000 color: default max_sessions: 9 trusted_domains: [] trusted_proxies: [] session_max_time: 3600 name: 主机名 ssl: certificate: fqdn_certificate: force: false client_auth: certificates: [] enable: false force: false enable: false仓库中另有一份更完整的参考配置示例 ajenti-panel/config.yml展示了启用 SSL 证书、客户端证书认证client_auth、语言、颜色主题等进阶字段。卸载 Ajenti 2Ajenti 由一组 pip 安装的 Python 模块 init 脚本 配置文件三部分组成卸载需按顺序清理。先移除服务再卸载 Python 模块最后删除配置。停止并移除服务systemdsudo systemctl stop ajenti.service sudo systemctl disable ajenti.service sudo systemctl daemon-reload sudo rm -f /lib/systemd/system/ajenti.serviceSysVinit/etc/init.d/ajenti stop rm -f /etc/init/ajenti.conf卸载 Python 模块先列出所有 Ajenti 相关模块aj、ajenti-panel及全部ajenti.plugin.*sudo pip3 list | grep aj输出示例插件数量随安装情况增减aj 2.1.43 ajenti-panel 2.1.43 ajenti.plugin.ace 0.30 ajenti.plugin.auth-users 0.31 ajenti.plugin.core 0.99 ajenti.plugin.dashboard 0.39 ajenti.plugin.filesystem 0.47 ajenti.plugin.passwd 0.24 ajenti.plugin.plugins 0.47 ajenti.plugin.session-list 0.4 ajenti.plugin.settings 0.30然后一次性卸载sudo pip3 uninstall -y aj ajenti-panel ajenti.plugin.ace ajenti.plugin.auth-users ajenti.plugin.core ajenti.plugin.dashboard ajenti.plugin.filesystem ajenti.plugin.passwd ajenti.plugin.plugins ajenti.plugin.session-list ajenti.plugin.settings若安装了更多插件把pip3 list中列出的其余ajenti.plugin.*名称追加到命令末尾即可。删除配置文件若不再需要保留面板数据用户、证书、SMTP 凭据、TFA 密钥均存于此处直接删除整个目录sudo rm -rf /etc/ajenti/配置体系速览卸载一节涉及的/etc/ajenti/是 Ajenti 所有配置的集中存放处详见 docs/source/man/config.rstconfig.yml主配置文件涵盖auth认证 provider、sudo 提权、用户文件路径、bind监听地址/端口/socket 类型、ssl证书、强制跳转、客户端证书认证、email密码重置邮件、以及color、language、name、max_sessions、session_max_time、trusted_domains、trusted_proxies、restricted_user等全局参数smtp.yml邮件中继凭据server、user、password、port为starttls/ssl用于密码重置功能文件权限会被强制收紧到 0600users.ymlprovider: users时的用户账户库用户名、scrypt 密码哈希、uid、fs_root、权限列表。相关默认值在 ajenti-core/aj/config.py 的BaseConfig.ensure_structure()中有完整定义例如max_sessions默认 99、session_max_time默认 3600 秒、restricted_user默认nobody、认证 provider 默认os。该模块还管理/etc/ajenti/tfa.ymlTOTP 双因素密钥与/etc/ajenti/smtp.yml的读写其中TFAConfig在加载时会抹掉内存中的明文密钥仅保留校验所需结构是值得注意的安全设计。关于用户密码哈希Ajenti 使用scrypt派生密钥可用如下 Python 代码生成写入users.yml的哈希值import scrypt, os bytes scrypt.encrypt(os.urandom(256), password, maxtime1) hex bytes.hex() print(hex)注意scrypt.encrypt产出的是派生密钥而非传统摘要这也是users.yml中password字段是长十六进制串的原因。故障排查指引若面板启动异常可参考 docs/source/man/run.rst 的调试方法运行日志位于/var/log/ajenti/ajenti.log崩溃时的完整 traceback 记录在/var/log/ajenti/crash-日期.log需要更详细输出时停掉服务后前台运行ajenti-panel -v或--dev观察资源编译结束后用systemctl start ajenti恢复服务登录后空白页优先尝试升级gipc与gevent见上文HTTPS 证书缺失时用ajenti-ssl-gen重新生成见上文。至此你已经掌握了 Ajenti 2 的完整安装生命周期从推荐的一键虚拟环境部署到旧系统的自动安装、受控的手动安装再到服务管理、配置理解与彻底卸载足以在生产服务器上独立完成部署与运维。赞分享后端运维【免费下载链接】ajentiAjenti Core and stock plugins项目地址https://gitcode.com/gh_mirrors/aj/ajenti点击查看免费下载相关推荐CUA CLI安装指南一键部署AI代理和虚拟机环境的完整教程CUA CLI安装指南一键部署AI代理和虚拟机环境的完整教程 想要快速搭建高性能的macOS和Linux虚拟机环境同时支持AI代理的自动化操作吗CUA项目人工智能AI Agent大模型GUI 自动化MCP 服务模型评测微调强化学习工具调用OpenSpeedy安装指南Winget一键部署与手动安装全流程对比OpenSpeedy安装指南Winget一键部署与手动安装全流程对比 你是否还在为游戏帧率限制而烦恼是否想寻找一款简单易用且高效的游戏加速工具OpenSp桌面应用游戏开发Ajenti服务器管理面板安装与卸载指南Ajenti服务器管理面板安装与卸载指南 前言 Ajenti是一款功能强大的服务器管理面板它提供了一个直观的Web界面来管理Linux服务器。与传统的命令行管后端运维上一篇如何深度解析网易NeoX引擎NPK文件从加密容器到可读资源的完整指南下一篇stylelint 规则 declaration-property-value-keyword-no-deprecated全面拦截 CSS 声明中的废弃关键字创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
Woodpecker 接入 GitHub 完全指南:OAuth 应用配置、环境变量与驱动原理 CI/CDDevOps 【免费下载链接】woodpecker Woodpecker is a simple, yet powerful CI/CD engine with great extensibility. 项目地址: https://gitcode.com/gh_mirrors/wo/woodpecker 点击查看 免费下载 Woodpecker CI 内置了对 GitHub 与 GitHub Enterprise 的官方… · 2026/9/27 10:24:20
图标库CDN集成:Font Awesome快速接入,3行代码让页面出现图标 图标库CDN集成:Font Awesome快速接入,3行代码让页面出现图标 【免费下载链接】Font-Awesome The iconic SVG, font, and CSS toolkit 项目地址: https://gitcode.com/GitHub_Trending/fo/Font-Awesome
本文教你用CDN快速接入Font Awesome图标库。… · 2026/9/27 10:24:14
开源硬件项目怎么找?别只刷GitHub,这四类真实渠道更高效 1. 开源硬件不是“找代码”而是“找生态”:为什么90%的人搜不到真正可用的智能家居项目我第一次想给家里加个自定义温控面板时,花了整整三天在GitHub上翻项目。关键词打了十几种组合:“smart home hardware open source”“esp32 home automa… · 2026/9/27 10:24:01
23 01背包问题:动态规划的经典入门案例 一、问题引入01背包是动态规划中最经典的问题之一,题目描述如下:有一个容量为20的背包,你有10件物品,每件物品只能选一次,每件物品都有对应的体积和价值,请问如何选择物品,才能让背包中物品的总… · 2026/9/27 11:18:12
DeepOpen三大决策原语完全指南:choice、score、noul如何覆盖企业90%的AI决策场景 DeepOpen三大决策原语完全指南:choice、score、noul如何覆盖企业90%的AI决策场景 【免费下载链接】deepopen 非自回归System 1决策引擎,专为结构化类型决策场景设计 DeepOpen Multilingual, non-autoregressive System 1 decision engine. 项目地址: … · 2026/9/27 11:18:06
基于Springboot的二手车交易网站的设计与实现(源码+讲解视频+LW) 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台… · 2026/9/27 11:18:06
网站开发用什么字体:5个关键决策与最佳实践 网站开发用什么字体:5个关键决策与最佳实践 很多福建的甲方朋友在找建站团队时,一开口就问:“你们服务器搞不懂,域名备案也麻烦,字体能不能随便选?”这话虽糙,但道出了核心痛点。在 Web 开发圈, 字体… · 2026/9/27 11:18:06
高速数据采集下FPGA与Linux间DMA搬运框架的设计与调优 做高速数据采集,最折磨人的环节往往不是ADC本身,而是数据从FPGA流进Linux用户态的那条路。我在第一版板卡上吃过这个亏:FPGA逻辑用中断通知ARM64核来搬FIFO数据,单通道1GSPS、12bit,理论吞吐1.5GB/s,实际连… · 2026/9/27 11:18:00
选wordpresslapa哪家好?3招避开建站坑 选wordpresslapa哪家好?3招避开建站坑 找建站公司最怕什么?不是技术不行,是报价离谱。明明是个简单的企业展示站,对方张口就是八万起步,还告诉你“包含高端定制”。这时候你心里肯定在想: wordpresslapa哪家好… · 2026/9/27 11:18:00
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01