OPNsense安装其实很容易,但是远程装就不那么好玩了。
尤其涉及到内网WEBGUI的访问,缺省安装完成以后,只能从内网口访问管理界面,问题是VPC里只有一台Linux机器,还没有浏览器,怎么办?
记录一下安装过程,备查:
一、下载iso镜像并解压
wget https://pkg.opnsense.org/releases/25.7/OPNsense-25.7-dvd-amd64.iso.bz2
bzip2 -d OPNsense-25.7-dvd-amd64.iso.bz2
二、kvm用virt-install安装iso,注意桥接了2个网卡
#!/bin/bash
mkdir -p /export/kvm/opn/
qemu-img create -f qcow2 /export/kvm/opn/opn.qcow2 20G
virt-install \
--name=opn \
--vcpu=2 \
--ram=2048 \
--disk path=/export/kvm/opn/opn.qcow2,format=qcow2,size=20 \
--cdrom=/export/kvm/iso/OPNsense-25.7-dvd-amd64.iso \
--network bridge=br0,model=virtio \
--network bridge=br1,model=virtio \
--os-type unix \
--os-variant freebsd13.1 \
--vnc --vnclisten=0.0.0.0 --vncport=5901
三、vnc连到port 5901上进行安装配置
OPNsense公网的网卡、ip、mask、gateway配置
OPNsense内网的网卡、ip、mask配置
四、设置内网访问
这里就非常鬼畜了,首先在内网的那台机器上做port转发,这台机器是192.168.100.2,做个systemd的service:
cat /etc/systemd/system/opn-proxy.service
[Unit]
After=network.target
Wants=network.target
[Service]
WorkingDirectory=/usr/local/bin/
Type=simple
ExecStart=/usr/local/bin/go-tcp-proxy_1.0.2_linux_amd64 -l ":4430" -r "192.168.100.1:4430"
Restart=on-failure
RestartSec=1s
[Install]
WantedBy=multi-user.target
如上的话,如果web访问http://192.168.100.2:4430,那Host: 192.168.100.1 会被转发给 192.168.100.1 的OPNsense的4430端口
那OPNsense的内网IP是192.168.100.1,登录用户是root,密码是xxxxxxxx
从vnc上登录,然后进入shell,找到webgui的部分,添加port和althostnames的两项
vi /conf/config.xml
......
<webgui>
<protocol>https</protocol>
<ssl-certref>68adc26101eeb</ssl-certref>
<port>4430</port>
<althostnames>192.168.100.2</althostnames>
</webgui>
......
然后重启webgui
configctl webgui restart
然后就可以从能访问到 192.168.100.2:4430 的机器去访问OPNsense的管理界面了。