PPPoE Access Concentrator

monitorNella pagina PPPoE e Wireless LAN si è evidenziato come l’Access Concentrator (AC) funga da concentratore di accessi tra la rete wireless e la rete cablata, in maniera simile a quanto faccia un concentratore di accessi per i modem. In questo paragrafo si vuole fornire un esempio di come effettuare le configurazioni con i sistemi più diffusi quali i router Cisco e un server basato su Windows 2000.

Esempio con Windows 2000

L’esempio successivo descrive la configurazione di un Access Concentrator basato su tecnologia Windows 2000. Si assume che il computer abbia almeno queste caratteristiche:

  • due schede di rete
  • che il sistema operativo in uso sia Windows 2000 Professional/Server e che l’utente abbia familiarità con gli strumenti di amministrazione degli utenti e di rete.
  • La configurazione è stata realizzata attraverso il programma RASPPPOE di Robert Schlabbach disponibile al sito Internet http://www.raspppoe.com/, da cui si può scaricare il driver. È necessario notare che il driver citato in questo esempio non supporta più di dieci connessioni in ingresso.

Distinguiamo la fase di installazione del driver, comune sia per il client che per il server, e la fase di configurazione della componente Remote Access Server (RAS) di Windows per agire come PPPoE Access Concentrator.

Preparazione all’installazione

Per installare il driver, si suggerisce di salvare i files aperti e di chiudere le applicazioni aperte, in quanto è possibile che l’installazione del driver richieda un riavvio del computer. È necessario che tutte le operazioni di configurazione vengano effettuate con un utente di classe “administrator”.

Come descritto precedentemente si assume che il sistema operativo sia già stato installato e che vengano installati sia l’ultimo Service Pack disponibile che le HotFix di sicurezza specificate da Microsoft. Di default Windows 2000 è solito installare la feature Remote Access and Internet Routing: verificare che tale componente sia installato correttamente nel sistema e nel caso installarlo avendo cura di riapplicare il Service Pack o le HotFix. Per ragioni pratiche si suggerisce in questa fase di definire e configurare gli utenti da abilitare al collegamento remoto: è comunque possibile definire gli utenti anche in un secondo momento.

Successivamente è necessario collegare una interfaccia di rete sull’hub o switch della rete interna, l’altra sulla rete su cui sono attestati gli Access Point. Dal pannello Network and Dial-Up Connections aprire le proprietà della scheda di rete collegata verso la rete intranet e disabilitare tutti i servizi collegati (es: NetBIOS, File and Print services, Client for Microsoft Network), avendo cura di lasciare abilitato solamente il protocollo TCP/IP e configurandolo opportunamente.

Installazione del protocollo

Durante questa fase verrà installato il driver Point-to-Point over Ethernet sul sistema, configurandolo nella scheda di rete collegata verso la rete wireless.

  • Scompattare il file ZIP del driver PPPoE in una directory temporanea
  • Nel pannello Network and Dial-Up Connections aprire la proprietà della scheda di rete collegata verso la rete wireless e premere sul bottone Install
  • Nella finestra Select Network Component selezionare Protocol e premere il bottone Add
  • Nella finestra Network Protocol selezionare Have Disk
  • Nella finestra Install From Disk selezionare la directory temporanea in cui si è scompattato il driver e premere Ok
  • Selezionare PPP over Ethernet Protocol e premere Ok
  • Durante l’installazione del protocollo verranno presentatate diverse finestre con il messaggio Digital Signature Not Found: premere sempre i pulsanti Yes o Continue Anyway
  • Ritornati alla finestra delle proprietà della rete, togliere i checkbox a tutti i protocolli con l’esclusione di PPP over Ethernet Protocol

È probabile che il protocollo PPPoE venga anche abilitato sulla scheda di rete collegata verso la intranet pertanto è consigliabile controllare le proprietà di tale scheda e verificare che non ci sia PPP over Ethernet Protocol. Qualora ci fosse, assicurarsi che venga disabilitato su tale interfaccia.

A seguito di questa fase è suggerito effettuare un riavvio manuale del sistema, nel caso in cui non venga proposto da Windows.

Configurazione di Remote Access and Internet Routing

Durante questa fase si procederà a configurare Remote Access and Internet Routing per abilitare il sistema ad accettare le connessioni PPPoE, ovvero per fungere da PPPoE Access Concentrator. Il driver usato durante questo esempio usa il nome del computer come nome dell’Access Concentrator.

  • Nel pannello Network and Dial-Up Connections, selezionare l’icona Make New connection per avviare il wizard di configurazione della rete.

network_connection_wizard

  • Selezionare l’opzione Accept incoming connections e premere Next
  • Nella lista dei devices dovrebbe apparire la scheda di rete collegata alla rete wireless, selezionarla e premere Next

network_connection_wizard2

  • Apparirà una schermata Incoming Virtual Private Connection, premere Next
  • Alla schermata Allowed User, selezionare gli utenti di sistema che hanno il permesso di accedere in dial-in. Premere Next
  • La finestra successiva è Networking Components. Si noterà che il PPP over Ethernet Protocol è nella lista, ma il checkbox è in grigio. Disabilitare tutti i protocolli con l’eccezione di TCP/IP e premere Next
  • Nella finestra riassuntiva premere Next e successivamente Finish

Verrà create l’icona Incoming Connections nel pannello Network and Dial-Up Connections, selezionarla e premere Properties.

  • Nella sezione General, selezionare la scheda di rete collegata alla rete wireless, avendo cura di deselezionare gli altri devices

incoming_connections_properties_-_general

  • Nella sezione Users selezionare gli utenti da abilitare all’accesso PPPoE e selezionare Require all users to secure their password and data

incoming_connections_properties_-_users

  • Nella sezione Networking lasciare abilitato solamente il protocollo TCP/IP e disabilitare altri protocolli, ad esempio NetBEUI e File and Printer Sharing for Microsoft Networks
  • Selezionare PPP over Ethernet Protocol e fare click due volte con il tasto sinistro del mouse. Una finestra di dialogo verrà aperta: nella sezione General aumentare il valore di Number of lines (WAN endpoints) fino al massimo consentito di 10. Premere Ok
  • Selezionare Internet Protocol (TCP/IP) e premere il pulsante Properties.
  • Selezionare Allow callers to access my local area network
  • Selezionare Assign TCP/IP address automatically using DHCP qualora fosse disponibile un server DHCP sulla rete intranet.

incoming_connections_properties_-_network

  • Qualora non fosse disponibile un DHCP server, selezionare un intervallo di indirizzi IP, avendo cura di selezionare pero’ l’opzione Internet Connection Sharing (ICS) nella scheda di rete collegata alla Intranet. Questo è necessario per effettuare una riscrittura dell’header IP (NAT) quando si attraversa l’Access Concentrator.
Esempio con Cisco

L’esempio precedente ha visto come configurare un server Windows 2000 per fungere da Access Concentrator. La limitazione dell’uso di Windows è sostanzialmente legata al massimo numero di collegamenti in ingresso, e la poca praticità di integrazione in un ambito più ampio, dove è già stata definita una politica di dial-up. È possibile sfruttare un router Cisco come Access Concentrator qualora sia presente in azienda. Tale router deve disporre di una interfaccia ethernet libera che dovrà essere collegata all’hub o switch su cui sono attestati gli Access Point. Si assume che si abbia familiarità con il sistema Cisco IOS e con la configurazione del dial-up.

L’esempio successivo è stato provato con una versione di IOS 12.2(11)T2.

!
version 12.2
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname myRouter
!
aaa new-model
!
aaa authentication ppp default local
aaa authorization network default local
aaa session-id common
enable secret 5 $1$5jXZ$ljbx2bPsFugsdD4WrHLSK.
!
username user1 password 0 user1
username user2 password 0 user2
memory-size iomem 5
ip subnet-zero
!
vpdn enable
!
vpdn-group PPPOE
 description Incoming PPPoE
 accept-dialin
  protocol pppoe
  virtual-template 10
!
interface Loopback1
 description Loopback interface for PPP
 ip address 192.168.1.1 255.255.255.0
!
interface FastEthernet0/0
 ip address 192.168.0.1 255.255.255.0
 speed auto
!
interface Ethernet1/0
 no ip address
 half-duplex
 pppoe enable
!
interface Virtual-Template10
 description PPPoE General Template
 mtu 1492
 ip unnumbered Loopback1
 peer default ip address pool PPP_POOL
 ppp encrypt mppe 128
 ppp authentication ms-chapv2 ms-chap chap
!
ip local pool PPP_POOL 192.168.1.100 192.168.1.200
ip classless
no ip http server
ip pim bidir-enable
!
!
!
line con 0
line aux 0
line vty 0 4
 password mypassword
!
end

In questo esempio è da notare la configurazione del Virtual Template con i parametri ppp encrypt mppe 128 e ppp authentication ms-chapv2 ms-chap chap, che consentono la crittografia a 128-bit la prima e lo scambio di password sicure la seconda.

È da notare che Cisco IOS supporta sia la possibilità di configurare l’autenticazione utenti attraverso RADIUS e Tacacs+ che la possibilità di assegnare gli IP addresses direttamente da un DHCP server. Si faccia riferimento alla Configuration Guide dell’IOS per avere maggiori informazioni sulla configurazione di tali opzioni.

Esempio con altri sistemi

È possibile usare altri sistemi operativi, al di fuori di quelli elencati precedentemente, per realizzare un Access Concentrator PPPoE. Questo capitolo vuole fornire, per completezza, un accenno alla loro configurazione, ma si sottolinea che questi esempi sono stati provati solo in parte, pertanto non privi di eventuali problematiche. Si assume che il lettore abbia esperienza nella configurazione dei sistemi operativi citati, compreso la ricompilazione di programmi, modifica del kernel e relativa ricompilazione.

FreeBSD

Aggiungere le seguenti linee nel file /etc/rc.conf

### PPPOE
pppoed_enable="YES"
pppoed_interface="de0"
pppoed_flags="-P /var/run/ppoed.pid -l pppoein"

Definire nel file /etc/ppp/ppp.conf la configurazione del ppp per l’accesso PPPoE:

pppoein:
 set ifaddr 10.0.2.1 10.0.2.20
 set dns 10.0.2.1
 set nbns 10.0.2.1
 disable utmp
 disable passwdauth
 enable lqr
 set cd 5!
 accept dns
 enable mschapv2 mppe
 disable deflate pred1
 deny deflate pred1
 set mppe 128 *
 set timeout 0
 set mru max 1400
 set mtu max 1400
 set speed sync
Linux

Verificare che nella propria distribuzione sia disponibile il software Roaring Penguin PPPoE, di solito contrassegnato come rp-pppoe, e installarlo. Qualora la distribuzione non abbia a disposizione il software, è possibile scaricare i binari ed i sorgenti dal sito http://www.roaringpenguin.com/pppoe.

È necessario inoltre scaricare le patch del kernel e le patch di PPPD 2.4.1 per abilitare l’uso del protocollo MPPE e, successivamente, applicarle. L’URL da cui si possono scaricare tali patch è http://public.planetmirror.com/pub/mppe/. Alcune distribuzioni forniscono il programma PPPD e il kernel con queste feature abilitate: si consiglia di verificare con il manuale o con le FAQ della propria distribuzione.

In seguito, configurare il file /etc/ppp/pppoe-server-options in maniera simile a quanto segue:

debug
name *
lock
mtu 1490
mru 1490
proxyarp
auth
+chap
+chapms
+chapms-v2
ipcp-accept-local
ipcp-accept-remote
lcp-echo-failure 3
lcp-echo-interval 5
deflate 0
mppe-128
mppe-40
mppe-stateless

Configurare successivamente il file /etc/ppp/pppoe-server-pool-ip con un intervallo di IP address da assegnare agli utenti wireless, e configurare il file /etc/ppp/chap-secrets. Per eseguire il server PPPoE su Linux, eseguire il seguente comando:

pppoe-server -I ethX -C ACNAME-l 192.168.0.1 -p /etc/ppp/pppoe-server-pool-ip

dove ethX è l’interfaccia collegata alla rete Wireless, ACNAME è il nome dell’Access Concentrator e 192.168.0.1 è l’IP address da assegnare al server, che deve essere congruente con quanto specificato in /etc/ppp/pppoe-server-pool-ip. Per maggiori informazioni sui parametri di configurazione, si faccia riferimento alle man pages o alla documentazione allegata con i programmi.