radserv
v1.0.2
Published
Reusable RADIUS PEAP/MSCHAPv2 library for Node.js projects
Maintainers
Readme
RadServ
Librería reutilizable de RADIUS + PEAP/MSCHAPv2 para proyectos Node.js/TypeScript.
Uso como librería
import { createRadiusPeapServer } from 'radserv';
import { db } from './db';
const radiusServer = createRadiusPeapServer({
secret: process.env.RADIUS_SECRET || 'testing123',
key: './certs/server.key',
cert: './certs/server.crt',
port: 1812,
host: '0.0.0.0',
serverName: 'MiServidorRADIUS',
async userLookup({ username }) {
const user = await db.users.findUnique({ where: { username } });
if (!user) {
return null;
}
return {
username: user.username,
password: user.radiusPassword,
attributes: [
['Reply-Message', `Bienvenido ${user.username}`],
],
};
},
});
await radiusServer.listen();Carpeta example
Se agregó example/ para probar la librería como si fuera un proyecto externo:
cd example
npm install
npm run devUsa la dependencia local:
"radserv": "file:.."Variables de entorno soportadas:
RADIUS_SECRET=testing123
RADIUS_PORT=1812
RADIUS_HOST=0.0.0.0
RADIUS_TLS_KEY=./certs/server.key
RADIUS_TLS_CERT=./certs/server.crt
RADIUS_SERVER_NAME=RadServ
RADIUS_TEST_USER=testuser
RADIUS_TEST_PASSWORD=password123API exportada
createRadiusPeapServer(options)createStaticUserLookup(users)- tipos desde
src/types.ts
