1. 所需原料:VM虚拟机、CentOS7 iso镜像、Windows Terminal(终端)
2. 安装telnet客户端
现在主流的Windows10和11都需要在控制面板中开启telnet客户端的功能。为了方便,在用管理员权限打开的powershell中输入
dism.exe /online /Enable-Feature /FeatureName:TelnetClient
等执行完毕后重启即完成安装。
3. 安装VM虚拟机软件和CentOS虚拟机(略,参考网上教程也可用现成的ova导入)
PS:CentOS安装界面中的SOFTWARE SELECTION不要维持默认,否则会没有图形界面;网络板块中把所有网卡的连接开关都打开,否则后面每逢开机都要手动打开。
4. CentOS换源
连上网络后,命令行中两行命令就能搞定:
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum makecache
5. 安装telnet相关软件(视情况追加安装telent客户端)
sudo yum install -y telnet-server xinetd
6. 安装后配置
先看一下NetworkManager连接配置
numcli connection show
这里举个例子,输出是这样的
然后就把ens33的UUID复制到下面的命令中执行:
sudo nmcli connection modify e19a5ae6-c0b8-4bce-b0f7-61115d603b52 ipv4.dns-search "none"
sudo systemctl restart NetworkManager.service
sudo systemctl disable firewalld.service
sudo systemctl enable xinetd.servive
sudo systemctl enable telnet.socket
重启后,进入虚拟机,用ip addr命令查看ens33的ip地址,如图
转到Windows终端,telnet 192.168.17.130即可见到提示输入用户名和密码界面。
PS:(1) 如果不用前面的NetworkManager配置步骤,也能参照以下流程暂时解决问题。但感觉都是权宜之计。如果不配置此步骤,telnet时显示"Kernel"和用户名什么的极慢,输完密码还因为超时而“遗失对主机的连接”,最后退出。一顿排查下来无果。原来也没有往dns反向解析问题这方面想,直到在CentOS本机安装telnet客户端后telent localhost才发现速度还是很慢但还能连接上,才想着问题提应该出在resolve.conf或者hosts上。一看resolve.conf里的search localdomain,尝试着注释掉,重启NM服务,发现telnet正常了,速度也快了。
(2) 禁用firewalld服务也是方便之用,如果有防火墙的硬性需求,则需要参照网上教程添加额外的规则通过23端口的流量,而无需禁用防火墙。
(3) VM虚拟机中的网络设置里面,选择了NAT模式就等价于选择了自定义里面的vmnet8,选择了仅主机模式就等于选择自定义里的vmnet1。如果宿主机ipconfig中有vmnet8的ip地址,可以直接与虚拟机通信,而无需新建一块仅主机模式连接的网卡。