:lastproofread: 2022-09-17 .. _pppoe-server: ############ PPPoE Server ############ VyOS utilizes `accel-ppp`_ to provide PPPoE server functionality. It can be used with local authentication or a connected RADIUS server. .. note:: Please be aware, due to an upstream bug, config changes/commits will restart the ppp daemon and will reset existing PPPoE connections from connected users, in order to become effective. ************************ Configuring PPPoE Server ************************ .. code-block:: none set service pppoe-server access-concentrator PPPoE-Server set service pppoe-server authentication mode local set service pppoe-server authentication local-users username test password 'test' set service pppoe-server client-ip-pool PPPOE-POOL range 192.168.255.2-192.168.255.254 set service pppoe-server default-pool 'PPPOE-POOL' set service pppoe-server outside-address 192.0.2.2 set service pppoe-server gateway-address 192.168.255.1 set service pppoe-server interface eth0 .. cfgcmd:: set service pppoe-server access-concentrator Use this command to set a name for this PPPoE-server access concentrator. .. cfgcmd:: set service pppoe-server authentication mode Set authentication backend. The configured authentication backend is used for all queries. * **radius**: All authentication queries are handled by a configured RADIUS server. * **local**: All authentication queries are handled locally. * **noauth**: Authentication disabled. .. cfgcmd:: set service pppoe-server authentication local-users username password Create `` for local authentication on this system. The users password will be set to ``. .. cfgcmd:: set service pppoe-server client-ip-pool range Use this command to define the first IP address of a pool of addresses to be given to pppoe clients. If notation ``x.x.x.x-x.x.x.x``, it must be within a /24 subnet. If notation ``x.x.x.x/x`` is used there is possibility to set host/netmask. .. cfgcmd:: set service pppoe-server default-pool Use this command to define default address pool name. .. cfgcmd:: set service pppoe-server interface Use this command to define the interface the PPPoE server will use to listen for PPPoE clients. .. cfgcmd:: set service pppoe-server gateway-address
Specifies single `` IP address to be used as local address of PPP interfaces. ********************************* Configuring RADIUS authentication ********************************* To enable RADIUS based authentication, the authentication mode needs to be changed within the configuration. Previous settings like the local users, still exists within the configuration, however they are not used if the mode has been changed from local to radius. Once changed back to local, it will use all local accounts again. .. code-block:: none set service pppoe-server authentication mode radius .. cfgcmd:: set service pppoe-server authentication radius server key Configure RADIUS `` and its required shared `` for communicating with the RADIUS server. Since the RADIUS server would be a single point of failure, multiple RADIUS servers can be setup and will be used subsequentially. For example: .. code-block:: none set service pppoe-server authentication radius server 10.0.0.1 key 'foo' set service pppoe-server authentication radius server 10.0.0.2 key 'foo' .. note:: Some RADIUS severs use an access control list which allows or denies queries, make sure to add your VyOS router to the allowed client list. RADIUS source address ===================== If you are using OSPF as IGP, always the closest interface connected to the RADIUS server is used. With VyOS 1.2 you can bind all outgoing RADIUS requests to a single source IP e.g. the loopback interface. .. cfgcmd:: set service pppoe-server authentication radius source-address
Source IPv4 address used in all RADIUS server queires. .. note:: The ``source-address`` must be configured on one of VyOS interface. Best practice would be a loopback or dummy interface. RADIUS advanced options ======================= .. cfgcmd:: set service pppoe-server authentication radius server port Configure RADIUS `` and its required port for authentication requests. .. cfgcmd:: set service pppoe-server authentication radius server fail-time