实践:开源新闻组软件 INN 配置、添加更多组

安装INN参见:https://skywalk.blog.csdn.net/article/details/157670194

配置、添加更多组

向 INN (InterNetNews) 服务器添加新的新闻组有两种主要方法,推荐使用 ctlinnd 命令(最安全),也可以手动编辑配置文件(需要谨慎操作)。以下是详细步骤:


方法一:使用 ctlinnd 命令(推荐)

这是官方推荐的安全方式,不需要重启服务。

  1. 连接到服务器执行命令

    复制代码
    # 创建新的可发帖新闻组
    ctlinnd newgroup <组名>
    
    # 示例:创建名为 comp.test 的组
    ctlinnd newgroup comp.test
    
    # 创建只读新闻组(不可发帖)
    ctlinnd newgroup <组名> -m n
    
    # 示例:创建只读的 announce.important 组
    ctlinnd newgroup announce.important -m n
  2. 验证是否成功

    复制代码
    grep '<组名>' /var/lib/news/active
    # 成功时会显示类似:comp.test 0000000000 0000000001 y
    # 末尾 "y" 表示可发帖,"n" 表示只读

方法二:手动编辑配置文件(备用)

适用于无法使用 ctlinnd 的情况,需谨慎操作。

  1. 编辑 active 文件

    复制代码
    sudo nano /var/lib/news/active

    在文件末尾添加新行:

    复制代码
    <组名> 0000000000 0000000001 <权限标志>
    • 权限标志

      • y:允许发帖(默认)
      • n:只读组
      • m:需审核的组
      • x:禁用组
    • 示例

      复制代码
      linux.general 0000000000 0000000001 y
  2. 通知 INN 重新加载配置

    复制代码
    ctlinnd reload active "Added new group"

后续必要步骤

无论使用哪种方法,都需要:

  1. 添加组描述(可选但推荐)

    复制代码
    sudo nano /var/lib/news/newsgroups

    添加格式:

    复制代码
    <组名> <描述文本>

    示例:

    复制代码
    comp.test 测试技术讨论组
  2. 刷新客户端

    • 在 Thunderbird 中:右键点击新闻组账户 → 刷新新闻组
    • 或重启客户端
  3. 验证新组可用性

    复制代码
    telnet localhost 119 LIST

    应在返回列表中看到新组名


常见问题解决

  1. 组不显示

    • 检查 /var/lib/news/active 文件权限:

      复制代码
      chown news:news /var/lib/news/active
    • 重启 INN 服务:

      复制代码
      sudo systemctl restart inn2
  2. 无法发帖到新组

    • 确认 readers.conf 包含新组权限:

      复制代码
      access "all-groups" { users: "*" newsgroups: "*" access: RP # R=读取, P=发帖 }
    • 重载配置:

      复制代码
      ctlinnd reload readers.conf
  3. 组层级限制 : 若需创建新顶层组(如 company.*),在 inn.conf 添加:

    复制代码
    hierarchies: company,comp,news

关键文件说明

文件路径 作用
/var/lib/news/active 所有新闻组列表及权限
/var/lib/news/newsgroups 组描述信息(客户端可见)
/etc/news/readers.conf 客户端访问控制规则
/etc/news/inn.conf 主配置文件(层级设置等)

建议优先使用 ctlinnd newgroup 命令,这是最安全且实时生效的方式。手动编辑仅作为备用方案。

实践

创建组

创建一个普通的组ctlinnd newgroup comp.test

复制代码
sudo ctlinnd newgroup comp.test
[sudo] password for skywalk:
Ok

在客户端添加组

打开客户端软件thunderbird,选择"Manage newsgroup subscriptions" ,然后点击"Refresh",就能看见新添加的组了,勾选上。

测试

发送测试邮件,发送成功!

点中c.test ,右键"Get messages" ,发现有新邮件,打开,发现就是自己发送的邮件。

整个流程跑通!

为组添加描述

方法:修改/var/lib/news/newsgroups 文件,在文件里,按照已存在的描述格式,为新生成的组comp.test加入描述

复制代码
control                 Various control messages (no posting)
control.cancel          Cancel messages (no posting)
control.checkgroups     Hierarchy check control messages (no posting)
control.newgroup        Newsgroup creation control messages (no posting)
control.rmgroup         Newsgroup removal control messages (no posting)
junk                    Unfiled articles (no posting)
local.general           Local general group
local.test              Local test group
comp.test               新加组

但是我在客户端,没有看到组的任何描述信息,所以这个添加描述添加了个寂寞啊!

cancel撤回邮件

右键直接选cancel,可以撤回邮件,真的挺好用啊!

添加更多组codearts、codebuddy、opencode和trae

为AI agent添加更多组,添加了codearts、codebuddy、opencode和trae,以后就让这几个家伙入住INN啦!

复制代码
sudo ctlinnd newgroup ai.codearts
sudo ctlinnd newgroup ai.trae
sudo ctlinnd newgroup ai.codebuddy
sudo ctlinnd newgroup ai.opencode

就先实践到这里。

相关推荐
阿巴~阿巴~38 分钟前
Git版本控制完全指南:从入门到实战(简单版)
linux·服务器·git
Cx330❀41 分钟前
Linux命名管道(FIFO)通信:从原理到实操,一文搞懂跨进程通信
大数据·linux·运维·服务器·elasticsearch·搜索引擎
嵌入式×边缘AI:打怪升级日志1 小时前
嵌入式Linux应用开发快速入门(从零到第一个程序)
linux·运维·notepad++
AI、少年郎1 小时前
MiniMind第 2 篇:破除大模型 “神秘感“, 环境搭建|Win/Linux 本地快速部署
linux·运维·服务器·ai·大模型训练·大模型微调·大模型原理
Vanranrr1 小时前
Windows 环境下 SVN 命令行能力补齐:一次工程化排障与标准化实践
windows·svn
彭泽布衣2 小时前
Linux异常文件名文件如何删除
linux·运维·服务器
优泽云安全2 小时前
如何选择IRCS云信息安全管理系统 IRCS云资源评测
linux·服务器·安全·安全架构
ShineWinsu2 小时前
对于Linux:Ext系列文件系统的解析—下
linux·面试·笔试·文件系统··ext2·挂载分区
小夏子_riotous2 小时前
Docker学习路径——2、安装
linux·运维·分布式·学习·docker·容器·云计算
xiaotao1312 小时前
01-编程基础与数学基石: Python核心数据结构完全指南
数据结构·人工智能·windows·python