使用 Nginx 作为代理服务器 Nginx 是一个高性能的反向代理服务器,支持 SSL 和压缩,适合处理大量连接。 安装 Nginx 通过 OpenWrt 的包管理器安装 Nginx: opkg update opkg install nginx 配置 Nginx 编辑配置文件: vi /etc/nginx/nginx.conf 添加一个简单的配置,如: server { listen 80; server_name 192.168.1.1; location / { proxy_pass http://server_ip:server_port; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } 将 server_ip 和 server_port 替换为目标服务器的 IP 和端口。 启动 Nginx: /etc/init.d/nginx start 访问控制 可以通过 OpenWrt 的 ACL(访问控制列表)限制 Nginx 代理的访问权限: opkg install uci uci set network@wan=255.255.255./24 uci set firewall@wan=1 uci commit 使用 Squid 作为代理服务器 Squid 是一个高速缓存代理服务器,适合需要缓存的场景。 安装 Squid opkg update opkg install squid 配置 Squid 编辑配置文件: vi /etc/squid/squid.conf 添加一个简单的配置,如: httpd { port 80 logformat plain access_log /var/log/squi...
使用 Nginx 作为代理服务器
Nginx 是一个高性能的反向代理服务器,支持 SSL 和压缩,适合处理大量连接。
安装 Nginx
通过 OpenWrt 的包管理器安装 Nginx:
opkg update opkg install nginx
配置 Nginx
编辑配置文件:
vi /etc/nginx/nginx.conf
添加一个简单的配置,如:
server {
listen 80;
server_name 192.168.1.1;
location / {
proxy_pass http://server_ip:server_port;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
将 server_ip 和 server_port 替换为目标服务器的 IP 和端口。
启动 Nginx:
/etc/init.d/nginx start
访问控制
可以通过 OpenWrt 的 ACL(访问控制列表)限制 Nginx 代理的访问权限:
opkg install uci uci set network@wan=255.255.255./24 uci set firewall@wan=1 uci commit
使用 Squid 作为代理服务器
Squid 是一个高速缓存代理服务器,适合需要缓存的场景。
安装 Squid
opkg update opkg install squid
配置 Squid
编辑配置文件:
vi /etc/squid/squid.conf
添加一个简单的配置,如:
httpd {
port 80
logformat plain
access_log /var/log/squid/access.log
cache_size 1024
}
启动 Squid:
/etc/init.d/squid start
配置访问控制
使用 OpenWrt 的 firewall uthander:
opkg install uci uci set firewall@wan=1 uci commit
使用 OpenWrt 内置的 IP 转发
OpenWrt 提供了内置的 IP 转发功能,可以在路由器上设置特定端口的转发。
配置 IP 转发
编辑路由器的 IP 转发表:
vi /etc/iproute2/rt_tables
添加一个新的路由表,如:
10 192.168.1.1/24
然后设置默认路由:
ip route add 0.../ via 192.168.1.1 dev eth
持久化配置
将这些配置持久化保存:
vi /etc/rc.local
在文件末尾添加:
ip route save
使用 NAT 模式
OpenWrt 支持 NAT 转换,可以通过 NAT 模式将内部网络连接到外部网络。
配置 NAT
使用 iptables 配置 NAT:
iptables -t nat -A POSTROUTING -o eth -j MASQUERADE iptables -t nat -A PREROUTING -i eth -j ACCEPT iptables -t nat -A POSTROUTING -o eth -j MASQUERADE
保存 iptables 规则:
sh -c "iptables-save > /etc/iptables.user"
启动 NAT
重启网络设备:
reboot
使用 OpenWrt 的 luci 界面
OpenWrt 提供一个 web 界面(luci),可以通过浏览器配置代理服务器。
访问 luci:
luci
在网络部分找到代理设置,配置所需的代理服务器。
使用 Privoxy 作为代理
Privoxy 是一个轻量级的代理服务器,可以与 OpenWrt 结合使用。
安装 Privoxy
opkg install privoxy
配置 Privoxy
编辑配置文件:
vi /etc/privoxy/privoxy.conf
添加一个简单的配置,如:
listen 80 listen 443 origin * 0...
启动 Privoxy:
/etc/init.d/privoxy start
注意事项
- 防火墙规则:确保 OpenWrt 的防火墙允许代理服务器监听特定的端口。
- 访问控制:使用 OpenWrt 的 ACL 来限制代理服务器的访问权限。
- 安全性:确保代理服务器只绑定于非管理员网络接口,并且配置 SSL 以加密连接。
通过以上方法,你可以根据需求选择合适的代理工具和配置方式来实现路由器的代理功能。

相关文章







