OpenWRT:基本网络配置

OpenWRT:基本网络配置

刚刚在我的路由器上安装了 OpenWRT 12.09,但对接口/网桥/VLAN 有点困惑。 我的路由器

首次启动后,我登录并设置了 root 密码,因此我使用 Luci 激活了 Wi-Fi,花了一点时间才弄清楚我可以将 Wi-Fi 与 LAN 桥接起来以访问互联网。但我最终遇到了两个问题:

  1. DHCP 地址由我的 ISP 提供(这很糟糕,因为我必须为每个 IP 支付额外的费用)
  2. 我无法阻止来自 Internet/WAN 的 SHH 访问,所以我的路由器有点脆弱。

我应该如何配置(最好通过 Luci)来执行以下操作:

  • 该路由器为我的内部设备提供 DHCP,并解析 DNS
  • 我的外部地址(LAN/eth0)由 ISP 调制解调器提供(因此我无法简单地阻止此接口中的端口 68)
  • 正确配置我的接口,以便我只能在内部(WAN/radio0)接口上允许 SSH

我应该选择使用网桥还是 VLAN?为什么?文章,没有解释,也没有提供任何线索。


一些注意事项: - 我是 Gentoo Linux 用户,因此我认为自己是一个很好的学习者,但尚未找到任何有关 OpenWRT 的好参考资料。 - 我的设备是TP-Link TL-MR3020顺便说一下,它只有一个 LAN/eth0 接口和一个 wirelss/radio0 接口。

更新:以下是我要审查的一些配置文件;tl;dr

这是我的“/etc/config/dhcp”文件

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
        option filterwin2k '0'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option nonegcache '0'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.auto'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option leasetime '12h'
        option limit '15'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

这是我的“/etc/config/network”文件

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config interface 'lan'
        option ifname 'eth0'
        option type 'bridge'
        option proto 'static'
        option gateway '192.168.100.1'
        option dns '192.168.100.1'
        option ipaddr '192.168.100.2'
        option netmask '255.255.255.0'

这是我的 /etc/config/wireless 文件

config wifi-device 'radio0'
        option type 'mac80211'
        option macaddr '64:66:b3:4d:8b:ce'
        option hwmode '11ng'
        option htmode 'HT20'
        list ht_capab 'SHORT-GI-20'
        list ht_capab 'SHORT-GI-40'
        list ht_capab 'RX-STBC1'
        list ht_capab 'DSSS_CCK-40'
        option txpower '27'
        option country 'US'
        option channel 'auto'

config wifi-iface
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'EDITED'
        option encryption 'psk-mixed'
        option key 'EDITED'

答案1

看来您正在命令行中进行所有配置。

我之前尝试过 OpenWRT,并且安装了 WebGUI 来帮助,你可以参考LuCI 基本信息用于通过 LuCI 设置 Web 用户界面。通过 Web 浏览器访问以配置路由器(例如打开 SSH 和设置其他一些配置)将通过 Web UI 更加容易。

编辑1。

所以你有 3 个问题,我把它们分开,并尝试逐一指出解决方案,以便于理解。有一件事必须声明,因为我的路由器从 OpenWRT 转到 DDWRT,然后又转到 Tomato。所以我使用 VM(虚拟机)进行屏幕捕获和解决方案编写。如果有 1 或 2 个细微的差异,请原谅。我认为大多数情况下都是一样的,因为我在刷新路由器之前使用 VM 尝试 OpenWRT。

准备工作:(如果你还没有准备的话),稍后当您的路由器配置为可供局域网计算机访问时,LuCi 将被访问。摘自LuCI 基本信息

通过以下命令安装 LuCi

opkg update
opkg install luci # without https OR
opkg install luci-ssl # with https support
/etc/init.d/uhttpd start # Start the web server (uHTTPd) manually
/etc/init.d/uhttpd enable # if you wish to start automatically on reboot

1. 我的外部地址 (lan/eth0) 由 ISP 调制解调器提供(因此我无法简单地阻止此接口中的端口 68) 我猜你的意思是获取外部地址,对吧?实际上,当你设置路由器从 ISP(调制解调器)获取 DHCP 时,你的外部地址稍后就会出现在 LuCi 中。

此设置应完成以下工作:

vim /etc/config/network # edit network settings
save

#add the following lines to config
config 'interface' 'wan' # config the interface wan
        option 'proto' 'dhcp' # use protocol DHCP
        option 'ifname' 'eth1' # Physical interface name to assign to, this should be the network port connected to the your ISP modem, may vary eth1 or eth0 or whatever in your case

>>>command
ifup wan # bring WAN interface up

到此为止,当你打开你的客户端电脑(例如 Windows 7)时,打开浏览器,输入 192.168.100.1(你的情况),然后你应该在浏览器中看到 OpenWRT 界面。默认情况下密码为空。

类似于这样的屏幕:

在此处输入图片描述

2. 本路由器为我的内部设备提供 DHCP,并解析设备名称(DNS)

当您可以通过客户端计算机浏览器连接到路由器时,Network -> Hostnames如果这些设备没有主机名或无法自动解析,您可以手动为特定设备分配主机名。(在我的情况下,默认没有问题)

3. 正确配置我的接口,以便我只能在内部(wan/radio0)接口上允许 ssh

根据OpenWRT 中的安全访问文档

“通过让 SSH 服务器 dropbear 和 web 服务器 uhttpd 不监听外部/WAN 端口”

具体操作如下:

vim /etc/config/dropbear
save

# add the following line to your dropbear
option Interface 'lan' # only listen to lan

>>>command
/etc/init.d/dropbear restart # or reboot if it doesn't work

我认为这应该能够说明你的问题的解决方案。

编辑2。 由于这是一篇很长的帖子,我只是添加了参考链接以供将来的读者阅读。

相关内容