<div>Hi All,<br>
<br>
I installed FreeRADIUS Version 2.1.1, for host i686-suse-linux-gnu on OpenSuse 11.1 using Yast. I am having problems testing the radius server 10.10.10.11 from an external host 10.10.10.10 using radtest. <br>
<br>
Background: I configured clients.conf, users and radiusd.conf. After changing permissions on the /etc/radb/certs directory I was able to start "radiusd -X" without any reported errors, warnings.<br>
<br>
I then successfully tested locally using radtest in another terminal window on the radius server (IP = 10.10.10.11)<br>
<br>
linux-au5f:/home/michael # radtest pencil richard6 10.10.10.11 0 testing123<br>
Sending Access-Request of id 63 to 10.10.10.11 port 1812<br>
User-Name = "pencil"<br>
User-Password = "richard6"<br>
NAS-IP-Address = 127.0.0.2<br>
NAS-Port = 0<br>
rad_recv: Access-Accept packet from host 10.10.10.11 port 1812, id=63, length=35<br>
Reply-Message = "Hello, pencil"<br>
<br>
Next I tried testing radiusd using radtest from a 2nd host (10.10.10.10), which I had added previously added to the clients.conf (Note I can successfully ping the radius server 10.10.10.11 from this 2nd host 10.10.10.10). But, I get no response from radius acc-request on either the radiusd terminal window or the radtest terminal window.<br>
<br>
Below is the clients.conf definitiion<br>
<br>
client dellM65 {<br>
ipaddr = 10.10.10.10<br>
require_message_authenticator = no<br>
secret = "testing123"<br>
nastype = "other"<br>
}<br>
<br>
I did a capture with Wireshark and I can see the radius request, but no responses. Have I missed some part of the Freeradius config to recognize the external radtest host?<br>
<br>
I have attached some output to hopefully answer anything not described above.<br>
<br>
Attached is the radiusd -X output<br>
<br>
FreeRADIUS Version 2.1.1, for host i686-suse-linux-gnu, built on Dec 3 2008 at 10:47:13<br>
Copyright (C) 1999-2008 The FreeRADIUS server project and contributors. <br>
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A <br>
PARTICULAR PURPOSE. <br>
You may redistribute copies of FreeRADIUS under the terms of the <br>
GNU General Public License v2. <br>
Starting - reading configuration files ...<br>
including configuration file /etc/raddb/radiusd.conf<br>
including configuration file /etc/raddb/proxy.conf<br>
including configuration file /etc/raddb/clients.conf<br>
including files in directory /etc/raddb/modules/<br>
including configuration file /etc/raddb/modules/exec<br>
including configuration file /etc/raddb/modules/inner-eap<br>
including configuration file /etc/raddb/modules/sql_log<br>
including configuration file /etc/raddb/modules/ippool<br>
including configuration file /etc/raddb/modules/radutmp<br>
including configuration file /etc/raddb/modules/preprocess<br>
including configuration file /etc/raddb/modules/detail.example.com<br>
including configuration file /etc/raddb/modules/krb5<br>
including configuration file /etc/raddb/modules/passwd<br>
including configuration file /etc/raddb/modules/logintime<br>
including configuration file /etc/raddb/modules/counter<br>
including configuration file /etc/raddb/modules/pap<br>
including configuration file /etc/raddb/modules/detail<br>
including configuration file /etc/raddb/modules/chap<br>
including configuration file /etc/raddb/modules/files<br>
including configuration file /etc/raddb/modules/attr_filter<br>
including configuration file /etc/raddb/modules/unix<br>
including configuration file /etc/raddb/modules/always<br>
including configuration file /etc/raddb/modules/linelog<br>
including configuration file /etc/raddb/modules/policy<br>
including configuration file /etc/raddb/modules/attr_rewrite<br>
including configuration file /etc/raddb/modules/checkval<br>
including configuration file /etc/raddb/modules/echo<br>
including configuration file /etc/raddb/modules/expr<br>
including configuration file /etc/raddb/modules/digest<br>
including configuration file /etc/raddb/modules/wimax<br>
including configuration file /etc/raddb/modules/acct_unique<br>
including configuration file /etc/raddb/modules/etc_group<br>
including configuration file /etc/raddb/modules/sradutmp<br>
including configuration file /etc/raddb/modules/mac2vlan<br>
including configuration file /etc/raddb/modules/mac2ip<br>
including configuration file /etc/raddb/modules/realm<br>
including configuration file /etc/raddb/modules/expiration<br>
including configuration file /etc/raddb/modules/mschap<br>
including configuration file /etc/raddb/modules/smbpasswd<br>
including configuration file /etc/raddb/modules/detail.log<br>
including configuration file /etc/raddb/modules/pam<br>
including configuration file /etc/raddb/modules/ldap<br>
including configuration file /etc/raddb/eap.conf<br>
including configuration file /etc/raddb/sql.conf<br>
including configuration file /etc/raddb/sql/mysql/dialup.conf<br>
including configuration file /etc/raddb/sql/mysql/counter.conf<br>
including configuration file /etc/raddb/policy.conf<br>
including files in directory /etc/raddb/sites-enabled/<br>
including configuration file /etc/raddb/sites-enabled/default<br>
including configuration file /etc/raddb/sites-enabled/inner-tunnel<br>
group = radiusd<br>
user = radiusd<br>
including dictionary file /etc/raddb/dictionary<br>
main {<br>
prefix = "/usr"<br>
localstatedir = "/var"<br>
logdir = "/var/log/radius"<br>
libdir = "/usr/lib/freeradius"<br>
radacctdir = "/var/log/radius/radacct"<br>
hostname_lookups = no<br>
max_request_time = 30<br>
cleanup_delay = 5<br>
max_requests = 1024<br>
allow_core_dumps = no<br>
pidfile = "/var/run/radiusd/radiusd.pid"<br>
checkrad = "/usr/sbin/checkrad"<br>
debug_level = 0<br>
proxy_requests = yes<br>
log {<br>
stripped_names = yes<br>
auth = yes<br>
auth_badpass = yes<br>
auth_goodpass = yes<br>
}<br>
security {<br>
max_attributes = 200<br>
reject_delay = 1<br>
status_server = yes<br>
}<br>
}<br>
client localhost {<br>
ipaddr = 127.0.0.1<br>
require_message_authenticator = no<br>
secret = "testing123"<br>
nastype = "other"<br>
}<br>
client 10.10.10.11 {<br>
require_message_authenticator = no<br>
secret = "testing123"<br>
shortname = "liv1"<br>
}<br>
client dellM65 {<br>
ipaddr = 10.10.10.10<br>
require_message_authenticator = no<br>
secret = "testing123"<br>
nastype = "other"<br>
}<br>
radiusd: #### Loading Realms and Home Servers ####<br>
proxy server {<br>
retry_delay = 5<br>
retry_count = 3<br>
default_fallback = no<br>
dead_time = 120<br>
wake_all_if_all_dead = no<br>
}<br>
home_server localhost {<br>
ipaddr = 127.0.0.1<br>
port = 1812<br>
type = "auth"<br>
secret = "testing123"<br>
response_window = 20<br>
max_outstanding = 65536<br>
zombie_period = 40<br>
status_check = "status-server"<br>
ping_interval = 30<br>
check_interval = 30<br>
num_answers_to_alive = 3<br>
num_pings_to_alive = 3<br>
revive_interval = 120<br>
status_check_timeout = 4<br>
}<br>
home_server_pool my_auth_failover {<br>
type = fail-over<br>
home_server = localhost<br>
}<br>
realm example.com {<br>
auth_pool = my_auth_failover<br>
}<br>
realm LOCAL {<br>
}<br>
radiusd: #### Instantiating modules ####<br>
instantiate {<br>
Module: Linked to module rlm_exec<br>
Module: Instantiating exec<br>
exec {<br>
wait = no<br>
input_pairs = "request"<br>
shell_escape = yes<br>
}<br>
Module: Linked to module rlm_expr<br>
Module: Instantiating expr<br>
Module: Linked to module rlm_expiration<br>
Module: Instantiating expiration<br>
expiration {<br>
reply-message = "Password Has Expired "<br>
}<br>
Module: Linked to module rlm_logintime<br>
Module: Instantiating logintime<br>
logintime {<br>
reply-message = "You are calling outside your allowed timespan "<br>
minimum-timeout = 60<br>
}<br>
}<br>
radiusd: #### Loading Virtual Servers ####<br>
server inner-tunnel {<br>
modules {<br>
Module: Checking authenticate {...} for more modules to load<br>
Module: Linked to module rlm_pap<br>
Module: Instantiating pap<br>
pap {<br>
encryption_scheme = "auto"<br>
auto_header = no<br>
}<br>
Module: Linked to module rlm_chap<br>
Module: Instantiating chap<br>
Module: Linked to module rlm_mschap<br>
Module: Instantiating mschap<br>
mschap {<br>
use_mppe = yes<br>
require_encryption = no<br>
require_strong = no<br>
with_ntdomain_hack = no<br>
}<br>
Module: Linked to module rlm_unix<br>
Module: Instantiating unix<br>
unix {<br>
radwtmp = "/var/log/radius/radwtmp"<br>
}<br>
Module: Linked to module rlm_eap<br>
Module: Instantiating eap<br>
eap {<br>
default_eap_type = "md5"<br>
timer_expire = 60<br>
ignore_unknown_eap_types = no<br>
cisco_accounting_username_bug = no<br>
max_sessions = 2048<br>
}<br>
Module: Linked to sub-module rlm_eap_md5<br>
Module: Instantiating eap-md5<br>
Module: Linked to sub-module rlm_eap_leap<br>
Module: Instantiating eap-leap<br>
Module: Linked to sub-module rlm_eap_gtc<br>
Module: Instantiating eap-gtc<br>
gtc {<br>
challenge = "Password: "<br>
auth_type = "PAP"<br>
}<br>
Module: Linked to sub-module rlm_eap_tls<br>
Module: Instantiating eap-tls<br>
tls {<br>
rsa_key_exchange = no<br>
dh_key_exchange = yes<br>
rsa_key_length = 512<br>
dh_key_length = 512<br>
verify_depth = 0<br>
pem_file_type = yes<br>
private_key_file = "/etc/raddb/certs/server.pem"<br>
certificate_file = "/etc/raddb/certs/server.pem"<br>
CA_file = "/etc/raddb/certs/ca.pem"<br>
private_key_password = "whatever"<br>
dh_file = "/etc/raddb/certs/dh"<br>
random_file = "/etc/raddb/certs/random"<br>
fragment_size = 1024<br>
include_length = yes<br>
check_crl = no<br>
cipher_list = "DEFAULT"<br>
make_cert_command = "/etc/raddb/certs/bootstrap"<br>
cache {<br>
enable = no<br>
lifetime = 24<br>
max_entries = 255<br>
}<br>
}<br>
Module: Linked to sub-module rlm_eap_ttls<br>
Module: Instantiating eap-ttls<br>
ttls {<br>
default_eap_type = "md5"<br>
copy_request_to_tunnel = no<br>
use_tunneled_reply = no<br>
virtual_server = "inner-tunnel"<br>
}<br>
Module: Linked to sub-module rlm_eap_peap<br>
Module: Instantiating eap-peap<br>
peap {<br>
default_eap_type = "mschapv2"<br>
copy_request_to_tunnel = no<br>
use_tunneled_reply = no<br>
proxy_tunneled_request_as_eap = yes<br>
virtual_server = "inner-tunnel"<br>
}<br>
Module: Linked to sub-module rlm_eap_mschapv2<br>
Module: Instantiating eap-mschapv2<br>
mschapv2 {<br>
with_ntdomain_hack = no<br>
}<br>
Module: Checking authorize {...} for more modules to load<br>
Module: Linked to module rlm_realm<br>
Module: Instantiating suffix<br>
realm suffix {<br>
format = "suffix"<br>
delimiter = "@"<br>
ignore_default = no<br>
ignore_null = no<br>
}<br>
Module: Linked to module rlm_files<br>
Module: Instantiating files<br>
files {<br>
usersfile = "/etc/raddb/users"<br>
acctusersfile = "/etc/raddb/acct_users"<br>
preproxy_usersfile = "/etc/raddb/preproxy_users"<br>
compat = "no"<br>
}<br>
Module: Checking session {...} for more modules to load<br>
Module: Linked to module rlm_radutmp<br>
Module: Instantiating radutmp<br>
radutmp {<br>
filename = "/var/log/radius/radutmp"<br>
username = "%{User-Name}"<br>
case_sensitive = yes<br>
check_with_nas = yes<br>
perm = 384<br>
callerid = yes<br>
}<br>
Module: Checking post-proxy {...} for more modules to load<br>
Module: Checking post-auth {...} for more modules to load<br>
Module: Linked to module rlm_attr_filter<br>
Module: Instantiating attr_filter.access_reject<br>
attr_filter attr_filter.access_reject {<br>
attrsfile = "/etc/raddb/attrs.access_reject"<br>
key = "%{User-Name}"<br>
}<br>
}<br>
}<br>
modules {<br>
Module: Checking authenticate {...} for more modules to load<br>
Module: Checking authorize {...} for more modules to load<br>
Module: Linked to module rlm_preprocess<br>
Module: Instantiating preprocess<br>
preprocess {<br>
huntgroups = "/etc/raddb/huntgroups"<br>
hints = "/etc/raddb/hints"<br>
with_ascend_hack = no<br>
ascend_channels_per_line = 23<br>
with_ntdomain_hack = no<br>
with_specialix_jetstream_hack = no<br>
with_cisco_vsa_hack = no<br>
with_alvarion_vsa_hack = no<br>
}<br>
Module: Checking preacct {...} for more modules to load<br>
Module: Linked to module rlm_acct_unique<br>
Module: Instantiating acct_unique<br>
acct_unique {<br>
key = "User-Name, Acct-Session-Id, NAS-IP-Address, Client-IP-Address, NAS-Port"<br>
}<br>
Module: Checking accounting {...} for more modules to load<br>
Module: Linked to module rlm_detail<br>
Module: Instantiating detail<br>
detail {<br>
detailfile = "/var/log/radius/radacct/%{Client-IP-Address}/detail-%Y%m%d"<br>
header = "%t"<br>
detailperm = 384<br>
dirperm = 493<br>
locking = no<br>
log_packet_header = no<br>
}<br>
Module: Instantiating attr_filter.accounting_response<br>
attr_filter attr_filter.accounting_response {<br>
attrsfile = "/etc/raddb/attrs.accounting_response"<br>
key = "%{User-Name}"<br>
}<br>
Module: Checking session {...} for more modules to load<br>
Module: Checking post-proxy {...} for more modules to load<br>
Module: Checking post-auth {...} for more modules to load<br>
}<br>
radiusd: #### Opening IP addresses and Ports ####<br>
listen {<br>
type = "auth"<br>
ipaddr = 10.10.10.11<br>
port = 1812<br>
}<br>
listen {<br>
type = "acct"<br>
ipaddr = *<br>
port = 0<br>
}<br>
Listening on authentication address 10.10.10.11 port 1812<br>
Listening on accounting address * port 1813<br>
Listening on proxy address 10.10.10.11 port 1814<br>
Ready to process requests.<br>
<br>
<br>
Attached is wireshark capture on the radius server (10.10.10.11) showing the packet arrives from the rad test client (10.10.10.10)<br>
<br>
No. Time Source Destination Protocol Info<br>
2 2.997586 10.10.10.10 10.10.10.11 RADIUS Access-Request(1) (id=241, l=58), Duplicate Request ID:241</div>
<div>Frame 2 (100 bytes on wire, 100 bytes captured)<br>
Arrival Time: Mar 7, 2009 10:02:20.966147000<br>
[Time delta from previous captured frame: 2.997586000 seconds]<br>
[Time delta from previous displayed frame: 2.997586000 seconds]<br>
[Time since reference or first frame: 2.997586000 seconds]<br>
Frame Number: 2<br>
Frame Length: 100 bytes<br>
Capture Length: 100 bytes<br>
[Frame is marked: False]<br>
[Protocols in frame: eth:ip:udp:radius]<br>
[Coloring Rule Name: UDP]<br>
[Coloring Rule String: udp]<br>
Ethernet II, Src: 3com_ac:0a:0c (00:50:da:ac:0a:0c), Dst: DellPcba_78:86:32 (00:0d:56:78:86:32)<br>
Destination: DellPcba_78:86:32 (00:0d:56:78:86:32)<br>
Address: DellPcba_78:86:32 (00:0d:56:78:86:32)<br>
.... ...0 .... .... .... .... = IG bit: Individual address (unicast)<br>
.... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)<br>
Source: 3com_ac:0a:0c (00:50:da:ac:0a:0c)<br>
Address: 3com_ac:0a:0c (00:50:da:ac:0a:0c)<br>
.... ...0 .... .... .... .... = IG bit: Individual address (unicast)<br>
.... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)<br>
Type: IP (0x0800)<br>
Internet Protocol, Src: 10.10.10.10 (10.10.10.10), Dst: 10.10.10.11 (10.10.10.11)<br>
Version: 4<br>
Header length: 20 bytes<br>
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)<br>
0000 00.. = Differentiated Services Codepoint: Default (0x00)<br>
.... ..0. = ECN-Capable Transport (ECT): 0<br>
.... ...0 = ECN-CE: 0<br>
Total Length: 86<br>
Identification: 0x0000 (0)<br>
Flags: 0x04 (Don't Fragment)<br>
0... = Reserved bit: Not set<br>
.1.. = Don't fragment: Set<br>
..0. = More fragments: Not set<br>
Fragment offset: 0<br>
Time to live: 64<br>
Protocol: UDP (0x11)<br>
Header checksum: 0x126f [correct]<br>
[Good: True]<br>
[Bad : False]<br>
Source: 10.10.10.10 (10.10.10.10)<br>
Destination: 10.10.10.11 (10.10.10.11)<br>
User Datagram Protocol, Src Port: 47970 (47970), Dst Port: radius (1812)<br>
Source port: 47970 (47970)<br>
Destination port: radius (1812)<br>
Length: 66<br>
Checksum: 0xc264 [correct]<br>
[Good Checksum: True]<br>
[Bad Checksum: False]<br>
Radius Protocol<br>
Code: Access-Request (1)<br>
Packet identifier: 0xf1 (241)<br>
Length: 58<br>
Authenticator: DF4A578FEB08708AEFEA3236CA37650C<br>
[Duplicate Request: 241]<br>
Attribute Value Pairs<br>
AVP: l=8 t=User-Name(1): pencil<br>
User-Name: pencil<br>
AVP: l=18 t=User-Password(2): Encrypted<br>
User-Password: \267\017U\227\320\216\305\y\373\314\377\306\316\350\255<br>
AVP: l=6 t=NAS-IP-Address(4): 127.0.0.2<br>
NAS-IP-Address: 127.0.0.2 (127.0.0.2)<br>
AVP: l=6 t=NAS-Port(5): 0<br>
NAS-Port: 0<br>
</div>
<div> </div>
<div><br>
<br>
</div>
<div id='MAILCIAMA013-5bb049b29b72c4' class='aol_ad_footer'><br/><font style="color:black;font:normal 10pt arial,san-serif;"> <hr style="margin-top:10px"/>Access 350+ FREE radio stations anytime from anywhere on the web. <a href="http://toolbar.aol.com/aolradio/download.html?ncid=emlweusdown00000035">Get the Radio Toolbar</a>!</font> </div>