## Steg 1:Installera Freeradius Server
På RHEL 8:
```
sudo yum installera freeradius freeradius-utils -y
```
På RHEL 7 och CentOS:
```
sudo yum installera freeradius freeradius-utils -y
sudo yum installera freeradius-postgresql -y
```
Steg 2:Konfigurera PostgreSQL-databas
På CentOS/RHEL 7:
Innan du påbörjar konfigurationen, se till att PostgreSQL-databasservern är korrekt installerad och initierad. Så här kan du göra det:
```
sudo yum installera postgresql-server
```
Om du redan har konfigurerat databasen kan du hoppa över detta steg.
Ställ in PostgreSQL-användare och bevilja rättigheter
Skapa en ny användare i PostgreSQL som heter "radius."
```
sudo -u postgres bash
skapa användarradie
```
Tilldela sedan lämpliga behörigheter till den nyskapade användaren som heter "radius".
```
psql -U postgres
ÄNDRA ANVÄNDARE radie MED LÖSENORD "radius";
```
Skapa sedan databasen som ska användas av FreeRADIUS.
```
SKAPA DATABAS radie;
GE ALLA PRIVILEGIER PÅ DATABAS radie TILL radie;
\q
```
Uppdatera databaskonfigurationen
Redigera filen som finns på "/etc/freeradius/sql/main/authorize."
```
sudo vi /etc/freeradius/sql/main/authorize
```
Leta reda på raderna som börjar med "driver =". Ändra dem till följande rader:
```
drivrutin =pgsql
connectString =host=localhost port=5432 dbname=radius användare=radius lösenord=radius
```
På RHEL 8:
Den senaste FreeRADIUS-versionen är konfigurerad för att använda SQLite som standard. Följ därför stegen som beskrivs nedan för att konfigurera den för att använda PostgreSQL istället.
Aktivera först PostgreSQL-stöd i konfigurationsfilen.
```
sudo vi /etc/raddb/mods-enabled/sql
```
Leta reda på följande rad:
```
sql {
```
och ta bort kommentaren (om någon) och ändra den till:
```
sql {
drivrutin =pgsql
}
```
Byt sedan ut standarddrivrutinen för autentisering och redovisning med PostgreSQL-drivrutinen. Byt ut följande rader:
```
auth {
förare =dummy
}
redovisning {
förare =dummy
}
```
Med följande:
```
auth {
drivrutin =pgsql
}
redovisning {
drivrutin =pgsql
}
```
Uppdatera parametrarna i avsnittet "sql" genom att ange databasens värdnamn, port och referenser.
```
[sql]
värd =lokalvärd
port =5432
användare =radie
lösenord =radie
databas =radie
```
Ändra slutligen standarddrivrutinen i "auktorisera"-policyn till PostgreSQL. Ändra följande rad:
```
sql {
förare =dummy
}
```
Till följande:
```
sql {
drivrutin =pgsql
}
```
Om du uppmanas, starta om Freeradius.
```
sudo systemctl starta om freeradius
```
Steg 3:Konfigurera Freeradius-servern
Standardkonfigurationsfilen för FreeRADIUS är i allmänhet tillräcklig. Det rekommenderas dock att du granskar och gör nödvändiga justeringar baserat på dina specifika krav.
Steg 4:Aktivera och starta Freeradius
Kör följande kommandon för att aktivera och starta Freeradius-tjänsten.
På RHEL 8:
```
sudo systemctl aktivera freeradius
sudo systemctl starta freeradius
```
På RHEL 7 och CentOS:
```
sudo systemctl aktivera radiusd
sudo systemctl startradie
```
Steg 5:Testa om Freeradius-servern körs
Ange detta kommando för att verifiera att tjänsten är igång:
```
sudo netstat -ltup | grep radie
```
Som ett resultat bör du se något i stil med följande:
```
tcp6 0 0 :::5080 :::* LISTEN 20550/radiusd
udp6 0 0 :::1812 :::* LYSSNA 20550/radiusd
tcp 0 0 0.0.0.0:1812 0.0.0.0:* LISTEN 20550/radiusd
```
Denna utdata betyder att Freeradius-servern körs på portarna 1812/UDP och 1812/TCP.
Steg 6:Anslut till Freeradius-servern
För att testa om du lyckas autentisera genom Freeradius, installera FreeRADIUS-klienten på samma maskin.
På RHEL 8:
```
sudo yum installera freeradius-client -y
```
På RHEL 7 och CentOS:
```
sudo yum installera freeradius-client -y
```
Ett försök att köra ett exempelskript kommer att testa anslutningen till servern. Se till att ersätta "användarnamn" och "lösenord" med de faktiska värdena.
```
#!/bin/bash
Konfigurationsfil för Freeeradius-klienten:
echo -e 'klient freeradius {\nserver 127.0.0.1\nport 1812\nhemlig testning123\n}\n'> ~/.freeradius/freeradius.conf
Exempel på autentiseringsskript:
echo -e '#!/bin/bash\n\nusername="$2"\nlösenord="$3"\n\n/usr/bin/radtest $username $password -s ~/.freeradius/freeradius.conf'> ~/freeradius-client.sh
Ge "kör"-behörighet till skriptet:
chmod +x ~/freeradius-client.sh
Testa anslutningen:
~/freeradius-client.sh klient användarnamn lösenord
```
Om skriptet returnerar något i stil med "Användarnamn ='användarnamn', Auth-Type =Lösenord", är anslutningen till Freeradius-servern framgångsrik, vilket slutför installationen.