源码:https://github.com/dparrish/libcli
环境
Ubuntu 20.04.2 LTS
编译libcli
参考:README.md
按照libcli中的 README
$ make
$ make install
测试libcli
源码中提供了测试程序
libcli$ ls
clitest <<< 测试程序
clitest.c
由于测试程序只能在telnet远程连接VM时才有效,需要先在VM中安装telnet。
VM安装telnet
# apt-get install telnetd
# apt-get install xinetd
# service xinetd status
● xinetd.service - LSB: Starts or stops the xinetd daemon.
Loaded: loaded (/etc/init.d/xinetd; generated)
Active: active (running) since Thu 2021-09-23 02:27:03 UTC; 1min 30s ago
Docs: man:systemd-sysv-generator(8)
Tasks: 1 (limit: 4582)
Memory: 1.4M
CGroup: /system.slice/xinetd.service
└─4206 /usr/sbin/xinetd -pidfile /run/xinetd.pid -stayalive -inetd_compat -inetd_ipv6
安装telnet完成。
启动测试程序
libcli$ ./clitest
Listening on port 8000
程序启动了一个telnet服务端,监听着端口:8000。接下来,用telnet远程端口8000就可以进入CLI主界面。
登录CLI界面
这里远程软件用的是xshell,设置为telnet远程连接
注意VM中clitest程序要保持运行,连接后直接进入cli登录界面。
//使用默认的用户名/密码登录
Username: fred
Password: nerk
//测试CLI命令
router> help
遇到过的问题
启动测试程序出错
libcli$ ./clitest
./clitest: error while loading shared libraries: libcli.so.1.10: cannot open shared object file: No such file or directory
原因:VM没有安装telnet。
解决办法:安装完telnet后再启动测试程序。