Se il settore dell'automobile si fosse sviluppato come l'industria informatica, oggi avremmo veicoli che costano 25 dollari e fanno 500 Km con un litro.

— Bill Gates

ArchLinux Small Business Server (2) - Amministrazione remota con OpenSSH

http://www.stenoweb.it/files/blog/archlogo.png Seconda puntata della guida Arch Linux Small Business Server. Oggi continuiamo con le operazioni preliminari installando OpenSSH per amministrare da remoto il nostro server e impostiamo gli indirizzi IP alle nostre schede di rete.

Amministrazione remota con OpenSSH

Se vogliamo amministrare remotamente il nostro server dobbiamo installare e configurare openssh. Non vorrete mica ogni volta andare davanti alla console ! :D

Installazione

Installazione e avvio del servizio :
pacman -S openssh

/etc/rc.d/sshd start

Se ora tento di connettermi da un'altra macchina via rete ottengo un bel "Connection refused". Devo editare il file /etc/hosts.allow e aggiungere gli hosts abilitati. Per ora (orrore!) abilitiamo tutti:
nano /etc/hosts.allow

e aggiungiamo la riga :
sshd sshd1 sshd2 : ALL : allow

Ora qualunque host/Indirizzo IP può tentare di connettersi remotamente. Non è una buona idea, internet è pieno di "cattivi" meglio ridurre al minimo i rischi.

Configurazione

Per ridurre (magari si potesse azzerarli) i rischi di sicurezza editiamo il file di configurazione :

nano /etc/ssh/sshd_config

e inseriamo (o togliamo il commento) almeno queste voci:
#Cambiamo la porta di default (da 22 a 2223) e accettiamo solo connessioni dalla rete interna
#Se, come capita spesso, dovete remotamente amministrare il vostro server da internet mettete solo Port 2223
#a questo punto scegliete una password "robusta" per il vostro utente amministratore
ListenAddress 192.168.10.1:2223
#Abilitiamo solo il nostro utente a collegarsi (esempio admin da ovunque, foobar solo dall'host 192.168.10.20)
AllowUsers admin foobar@192.168.10.20
#Rifiutiamo le connessioni con l'utente root. Meglio usare admin e poi su se non ho abilitato sudo
#Se ho installato sudo e disabilitato root non serve
DenyUsers root
PermitRootLogin no
#Abilita solo il protocollo ssh2 molto più sicuro di ssh1
Protocol 2

e riavviamo il servizio con
/etc/rc.d/sshd restart

Ora non ci resta che editare il nostro rc.conf per abilitare il daemon sshd ad ogni riavvio:
nano /etc/rc.conf

e modificare la riga DAEMONS aggiungendo sshd
DAEMONS=(... ... ... ... ... sshd ... ... ...)

Configurazione schede di rete

Anche se non c'entra con OpenSSH, preparamo le schede di rete con la configurazione che ci servirà: editiamo ancora una volta il nostro /etc/rc.conf e nella sezione network config impostiamo gli indirizzi IP. Ne nostro esempio per la rete interna connessa a eth0 la classe C completa :

  • network address : 192.168.20.0
  • gateway : 192.168.20.1
  • netmask : 255.255.255.0
  • broadcast : 192.168.20.255
lo="lo 127.0.0.1"
eth0="eth0 192.168.20.1 netmask 255.255.255.0 broadcast 192.168.20.255"
eth1="dhcp"

Nell'esempio eth1 dispone di un indirizzo IP dinamico assegnato dal provider (o dal router DSL, o da quello che avete). Se disponiamo di un indirizzo statico inseriamolo qui nella riga "eth1".

Alla prossima !