<div dir="ltr"><div>Hi all,</div><div><br></div><div>I try to authenticate my users via mod_radius, but I have problem. </div><div><br></div><div>FreeRadius server gives this error:</div><div><br></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div>Auth: [digest] Cleartext-Password or Digest-HA1 is required for authentication.</div></blockquote><div><br></div><div><div>I think I need to send those attributes from kamailio but I couldn't figure out how to do it.</div><div><br></div><div>Here is diff of my config with default config.</div></div><div><br></div><div>Thanks,</div><div><br></div><div>/Volkan</div><div><br></div><div>=====================</div><div>diff /etc/kamailio/kamailio.cfg /etc/kamailio/kamailio.cfg.original<br></div><div><br></div><div><div>< #!define WITH_DEBUG</div><div>294,297d292</div><div>< loadmodule "auth_radius.so"</div><div>< modparam("auth_radius", "radius_config", "/etc/radiusclient/radiusclient.conf")</div><div>< loadmodule "avpops.so"</div><div><</div><div>739,783c734,739</div><div><       if (is_method("REGISTER"))</div><div><       {</div><div><               avp_print();</div><div><               if (!radius_www_authorize("<a href="http://example.com">example.com</a>")) {</div><div><                       xlog("SCRIPT: www auth return code: $rc\n");</div><div><                       switch ($rc) {</div><div><                       case -7:</div><div><                               send_reply("500", "Server Internal Error");</div><div><                               exit;</div><div><                       case -1:</div><div><                               send_reply("400", "Bad Request");</div><div><                               exit;</div><div><                       default:</div><div><               };</div><div><               if (defined($avp(digest_challenge)) &&</div><div><                       ($avp(digest_challenge) != "")) {</div><div><                       append_to_reply("$avp(digest_challenge)");</div><div><               };</div><div><               send_reply("401", "Unauthorized");</div><div><               exit;</div><div><               };</div><div><       }</div><div><</div><div><         if (from_uri==myself)</div><div><         {</div><div><                 if (!radius_proxy_authorize("<a href="http://example.com">example.com</a>", "$pU")) { # Realm and URI user are taken</div><div><                         switch ($rc) {                           # from P-Preferred-Identity</div><div><                         case -7:                                 # header field</div><div><                                 send_reply("500", "Server Internal Error");</div><div><                                 exit;</div><div><                          case -1:</div><div><                                 send_reply("400", "Bad Request");</div><div><                                 exit;</div><div><                                 default:</div><div><                         };</div><div><                 if (defined($avp(digest_challenge)) &&</div><div><                         ($avp(digest_challenge) != "")) {</div><div><                         append_to_reply("$avp(digest_challenge)");</div><div><                 };</div><div><                 send_reply("407", "Proxy Authentication Required");</div><div><                 exit;</div><div><         };</div><div><</div><div><         }</div><div><</div><div>---</div><div>> #!ifdef WITH_IPAUTH</div><div>>       if((!is_method("REGISTER")) && allow_source_address()) {</div><div>>               # source IP allowed</div><div>>               return;</div><div>>       }</div><div>> #!endif</div><div>784a741,753</div><div>>       if (is_method("REGISTER") || from_uri==myself)</div><div>>       {</div><div>>               # authenticate requests</div><div>>               if (!auth_check("$fd", "subscriber", "1")) {</div><div>>                       auth_challenge("$fd", "0");</div><div>>                       exit;</div><div>>               }</div><div>>               # user authenticated - remove auth header</div><div>>               if(!is_method("REGISTER|PUBLISH"))</div><div>>                       consume_credentials();</div><div>>       }</div><div>>       # if caller is not local subscriber, then check if it calls</div><div>>       # a local destination, otherwise deny, not an open relay here</div></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><br></div>