0%

用Telnet观看Nyancat动画

前言

最近在知乎上看到一个关于VPS有趣的用途的问题,其中一个回答提到了可以搭建Telnet服务器,成功运行后别人用Telnet连接你的主机将会看到Nyancat动画。大致效果如图所示:

然而,回答中给出的Demo已经失效,telnet nyancat.dakko.us会返回一个Connection refused错误。不过值得庆幸的是,这个项目的官方网站Nyan Cat Telnet ServerGitHub Repo都还可以正常访问,因此可以尝试重新把它搭起来。不用着急,这个过程并不复杂,请按照以下方法操作即可。

下载编译

在命令行执行:

1
2
3
4
git clone https://github.com/klange/nyancat.git
cd nyancat
make
mv src/nyancat /usr/bin #or make install

这时,通过nyancatnyancat -t命令就可以查看效果。接下来把Telnet配置好就行了。

配置Telnet

使用包管理工具安装xinetd,例如

1
yum install xinetd

然后在/etc/xinetd.d目录下新建文件nyancat,内容为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
group = root
server = /usr/bin/nyancat
server_args = -t
log_on_failure += USERID
disable = no
instances = 10
per_source = 2
}

其中instancesper_source限制了总的连接数和单个IP的连接数。
接下来,重启xinetd服务:

1
systemctl restart xinetd

这时,你就可以通过telnet localhost查看是否一切正常。如果没有问题,配置防火墙开放23端口,就可以从公网访问了。试试用Telnet连接你的主机,效果是不是非常酷炫?
不过,博主在实践中发现,开放telnet的23端口可能会产生大量异常流量。解决方法是修改telnet的端口号,编辑/etc/services,找到telnet,将23改为一个你喜欢的数字(比如8080)。或者,可以在不需要使用时直接关闭这个服务,在nyancat中设置disable: yes即可。

更多

俗话说,有光的地方就有Bad Apple!!。很久以前的一篇文章近期完成的数个游戏及应用中,就提到博主成功使用HTML页面播放Bad Apple!!字符画。目前,博主正在尝试搭建一个可以播放Bad Apple!!的Telnet服务器,敬请期待。


本文更新于2019年2月14日:
博主通过魔改Nyancat的代码,成功地实现了可以播放Bad Apple!!的Telnet服务器。可以阅读文章用Telnet观看Bad Apple!!查看。

🍭支持一根棒棒糖!