1、本次使用开源的OPENWRT源码进行编译,OpenWRT是一个高度模块化、高度自动化的嵌入式Linux系统,拥有强大的网络组件和扩展性,常常被用于工控设备、电话、小型机器人、智能家居、路由器以及VOIP设备中。同时,它还提供了100多个已编译好的软件,而且数量还在不断增加,它是一个从零开始编写的、功能齐全的、容易修改的路由器操作系统。
2、本次使用斐讯K3做为适配的路由器。
3、编译环境:使用 Ubuntu 64bit来作为固件编译环境,推荐 Ubuntu 18 LTS x64a)、
a)系统更新
sudo apt-get update
b)安装编译需要用基础环境执行如下命令
sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3.5 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib
要等一段时间安装完成
本次编译采用lede大佬的开源版本库https://github.com/coolsnowwolf/lede
1、使用
git clone https://github.com/coolsnowwolf/lede.git
命令下载好源代码,然后 cd lede 进入目录,编辑过程不用使用root账户,否则编译过程容易出错。
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
<*>,表示将软件包编译进固件,<M>,表示软件包会被编译,但不会编译进固件。<>,不选择。
选项 作用 Target System 目标设备芯片类型 Subtarget 目标子类型,一般是具体板子类型 Target Profile 针对不同路由器的版本再做的一个明确选项参数,一般默认即可 Target Images 生成的固件文件采用何种分区格式 Global build settings 编译时的一些全局参数,这些参数与Linux内核或GCC编译器相关 Advanced configuration options 高级选项参数,用于OpenWrt开发人员,一般用不上 Build the OpenWrt Image Builder 除了编译固件,再编译一个固件编译环境,可以分发给团队中的其他人使用。一般是厂商不想开放自己的全部源代码,给第三方合作伙伴提供这玩意 Build the OpenWrt SDK 产生OpenWrt SDK环境,就是另外一个开发环境 Build the OpenWrt based Toolchain 单独编译出OpenWrt的交叉编译工具 Image configuration 编译好的固件所附带的参数信息 Package features 一些软件包特性 Base system 基本系统命令软件包 Administration 高级管理命令软件包 Boot Loaders 引导程序,教学板不用固件附带,所以这里无选项 Development 开发用工具包 Firmware 不要被名字混淆了,这个的意思是,固件中是否带某些其他外围芯片的固件 Kernel modules 内核编译参数,这里的参数都来自芯片厂对内核的预设配置 Languages 编程语言软件包 Libraries 库软件包 LuCI OpenWrt下顶顶大名的LuCI界面包 Mail 电子邮件相关的软件包 Multimedia 多媒体软件包 Network 与网络相关的软件包 Sound 声音相关的软件包 Utilities 工具软件包 Video Streaming 视频流服务软件包
斐讯K3使用的ARM架构的Broadcom BCM4709C处理器所以选择Broadcom BCM47XX/53XX(ARM)
路径为LUCI-collections-LUCI
LuCI 配置( web 网页管理程序): -LuCI —> 1. Collections —> luci 启用 LuCI -LuCI —> 3. Applications —> luci-app-commands 网页 Shell -LuCI —> 3. Applications —> luci-app-ddns 动态域名 -LuCI —> 3. Applications —> luci-app-firewall 防 火 墙 -LuCI —> 3. Applications —> luci-app-ntpc 时间同步服务器 -LuCI —> 3. Applications —> luci-app-qos 上网管理 -LuCI —> 3. Applications —> luci-app-samba 网络共享 -LuCI —> 4. Themes —> luci-theme-bootstrap 默认主题
以下为我的自定义选择模块
选上 frpc
qos
这里选几个也许能用得着
Themes(主题)
Protocols(协议)
以下为详细配置说明(实际使用时请按需选择,否则会因固件太大(指4M Flash版)而无法生成):
LuCI 配置: LuCI ---> Applications ---> luci-app-accesscontrol #访问时间控制 LuCI ---> Applications ---> luci-app-adbyby-plus #广告屏蔽大师Plus + LuCI ---> Applications ---> luci-app-arpbind #IP/MAC绑定 LuCI ---> Applications ---> luci-app-autoreboot #支持计划重启 LuCI ---> Applications ---> luci-app-ddns #动态域名 DNS(集成阿里DDNS客户端) LuCI ---> Applications ---> luci-app-filetransfer #文件传输(可web安装ipk包) LuCI ---> Applications ---> luci-app-firewall #添加防火墙 LuCI ---> Applications ---> luci-app-flowoffload #Turbo ACC网络加速(集成FLOW,BBR,NAT,DNS... LuCI ---> Applications ---> luci-app-frpc #内网穿透 Frp LuCI ---> Applications ---> luci-app-guest-wifi #WiFi访客网络 LuCI ---> Applications ---> luci-app-ipsec-virtuald #virtual服务器 IPSec LuCI ---> Applications ---> luci-app-mwan3 #MWAN3负载均衡 LuCI ---> Applications ---> luci-app-mwan3helper #MWAN3分流助手 LuCI ---> Applications ---> luci-app-nlbwmon #网络带宽监视器 LuCI ---> Applications ---> luci-app-p p t p-server #virtual服务器 p p t p LuCI ---> Applications ---> luci-app-ramfree #释放内存 LuCI ---> Applications ---> luci-app-samba #网络共享(Samba) LuCI ---> Applications ---> luci-app-sqm #流量智能队列管理(QOS)LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus #乳酸菌饮料兲朝上网Plus+ LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include s-s New Versiong #新SS代理 LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include v2瑞 #v2瑞透明代理 LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include Trojan #Trojan代理 LuCI ---> Applications ---> luci-app-syncdial #多拨虚拟网卡(原macvlan) LuCI ---> Applications ---> luci-app-unblockmusic #解锁网易云灰色歌曲 LuCI ---> Applications ---> luci-app-upnp #通用即插即用UPnP(端口自动转发) LuCI ---> Applications ---> luci-app-vlmcsd #KMS服务器设置 LuCI ---> Applications ---> luci-app-vsftpd #FTP服务器 LuCI ---> Applications ---> luci-app-wirele违禁软件egdb #WiFi无线 LuCI ---> Applications ---> luci-app-wol #WOL网络唤醒 LuCI ---> Applications ---> luci-app-xlnetacc #迅雷快鸟 LuCI ---> Applications ---> luci-app-zerotier #ZeroTier内网穿透 LuCI ---> Applications ---> luci-app-accesscontrol #访问时间控制 LuCI ---> Applications ---> luci-app-adblock #ADB广告过滤 LuCI ---> Applications ---> luci-app-adbyby-plus #广告屏蔽大师Plus + LuCI ---> Applications ---> luci-app-advanced-reboot #Linksys高级重启 LuCI ---> Applications ---> luci-app-ahcp #支持AHCPd LuCI ---> Applications ---> luci-app-aliddns #阿里DDNS客户端(已弃,集成至ddns) LuCI ---> Applications ---> luci-app-amule #aMule下载工具 LuCI ---> Applications ---> luci-app-aria2 # Aria2下载工具 LuCI ---> Applications ---> luci-app-arpbind #IP/MAC绑定 LuCI ---> Applications ---> luci-app-asterisk #支持Asterisk电话服务器 LuCI ---> Applications ---> luci-app-attendedsysupgrade #固件更新升级相关 LuCI ---> Applications ---> luci-app-autoreboot #支持计划重启 LuCI ---> Applications ---> luci-app-baidupcs-web #百度网盘管理LuCI ---> Applications ---> luci-app-birdl-ipv4 #对Birdl-ipv6的支持LuCI ---> Applications ---> luci-app-birdl-ipv6 #对Birdl-ipv4的支持LuCI ---> Applications ---> luci-app-bmx6 #BMX6路由协议 LuCI ---> Applications ---> luci-app-bmx7 #BMX7路由协议 LuCI ---> Applications ---> luci-app-cifsd #网络共享CIFS/SMB服务器LuCI ---> Applications ---> luci-app-cjdns #加密IPV6网络相关 LuCI ---> Applications ---> luci-app-clamav #ClamAV杀毒软件 LuCI ---> Applications ---> luci-app-commands #Shell命令模块 LuCI ---> Applications ---> luci-app-cshark #CloudShark捕获工具 LuCI ---> Applications ---> luci-app-ddns #动态域名 DNS(集成阿里DDNS客户端) LuCI ---> Applications ---> luci-app-diag-core #core诊断工具 LuCI ---> Applications ---> luci-app-dnscrypt-proxy #DNSCrypt解决DNS污染 LuCI ---> Applications ---> luci-app-dnsforwarder #DNSForwarder防DNS污染 LuCI ---> Applications ---> luci-app-dnspod #DNSPod LuCI ---> Applications ---> luci-app-docker #Docker容器LuCI ---> Applications ---> luci-app-dynapoint #DynaPoint(未知) LuCI ---> Applications ---> luci-app-e2guardian #Web内容过滤器 LuCI ---> Applications ---> luci-app-familycloud #家庭云盘 LuCI ---> Applications ---> luci-app-filetransfer #文件传输(可web安装ipk包) LuCI ---> Applications ---> luci-app-firewall #添加防火墙 LuCI ---> Applications ---> luci-app-flowoffload #Turbo ACC网络加速(集成FLOW,BBR,NAT,DNS... LuCI ---> Applications ---> luci-app-freifunk-diagnostics #freifunk组件 诊断(未知) LuCI ---> Applications ---> luci-app-freifunk-policyrouting #freifunk组件 策略路由(未知) LuCI ---> Applications ---> luci-app-freifunk-widgets #freifunk组件 索引(未知) LuCI ---> Applications ---> luci-app-frpc #内网穿透 Frp LuCI ---> Applications ---> luci-app-fwknopd #Firewall Knock Operator服务器 LuCI ---> Applications ---> luci-app-guest-wifi #WiFi访客网络 LuCI ---> Applications ---> luci-app-haproxy-tcp #HAProxy负载均衡-TCP LuCI ---> Applications ---> luci-app-hd-idle #硬盘休眠 LuCI ---> Applications ---> luci-app-hnet #Homenet Status家庭网络控制协议 LuCI ---> Applications ---> luci-app-ipsec-virtuald #virtual服务器 IPSec LuCI ---> Applications ---> luci-app-kodexplorer #KOD可道云私人网盘 LuCI ---> Applications ---> luci-app-lxc #LXC容器管理 LuCI ---> Applications ---> luci-app-meshwizard #网络设置向导 LuCI ---> Applications ---> luci-app-minidlna #完全兼容DLNA / UPnP-AV客户端的服务器软件 LuCI ---> Applications ---> luci-app-mjpg-streamer #兼容Linux-UVC的摄像头程序 LuCI ---> Applications ---> luci-app-mtwifi #MTWiFi驱动的支持LuCI ---> Applications ---> luci-app-mwan3 #MWAN3负载均衡 LuCI ---> Applications ---> luci-app-mwan3helper #MWAN3分流助手 LuCI ---> Applications ---> luci-app-n2n_v2 #N2N内网穿透 N2N v2 virtual服务 LuCI ---> Applications ---> luci-app-netdata #Netdata实时监控(图表)LuCI ---> Applications ---> luci-app-nft-qos #QOS流控 Nftables版 LuCI ---> Applications ---> luci-app-nlbwmon #网络带宽监视器 LuCI ---> Applications ---> luci-app-noddos #NodDOS Clients 阻止DDoS攻击 LuCI ---> Applications ---> luci-app-nps #内网穿透npsLuCI ---> Applications ---> luci-app-ntpc #NTP时间同步服务器 LuCI ---> Applications ---> luci-app-ocserv #OpenConnect virtual服务 LuCI ---> Applications ---> luci-app-olsr #OLSR配置和状态模块 LuCI ---> Applications ---> luci-app-olsr-services #OLSR服务器 LuCI ---> Applications ---> luci-app-olsr-viz #OLSR可视化 LuCI ---> Applications ---> luci-app-openvirtual #Openvirtual客户端 LuCI ---> Applications ---> luci-app-openvirtual-server #易于使用的Openvirtual服务器 Web-UI LuCI ---> Applications ---> luci-app-p910nd #打印服务器模块 LuCI ---> Applications ---> luci-app-pagekitec #Pagekite内网穿透客户端 LuCI ---> Applications ---> luci-app-polipo #Polipo代理(是一个小型且快速的网页缓存代理) LuCI ---> Applications ---> luci-app-pppoe-relay #PPPoE NAT穿透 点对点协议(PPP) LuCI ---> Applications ---> luci-app-p p t p-server #virtual服务器 p p t p LuCI ---> Applications ---> luci-app-privoxy #Privoxy网络代理(带过滤无缓存) LuCI ---> Applications ---> luci-app-qbittorrent #BT下载工具(qBittorrent) LuCI ---> Applications ---> luci-app-qos #流量服务质量(QoS)流控 LuCI ---> Applications ---> luci-app-radicale #CalDAV/CardDAV同步工具 LuCI ---> Applications ---> luci-app-ramfree #释放内存 LuCI ---> Applications ---> luci-app-rp-pppoe-server #Roaring Penguin PPPoE Server 服务器 LuCI ---> Applications ---> luci-app-samba #网络共享(Samba) LuCI ---> Applications ---> luci-app-samba4 #网络共享(Samba4) LuCI ---> Applications ---> luci-app-s-s-libes #SS-libev服务端 LuCI ---> Applications ---> luci-app-shairplay #支持AirPlay功能 LuCI ---> Applications ---> luci-app-siitwizard #SIIT配置向导 SIIT-Wizzard LuCI ---> Applications ---> luci-app-simple-adblock #简单的广告拦截 LuCI ---> Applications ---> luci-app-softethervirtual #SoftEther virtual服务器 NAT穿透LuCI ---> Applications ---> luci-app-splash #Client-Splash是无线MESH网络的一个热点认证系统 LuCI ---> Applications ---> luci-app-sqm #流量智能队列管理(QOS) LuCI ---> Applications ---> luci-app-squid #Squid代理服务器 LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus #乳酸菌饮料兲朝上网Plus+ LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include s-s New Versiong #新SS代理 LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include v2瑞 #v2瑞透明代理 LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include Trojan #Trojan代理LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include Kcptun #Kcptun代理 LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include 违禁软件 Server #乳酸菌饮料服务器 LuCI ---> Applications ---> luci-app-乳酸菌饮料-plus ---> Include 违禁软件 Socks and Tunnel #乳酸菌饮料代理 LuCI ---> Applications ---> luci-app-乳酸菌饮料server-python #违禁软件 Python服务器 LuCI ---> Applications ---> luci-app-statistics #流量监控工具 LuCI ---> Applications ---> luci-app-syncdial #多拨虚拟网卡(原macvlan) LuCI ---> Applications ---> luci-app-tinyproxy #Tinyproxy是 HTTP(S)代理服务器 LuCI ---> Applications ---> luci-app-transmission #BT下载工具 LuCI ---> Applications ---> luci-app-travelmate #旅行路由器 LuCI ---> Applications ---> luci-app-ttyd #网页终端命令行 LuCI ---> Applications ---> luci-app-udpxy #udpxy做组播服务器 LuCI ---> Applications ---> luci-app-uhttpd #uHTTPd Web服务器 LuCI ---> Applications ---> luci-app-unblockmusic #解锁网易云灰色歌曲 LuCI ---> Applications ---> luci-app-unbound #Unbound DNS解析器 LuCI ---> Applications ---> luci-app-upnp #通用即插即用UPnP(端口自动转发) LuCI ---> Applications ---> luci-app-usb-printer #USB 打印服务器 LuCI ---> Applications ---> luci-app-v2瑞-server #v2瑞 服务器 LuCI ---> Applications ---> luci-app-verysync #微力同步LuCI ---> Applications ---> luci-app-vlmcsd #KMS服务器设置 LuCI ---> Applications ---> luci-app-vnstat #vnStat网络监控(图表) LuCI ---> Applications ---> luci-app-virtualbypass #virtual BypassWebUI 绕过virtual*设置 LuCI ---> Applications ---> luci-app-vsftpd #FTP服务器 LuCI ---> Applications ---> luci-app-watchcat #断网检测功能与定时重启 LuCI ---> Applications ---> luci-app-webadmin #Web管理页面设置 LuCI ---> Applications ---> luci-app-wifischedule #WiFi 计划 LuCI ---> Applications ---> luci-app-wireguard #virtual服务器 WireGuard状态 LuCI ---> Applications ---> luci-app-wirele违禁软件egdb #WiFi无线 LuCI ---> Applications ---> luci-app-wol #WOL网络唤醒 LuCI ---> Applications ---> luci-app-wrtbwmon #实时流量监测 LuCI ---> Applications ---> luci-app-xlnetacc #迅雷快鸟 LuCI ---> Applications ---> luci-app-zerotier #ZeroTier内网穿透 支持 iPv6: 1、Extra packages ---> ipv6helper (选定这个后下面几项自动选择了) Network ---> odhcp6c Network ---> odhcpd-ipv6only LuCI ---> Protocols ---> luci-proto-ipv6 LuCI ---> Protocols ---> luci-proto-ppp
Kernel modules (内核模块): Kernel modules —> USB Support —> kmod-usb-ohci 支持 USB 1.0 Kernel modules —> USB Support —> kmod-usb-storage 支持 USB 存储 Kernel modules —> USB Support —> kmod-usb-uhci 支持 USB 1.1 Kernel modules —> USB Support —> kmod-usb2 支持 USB 2.0 Kernel modules —> Video Support —>kmod-video-core Kernel modules —> Video Support —> kmod-video-cpia2 Kernel modules —> Video Support —> kmod-video-gspca-core Kernel modules —> Video Support —> kmod-video-pwc Kernel modules —> Video Support —> kmod-video-uvc Kernel modules —> Video Support —> kmod-video-videobuf2 Multimedia Multimedia–> mjpg-streamer Network Network–> File Transfer –>vsftpd FTP服务器 Network–> ser2net
第一次编译会下载大量源码,为了速度所以包越简单越好接下来按ESC退出再退出,最后提示保存,最后就要开始激动人心的编译啦
make -j8 download v=s
下载dl库(国内请尽量全局上网)
输入
make -j1 V=s
(-j1 后面是线程数。第一次编译推荐用单线程)即可开始编译你要的固件了。
成功编译出固件
openwrt-bcm53xx-phicomm-k3-squashfs.trx
https://github.com/coolsnowwolf/lede
https://blog.csdn.net/sensiki/article/details/70271533
https://aisoa.cn/post-2574.html
E
N
D
本文作者:TideSec
本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/128005.html