7 funzioni utili che può fare un RaspberryPi in rete (FTP/TFTP/WEB/SAMBA/SYSLOG/RADIUS/DHCP)

Vediamo come fare ad impostare un Raspberry Pi per poterlo usare come server nella rete locale.

Di seguito troverete una lista di comandi e azioni da eseguire passo passo per configurare il dispositivo.

[1] SERVER FTP

mkdir -p /home/pi/files/
chmod 777 /home/pi/files/
sudo bash
apt-get install pure-ftpd -y
pure-pw useradd pi -u pi -g pi -d /home/pi/files/

impostare come password: raspberry, poi

pure-pw mkdb
ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/60puredb
service pure-ftpd restart

[2] SERVER TFTP

wget http://downloads.sourceforge.net/project/tftp-server/tftp%20server%20single%20port/opentftpspV1.66.tar.gz

tar xvf opentftpspV1.66.tar.gz
cd opentftp/

g++ opentftpd.cpp -oopentftpd -lpthread

mkdir /home/pi/files
chmod 777 /home/pi/files/

sudo bash

cp opentftpd /usr/bin/
vi /etc/opentftp.ini

nel file dovrete verificare o aggiungere il seguente contenuto

[LISTEN-ON]

[HOME]
/home/pi/files

[TFTP-OPTIONS]
username=pi
ThreadPoolSize=10
Read=Y
Write=Y
Overwrite=Y

/usr/bin/opentftpd -i /etc/opentftp.ini

[3] WEB SERVER

mkdir -p /home/pi/files/
chmod 777 /home/pi/files/
sudo bash
apt-get install apache2 -y
rm -rf /var/www/html/
ln -s /home/pi/files/ /var/www/html

[4] SAMBA SERVER

mkdir -p /home/pi/files/
chmod 777 /home/pi/files/
sudo bash
apt-get update
apt-get install samba -y
rm /etc/samba/smb.conf
vi /etc/samba/smb.conf

nel file dovrete verificare o aggiungere il seguente contenuto

[global] netbios name = server server string = server workgroup = WORKGROUP security = user
[server] comment = server path = "/home/pi/files/" public = yes guest ok = yes read only = no
pdbedit -a -u pi

impostare come password: raspberry, poi

service smbd restart

[5] SYSLOG SERVER

mkdir -p /home/pi/files
chmod 777 /home/pi/files
sudo bash
apt-get install syslog-ng -y

modificare il file config che si trova in:

/etc/syslog-ng/syslog-ng.conf

cambiare le impostazioni di permessi del file config da 640 a 644:

options { chain_hostnames(off); flush_lines(0); use_dns(no); use_fqdn(no); owner("root"); group("adm"); perm(0644); stats_freq(0); bad_hostname("^gconfd$");
};

inserire nel file anche queste 3 linee di configurazione:

source s_net { udp(ip(0.0.0.0) port(514)); };
destination d_files { file("/home/pi/files/${YEAR}_${MONTH}_${DAY}__${HOST}"); };
log { source(s_net); destination(d_files); };

salvare il file modificato e riavviare il server:

service syslog-ng restart

[6] RADIUS SERVER 

sudo bash
apt-get update
apt-get install freeradius -y

modificare (con vi <file>) il file config che si trova in:

/etc/freeradius/clients.conf

nel file dovrete verificare o aggiungere il seguente contenuto

client 0.0.0.0/0 {
 secret = {RADIUS server shared key}
 shortname = anyone
}

modificare (con vi <file>) il file config che si trova in:

/etc/freeradius/users

nel file dovrete verificare o aggiungere il seguente contenuto

testuser Cleartext-password := "password"

[7] DHCP SERVER

sudo bash

impostare un IP statico nel file

/etc/dhcpcd.conf

inserire ad esempio

static value
interface eth0
static ip_address=192.168.0.1/24
static routers=192.168.0.254
static domain_name_servers=8.8.8.8

riavviare il raspberry

reboot

aggiornare

apt-get update
apt-get install isc-dhcp-server -y

modificare il file config per DHCP che si trova in

/etc/dhcp/dhcpd.conf

inserire ad esempio

subnet 192.168.0.0 netmask 255.255.255.0 {
 range 192.168.0.20 192.168.0.40;
 option routers 192.168.0.254;
 option domain-name-servers 8.8.8.8;
}

se volete anche inserire opzioni aggiuntive in base al vendor, aggiungete

option vendor-class-identifier "AppleInc";
option vendor-encapsulated-options "192.168.1.100";

avviare il server DHCP con il comando

dhcpd -cf /etc/dhcp/dhcpd.conf

 

Share on Social Media