实践:开源新闻组软件 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

就先实践到这里。

相关推荐
0xDevNull1 天前
Linux切换JDK版本详细教程
linux
进击的丸子1 天前
虹软人脸服务器版SDK(Linux/ARM Pro)多线程调用及性能优化
linux·数据库·后端
Johny_Zhao2 天前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
阿白的白日梦3 天前
winget基础管理---更新/修改源为国内源
windows
chlk1234 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑4 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件4 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号4 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash5 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI5 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github