Come poter utilizzare qualsiasi utente in SSH con NAS QNAP

Avendo speso un bel po’ di tempo per configurare al meglio il mio NAS Qnap ho deciso di condividere alcune informazioni realizzando delle piccole “guide” che potrebbero venire utili ad altri facendo risparmiare tempo e fatica.

Primo aspetto da affrontare su un sistema Unix è come poter accedere alla macchina via Telnet o SSH con una utenza diversa da admin per evitare di effettuare danni lanciando programmi o eseguendo operazioni non corrette.

Con le impostazioni standard del QNAP non è possibile connettersi in SSH con nessun utenza diversa da quella di amministrazione e di conseguenza di ROOT. Questa limitazione può essere problematica quando si vogliono installare e lanciare applicativi quali ad esempio amule, che potrebbero dare problemi se eseguiti da ROOT

Per poter usare qualsiasi utenza si sia creata in precedenza si possono eseguire questi passi (i pathname sono relativi alla installazione del TS-119 che ho usato… nel caso usando find / -name *sshd* potrete trovare i path del vostro Qnap)

DISCLAIMER
Questa è una guida amatoriale realizzata gratuitamente e testata unicamente sui sistemi in possesso dell’autore.
L’autore non si assume responsabilità per i danni diretti, indiretti, incidentali, speciali o derivati, la perdita di profitto o le interruzioni d’attività commerciale derivanti dall’uso di questo documento, o dall’impossibilità di usarlo, anche se l’autore fosse stata avvisata di detti danni. L’autore non si assume nessuna responsabilità per le imprecisioni, i ritardi o le omissioni contenute nel presente documento e non avrà obbligo alcuno di informare gli utenti qualora ritenesse opportuno aggiornare le informazioni. L’autore non si assume nessuna responsabilità per le perdite o i danni provocati dall’affidamento da voi fatto sui dati o sui servizi contenuti in questo documento.

(1) Installare openssh dall’ interfaccia grafica di amministrazione del NAS:

QNAP->applicazioni->plugin QPKG->Optware

e quindi collegarsi come admin in SSH ed eseguire i seguenti comandi

ipkg update
ipkg install openssh

(2)Swappare” la versione di sshd del server con quella openssh

mv /mnt/ext/usr/sbin/sshd /mnt/ext/usr/sbin/sshd-origin
cp /share/HDA_DATA/.qpkg/Optware/sbin/sshd /mnt/ext/usr/sbin/sshd

(3) Il filesystem dei serve Qnap è “particolare” in quanto l’OS  viene ogni volta caricato dal firmware dal ramdisk. Per questo motivo ogni modifica al sistema scompare ad ogni riavvio dello stesso a meno di effettuare una serie di operazioni “speciali” per evitare questo evento.  Per questo dovremo copiare alcuni elementi all’esterno dal Ramdisk

cp /etc/ssh/sshd_config /mnt/HDA_ROOT/.config/ssh/

Ora dovremo modificare il file appena copiato

vi /mnt/HDA_ROOT/.config/ssh/sshd_config

Per permettere l’accesso a più utenti ci sono due possibilità, o aggiungere la lista degli utenti che si desiderano (separati da uno spazio) dopo la voce AllowUsers oppure commentare completamente la riga AllowUsers e quindi permettere a qualsiasi utente di loggarsi. Ovviamente consiglio di definire una lista di utenti ben specifica e controllate.

(4) Ricopiamo il nostro file dove si trovava prima

cp /mnt/HDA_ROOT/.config/ssh/sshd_config /etc/ssh

(5) Ora siamo pronti ad effettuare un test ma per prima cosa dobbiamo far caricare le nuove impostazioni alla macchina. Entrate nell’interfaccia grafica di amministrazione del Qnap e quindi:

Servizi di rete->Telnet/SSH

e deselezionate il link di abilitazione ad SSH, aspettate qualche secondo e quindi riattivatelo (in questo modo si caricano le nuove impostazioni).

(6) Se tutto funziona allora è il momento di rendere permanente la nostra configurazione. Per farlo è necessario creare o modificare uno script autorun.sh script da fare eseguire ad ogni riavvio.

Per prima cosa montiamo una config area:

mount -t ext2 /dev/mtdblock5 /tmp/config

editiamo o creiamo il nostro file

vi /tmp/config/autorun.sh

ed inseriamo al suo interno queste righe di codice:

#!/bin/sh

# SSH Config
cp /mnt/HDA_ROOT/.config/ssh/sshd_config /etc/ssh/sshd_config
/etc/init.d/login.sh restart


(7)
Dopo aver salvato assicurarsi che il file abbia i diritti di esecuzione

chmod +x /tmp/config/autorun.sh

e smontate il filesystem

umount /tmp/config

ora riavviando in NAS la configurazione effettuata dovrebbe rimanere in memoria e quindi essere riproposta ad ogni avvio.

Per ogni modifica futura del file sshd_config by ricordatevi di copiarla nel ramdisk

vi /mnt/HDA_ROOT/.config/ssh/sshd_config

cp /mnt/HDA_ROOT/.config/ssh/sshd_config /etc/ssh


DISCLAIMER
Questa è una guida amatoriale realizzata gratuitamente e testata unicamente sui sistemi in possesso dell’autore.
L’autore non si assume responsabilità per i danni diretti, indiretti, incidentali, speciali o derivati, la perdita di profitto o le interruzioni d’attività commerciale derivanti dall’uso di questo documento, o dall’impossibilità di usarlo, anche se l’autore fosse stata avvisata di detti danni. L’autore non si assume nessuna responsabilità per le imprecisioni, i ritardi o le omissioni contenute nel presente documento e non avrà obbligo alcuno di informare gli utenti qualora ritenesse opportuno aggiornare le informazioni. L’autore non si assume nessuna responsabilità per le perdite o i danni provocati dall’affidamento da voi fatto sui dati o sui servizi contenuti in questo documento.

Be Sociable, Share!

About Mauro Monti

Mauro Monti Amante del fare e del provare, del confrontarsi e del scoprire e riscoprire le cose della vita. Programmatore, giornalista, creativo. Fotografo in erba,scrittore,progettista. Sognatore pragmatico, osservatore. Attualmente attivo sia nell’ambito della consulenza informatica sia in quello della comunicazione nelle vesti di giornalista ed addetto ad uffici stampa.