Пытаюсь сделать одну маленькую поделку…
Для астера авторизация вызова через radius
Использую модуль pyrad
При отправлении пакета на авторизацию, ответ от самого сервера есть, а модуль возвращает timeout.
Вот запрос:
import sys
import socket
import pyrad.packet
from pyrad.client import Client
from pyrad.dictionary import Dictionary
#pyrad.client.timeout=10
srv = Client(server="******", secret="*********", authport=1812,
dict=Dictionary("dictionary"))
req = srv.CreateAuthPacket(code=pyrad.packet.AccessRequest)
req["User-Name"]="90000003"
req["NAS-IP-Address"]="*******"
req["Calling-Station-Id"]="90000003"
req["Called-Station-Id"]="7926******"
req["h323-gw-id"]="***********"
req["h323-remote-address"]="80.***.***.***"
req["h323-conf-id"]="C0C44122 2DD611CC A417ACEB 04AF8742"
try:
reply=srv.SendPacket(req)
except pyrad.client.Timeout:
print "radius server does not reply"
sys.exit(1)
except socket.error,error:
print "Network Error: " + error[1]
if reply.code==pyrad.packet.AccessAccept:
print "access accepted"
else:
print "access denied"
print "Attributes returned by server:"
for i in reply.keys():
print "%s: %s" % (i,reply[i])
992.177174 client -> server RADIUS Access-Request(1) (id=186, l=177)
992.211383 server -> client RADIUS Access-Reject(3) (id=186, l=47)
Но модуль все время возвращает timeout
raise Timeout
pyrad.client.Timeout