Mesmo com o ID do fornecedor 0, duvido que funcione, pois ele vai ficar na posição 0x00000000 na frente do valor da string ... a menos que a opção "Não está em conformidade" permita especificar um valor bruto para o atributo 26.
O Supermicro usou um esquema de codificação não padrão, não compatível com rfc para seu atributo de autorização.
Se você observar o formato de Específico do fornecedor
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Vendor-Id
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Vendor-Id (cont) | String...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Pretende-se ter uma PEN de 32 bits no início do atributo. Mas eles acabaram de inserir um valor de string lá.
A única maneira de fazer isso funcionar (se a opção "Não está em conformidade" não ajudar) seria usar outro servidor RADIUS como gateway, traduzindo um atributo RFC como Tipo de Serviço para o atributo Supermicro malformado .
O FreeRADIUS e o radiador podem ser configurados para isso.
FreeRADIUS > = 3.0.0 tem provisões explícitas para lidar com atributos malformados. Eles são marcados como tipos de octetos desconhecidos quando recebidos de um servidor externo, de modo que eles podem ser passados ao proxy.
Você também pode criá-los na configuração usando a sintaxe do atributo OID ( Attr-<TLV/OID string>
).
Nesse caso, você deseja Attr-26
para um tipo de fornecedor bruto VSA. Você precisa de um dos poucos valores de string mágicos:
- Retorno de chamada "H = 1, I = 1" -
Attr-26 = 0x483D312C20493D31
- Usuário "H = 2, I = 2" -
Attr-26 = 0x483D322C20493D32
- Operador "H = 3, I = 3" -
Attr-26 = 0x483D332C20493D33
- Administrador "H = 4, I = 4" -
Attr-26 = 0x483D342C20493D34