FreeRADIUS 3.0.11 は 1 つの NIC インターフェースからのアクセス要求を無視します

FreeRADIUS 3.0.11 は 1 つの NIC インターフェースからのアクセス要求を無視します

FreeRADIUS 3.0.11 を Ubuntu Server 16.04 にインストールしました。Ubuntu Server は ESXi 仮想マシン上で実行されます。仮想マシンには 2 つの NIC があります。1 つは管理ネットワークに接続するためのもので、もう 1 つは顧客 LAN 用です。また、LAN と Ubuntu サーバー間のファイアウォールとして PfSense 仮想マシンも使用しています。

私のネットワークの写真

問題は、私がテストしているときに管理者ネットワーク radtest test 1234 192.168.1.144 1812 testing123FreeRADIUSサーバーは適切に応答しますが、私がテストしているとき無線LAN、FreeRADIUS サーバーは Access-Request をまったく受信しません。サーバーをデバッグ モードで使用していますfreeradius -X

IP は次のとおりです。

Ubuntu server admin NIC, ens160: 192.168.1.144
Ubuntu server NIC to PfSense, ens192: 192.168.34.2
PfSense NIC to Ubuntu server: 192.168.34.1
PfSense LAN NIC: 192.168.33.1

確認しましたtcpダンプUbuntu サーバーが Access-Request パッケージを受信して​​いることを確認します。IP 192.168.33.50 はラップトップの IP です。

sudo tcpdump -i ens192 port 1812
10:24:18.578802 IP 192.168.33.50.63334 > 192.168.34.2.radius: RADIUS, Access-Request (1), id: 0x09 length: 44
10:24:19.578202 IP 192.168.33.50.63334 > 192.168.34.2.radius: RADIUS, Access-Request (1), id: 0x09 length: 44

私は使用していますiptablesHTTP および HTTPS を PfSense 仮想マシンに転送し、管理ネットワークから構成できるようにします。

# Generated by iptables-save v1.6.0 on Wed May  4 10:23:08 2016
*nat
:PREROUTING ACCEPT [2:396]
:INPUT ACCEPT [2:396]
:OUTPUT ACCEPT [3:213]
:POSTROUTING ACCEPT [3:213]
-A PREROUTING -i ens160 -p tcp -m tcp --dport 4954 -j DNAT --to-destination 192.168.34.1:80
-A PREROUTING -i ens160 -p tcp -m tcp --dport 4955 -j DNAT --to-destination 192.168.34.1:443
-A POSTROUTING -d 192.168.34.1/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.34.2
-A POSTROUTING -d 192.168.34.1/32 -p tcp -m tcp --dport 443 -j SNAT --to-source 192.168.34.2
COMMIT
# Completed on Wed May  4 10:23:08 2016
# Generated by iptables-save v1.6.0 on Wed May  4 10:23:08 2016
*filter
:INPUT ACCEPT [24:2294]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [16:3245]
-A INPUT -p udp -m udp -m multiport --dports 1812 -m comment --comment     "Accept RADIUS" -j ACCEPT
COMMIT
# Completed on Wed May  4 10:23:08 2016

FreeRADIUS がポート 1812 をリッスンしていることを確認しました。

netstat -lun | grep 1812
udp        0      0 127.0.0.1:18120         0.0.0.0:*
udp        0      0 0.0.0.0:1812            0.0.0.0:*
udp6       0      0 :::1812                 :::*

ポート 1812 を別のインターフェイスに転送しようとしましたが、設定が間違っているか、役に立ちませんでした。これを機能させる簡単な方法があるはずですが、まだ見つけていません。ご協力ありがとうございます。

アップデート

私は入れようとしたリクエストのログ記録requests = ${logdir}/radiusd-%{%{Virtual-Server}:-DEFAULT}-%Y%m%d.logファイル内の行のコメントを解除してオンにします/etc/freeradius/radiusd.conf。ただし、これによりエラーが発生し、freeradius はまったく起動しません。デバッグ モードは開始されますが、radius.log ファイルには何も書き込まれません。

sudo freeradius
radiusd: Error: Failed to parse log{} section.

バージョン 3.0.9 以降、リクエストのログ記録が機能していないようです。ソース: github.com/FreeRADIUS/freeradius-server/issues/1131

答え1

問題は解決しました。他の NIC にもゲートウェイを追加する必要がありました。

これが私の最初の/etc/network/interfacesファイルです:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
# This is an autoconfigured IPv6 interface
#auto ens160
#iface ens160 inet6 auto

# ESXi NIC admin network
auto ens160
iface ens160 inet static
address 192.168.1.144
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 192.168.1.3 192.168.1.2

# ESXi NIC DMZ
auto ens192
iface ens192 inet static
address 192.168.34.2
netmask 255.255.255.0

2 番目のルーティング テーブルを追加しました (最後の行が追加されます)。

sudo vim /etc/iproute2/rt_tables
#
# reserved values
#
255 local
254 main
253 default
0   unspec
#
# local
#
#1  inr.ruhep
1 rt2

新しいルーティング テーブルを構成しました:

sudo ip route add 192.168.34.0/24 dev ens192 src 192.168.34.2 table rt2
sudo ip route add default via 192.168.34.1 dev ens192 table rt2

追加されたルーティング ルール:

sudo ip rule add from 192.168.34.2/32 table rt2
sudo ip rule add to 192.168.34.2/32 table rt2

構成が機能することをテストし、/etc/network/interfacesファイルを変更して永続的にしました。

iface ens192 inet static
    address 192.168.34.2
    netmask 255.255.255.0
    post-up ip route add 192.168.34.0/24 dev ens192 src 192.168.34.2 table rt2
    post-up ip route add default via 192.168.34.1 dev ens192 table rt2
    post-up ip rule add from 192.168.34.2/32 table rt2
    post-up ip rule add to 192.168.34.2/32 table rt2

解決策のソース:https://www.thomas-krenn.com/en/wiki/Two_Default_Gateways_on_One_System

IPテーブル

ポートフォワーディングを継続するには、発信インターフェースiptables ルールに (-o ens192 を追加):

-A POSTROUTING -d 192.168.34.1/32 -o ens192 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.34.2
-A POSTROUTING -d 192.168.34.1/32 -o ens192 -p tcp -m tcp --dport 443 -j SNAT --to-source 192.168.34.2

関連情報