我正在排除故障/配置“谈话”http://linux.about.com/od/commands/l/blcmdl1_talk.htm 将使用它与其他用户进行安全通信、共享登录信息等,并进行特别的聊天,因为我们不总是随身携带个人笔记本电脑,所以使用“服务器聊天”会更方便
有 talk 客户端包和 talkd 守护进程
它们之前已安装
当我尝试说话时[电子邮件保护]- 获取以下内容:
[No connection yet]
───────[ Error on read from talk daemon: Connection refused. Press any key...]─────────────────────
Then
[Checking for invitation on caller's machine]
我尝试了,pgrep talk
但pgrep talkd
什么也没做
我尝试使用/usr/sbin/in.talkd
它来启动 talkd,结果却显示:必须从 inetd 运行。
I vi /etc/inetd.conf
- 2 行
#:BSD: Shell, login, exec and talk are BSD protocols.
talk dgram udp wait nobody.tty /usr/sbin/in.talkd in.talkd
ntalk dgram udp wait nobody.tty /usr/sbin/in.ntalkd in.ntalkd
我将 nobody.tty 改为 root,将 udp 改为 udp4,因此它变成
#:BSD: Shell, login, exec and talk are BSD protocols.
talk dgram udp4 wait root /usr/sbin/in.talkd in.talkd
ntalk dgram udp4 wait root /usr/sbin/in.ntalkd in.ntalkd
我确定 /usr/sbin/in.talkd
它 /usr/sbin/in.ntalkd
确实存在 - 我重新启动了 inetd - 但 inetd 上没有 talkd 的迹象
在我寻找漏洞的过程中,我找到了这个页面:https://bugs.launchpad.net/ubuntu/+sour…错误/250971
二进制包提示:talkd 两个问题:
- talkd 包将其 inetd 信息放入 /etc/inetd.conf 而不是 /etc/inetd.conf.d
- 对于 talkd 所依赖的 inetd,信息本身的格式不正确:talkd 使用“user.group”格式,而 inet 仅需要用户。我还隐约记得有权限问题,但我不确定。
我尝试使用 vi 进入 /etc/inetd.conf.d - 它给出了新文件 - 也就是说没有任何东西存在,我应该创建新文件吗?格式是什么?我已经将 nobody.tty 组更改为 root,错误报告的后续内容对我来说听起来像中文 - 知道应该怎么做吗?
救命,救命,救命!
提前谢谢
答案1
您了解inetd是按需启动的,对吗?除非有客户端实际尝试连接到该端口,否则 inetd 提供的任何服务都不会真正启动。
我刚刚在我的 Debian 5.0 测试箱上安装。
- 我做了一个
apt-get install talk talkd
- 我重新启动了 inetd
/etc/init.d/openbsd-inetd restart
- 我使用 iptables 允许 udp/517 和 udp/518
然后我就可以连接了talk username2@localhost
。我以其他测试用户的身份看到了该消息,然后执行了,talk username1@localhost
连接就建立了。
答案2
您的用例确实让我感到困惑。in.ntalkd 来自另一个时代,当时窃听并不常见,但现在几乎已经过时了。您将通过不安全的渠道传输机密信息。
话虽如此,请记住 inetd 服务通常受到称为 TCP Wrappers 的系统层保护。in.ntalkd 通常以二进制形式链接到 libwrap。
man hosts_access 应该可以帮助您解决问题。
与其他人一样,我真的不推荐你的方法。