私はopenvpnを初めて使用します。私はubuntu14.04にopenvpnセットアップを持っています。これには、認証、許可、およびアカウンティング用の半径AAAバックエンドがあります。これに加えて、プールからのIPをframed-ip-addressとして割り当てるようにfreeradiusを構成しました。 radiusログから、認証と承認が成功すると、freeradiusはaccess-requestメッセージに応答してframed-ip-addressを返すようですが、openvpnはそれを無視し、サーバーディレクティブで指定された独自のIPプールを使用しているようです。私が欲しいのは、openvpnがfreeradiusによって返されるframed-ip-addressを尊重することですが、そうではありません。私はopenvpnの経験がないので、専門家の助けをいただければ幸いです。
これが私のopenvpn側の設定で、問題があると思います。
local 192.168.7.100
mode server
port 443
proto tcp
dev tun
tcp-queue-limit 256
tun-mtu 1500
mssfix 1460
sndbuf 0
rcvbuf 0
cipher AES-256-CBC
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/dh2048.pem
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0
plugin /etc/openvpn/rad/radiusplugin.so /etc/openvpn/rad/443.cnf
client-cert-not-required
username-as-common-name
server 10.10.0.0 255.255.0.0
;ifconfig-pool 10.0.0.0 10.1.255.254
ifconfig-pool-persist ipp.txt
Push "redirect-gateway def1"
Push "dhcp-option DNS 8.8.8.8"
Push "dhcp-option DNS 8.8.4.4"
reneg-sec 0
keepalive 60 120
tcp-nodelay
comp-lzo
persist-key
persist-tun
status /etc/openvpn/443.log 1
status-version 1
verb 4
management 192.168.7.100 7505
NAS-Identifier=openvpn_tcp_443
Service-Type=5
Framed-Protocol=1
NAS-Port-Type=5
NAS-IP-Address=192.168.7.100
OpenVPNConfig=/etc/openvpn/tcp_443.conf
subnet=255.255.255.0
overwriteccfiles=true
nonfatalaccounting=false
server
{
acctport=1813
authport=1812
name=192.168.7.102
retry=1
wait=1
sharedsecret=--redacted--
}
server
{
acctport=1813
authport=1812
name=192.168.7.103
retry=1
wait=1
sharedsecret=--redacted--
}
ありがとうございました。
======================
Configに次の変更を加えました。
topology subnet
Push "topology subnet"
client-config-dir clients
Client-config-dirを追加した後、framed-ip-addressが割り当てられます。先に述べたように、今ではクライアントから何も閲覧できません。トラフィックを適切にルーティングできないようです。 openvpnが処理することを期待しているルーティングの問題、トポロジ、またはその他の問題があるようですが、そうではありません。理解に役立つ関連情報は次のとおりです。
Openvpnクライアントに割り当てられたIPは、マシンのゲートウェイにルーティングが設定されているパブリックIPです。 strongswanで使用すると、同じクライアントIPが正しく機能します。つまり、適切にルーティング可能です。しかし、openvpnではそうではありません。
サーバーマシンのifconfigからの関連する出力。
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.10.0.1 P-t-P:10.10.0.1 Mask:255.255.255.0
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
ルート-nの関連する出力
0.0.0.0 --redacted-- 0.0.0.0 UG 0 0 0 em2
10.10.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0
--redacted-- 0.0.0.0 255.255.255.248 U 0 0 0 em2
rp_filter情報:
root@us1-ps1:~# sysctl -a | grep rp_filter
net.ipv4.conf.all.arp_filter = 0
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.arp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.em1.arp_filter = 0
net.ipv4.conf.em1.rp_filter = 0
net.ipv4.conf.em2.arp_filter = 0
net.ipv4.conf.em2.rp_filter = 0
net.ipv4.conf.lo.arp_filter = 0
net.ipv4.conf.lo.rp_filter = 0
net.ipv4.conf.tun0.arp_filter = 0
net.ipv4.conf.tun0.rp_filter = 0
root@us1-ps1:~# ping 10.10.0.1
PING 10.10.0.1 (10.10.0.1) 56(84) bytes of data.
64 bytes from 10.10.0.1: icmp_seq=1 ttl=64 time=0.058 ms
64 bytes from 10.10.0.1: icmp_seq=2 ttl=64 time=0.037 ms
インターネットは正常に機能しています。
root@us1-ps1:~# ping google.com
PING google.com (172.217.0.46) 56(84) bytes of data.
64 bytes from lga15s43-in-f14.1e100.net (172.217.0.46): icmp_seq=1 ttl=51 time=20.3 ms
64 bytes from lga15s43-in-f14.1e100.net (172.217.0.46): icmp_seq=2 ttl=51 time=20.2 ms
64 bytes from lga15s43-in-f14.1e100.net (172.217.0.46): icmp_seq=3 ttl=51 time=20.2 ms
^C
--- google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 20.216/20.279/20.338/0.171 ms
デフォルトゲートウェイにもpingを実行できます。
他に印刷したい情報があれば教えてください。
ありがとうございました
client-config-dirディレクティブを指定します。 radiusプラグインは、openvpnがIPを割り当てるために使用するファイルを配置する場所です。
例えば。 client-config-dirクライアント