Aller au contenu

Installer Et Configurer Le Sftp


Amsonia

Messages recommandés

Avant-propos et pré-requis

- Malgré le fait que Synology fasse figurer la configuration dy SFTP au même niveau que le FTP dans le DSM, le SFTP n'est pas une version sécurisée du FTP mais une utilisation du SSH dans une optique de transferts de fichiers. Voir cette fiche Wikipedia pour plus d'informations.

- La configuration par défaut du SFTP, que ce soit celui interne à nos NAS ou celui d'optware, est gobablement celle du SSH interne : sur le port 22 et le mot de passe de l'utilisateur root est celui de l'utilisateur admin.

- Nous aurons besoin d'un accès en lignes de commande.

Si vous savez activer SSH ou Telnet dans le DSM et utiliser un terminal, bravo :)

Sinon, jetez un œil à

- Penser à faire une sauvegarde desdits fichiers avant de faire les modifications.

Dans un terminal, entrer la commande suivante pour créer une copie :

cp fichier.ext fichier.ext_copie
- Nous allons devoir éditer certains fichiers du système. Si vous savez utiliser vi, nano ou autre, tant mieux. Sinon, ajoutez la source "MertyMade" (http://packages.mertymade.com/) dans le Centre de Paquets et installez le paquet "Config File Editor". Nous devrons modifier quelque peu la configuratin de CFE afin d'éditer certains fichiers de manière simple. Ces modifications se font dans le dernier fichier de la liste déroulante de CFE.
Avant le DSM 4.1 v2636 On peut mettre en place le SFTP par 4 manières différentes, classées ici par ordre décroissant d'efficience. 1/ En activant le serveur SFTP interne source : http://forum.synolog...server#Method_3 On utilise le serveur SSH interne et on va simplement modifier une ligne de configuration pour activer le serveur SFTP interne. 1.1/ Le fichier à modifier : /etc/ssh/sshd_config 1.1.1/ Faire une sauvegarde
cp etc/ssh/sshd_config etc/ssh/sshd_config_default[/code]




[font=lucida sans unicode,lucida grande,sans-serif]1.1.2/ Modifier le fichier de telle sorte que la liste des serveurs SFTP soit égale à celle-ci :[/font]

[code]# override default of no subsystems #Subsystem sftp /usr/libexec/sftp-server Subsystem sftp internal-sftp[/code]
Ce fichier de configuration est déjà présent dans la liste proposée par Config File Editor. [font=lucida sans unicode,lucida grande,sans-serif]1.2/ Enfin, relancer le daemon SSH via le DSM.[/font] [i]Panneau de configuration > Terminal > SSH[/i] Pour arrêter le serveur SFTP il vous suffit de désactiver le SSH dans le DSM. [u][font=lucida sans unicode,lucida grande,sans-serif][b][size=4]2/ En utilisant un système hybride : SSH interne + SFTP optware[/size][/b][/font][/u] [size=3][i]source : http://forum.synolog...server#Method_1[/i][/size] On utilise le serveur SSH interne, on installe de SFTP d'IPKG et on modifie la configuration du serveur SSH interne pour qu'il utilise les binaires du SFTP d'IPKG. Il nous faut travailler en lignes de commande, (re-)lire l'avant-propos à ce sujet. [font=lucida sans unicode,lucida grande,sans-serif]2.1/ Tout d'abord, installer IPKG.[/font] Voir ce tutoriel pour de l'aide. [font=lucida sans unicode,lucida grande,sans-serif]2.2/ Installer le serveur SFTP optware en entrant les commandes suivantes :[/font]
[code]ipkg update ipkg install openssh-sftp-server[/code]
[font=lucida sans unicode,lucida grande,sans-serif]2.3/ Le fichier à modifier :[/font] [font=courier new,courier,monospace]/etc/ssh/sshd_config[/font] [font=lucida sans unicode,lucida grande,sans-serif]2.3.1/ Faire une sauvegarde[/font]
[code]cp etc/ssh/sshd_config etc/ssh/sshd_config_default[/code]
[font=lucida sans unicode,lucida grande,sans-serif]2.3.2/ Modifier le fichier de telle sorte que la liste des serveurs SFTP soit égale à celle-ci :[/font]
[code]# override default of no subsystems #Subsystem sftp /usr/libexec/sftp-server Subsystem sftp /volume1/@optware/libexec/sftp-server[/code]
Si vous désirez utiliser CFE pour modifier le fichier, ajoutez la ligne suivante dans son fichier de configuration puis relancez CFE pour accéder au nouveau fichier. [font=courier new,courier,monospace]etc/ssh/sshd_config,config ssh[/font] [font=lucida sans unicode,lucida grande,sans-serif]2.4/ Enfin, relancer le daemon SSH via le DSM.[/font] [i]Panneau de configuration > Terminal > SSH[/i] Pour arrêter le serveur SFTP il vous suffit de désactiver le SSH dans le DSM. [u][font=lucida sans unicode,lucida grande,sans-serif][b]3/ Troisième méthode[/b][/font][/u] [size=3][i]source : http://forum.synolog...server#Method_2[/i][/size] Je ne vois pas l'intérêt de cette méthode, que ce soit dans le fond ou sur la forme. Utilisateurs curieux (et initiés) suivez "simplement" le guide du wiki. [u][font=lucida sans unicode,lucida grande,sans-serif][b]4/ En passant complètement par les paquets optware/IPKG[/b][/font][/u] Voir la méthode complète ci-dessous. Cette méthode est ici déconseillée puisque les deux premières sont bien plus simples à mettre en place et à utiliser. [size=5][font=lucida sans unicode,lucida grande,sans-serif][b]Depuis le DSM 4.1 v2636[/b][/font][/size] Depuis le DSM 4.1 v2636, les méthodes décrites plus haut (au moins les deux premières) sont inopérantes. De plus, le SFTP est inclus au DSM mais se comporte comme l'accès FTP : - l'activation vaut pour tous les utilisateurs du NAS… - …sauf l'utilisateur root ! Nombreux seront ceux qui soutiendront -et à raison- qu'il est dangereux de se connecter directement en root via SSH/SFTP même si l'on est un utilisateur chevronné et qu'il vaut mieux se connecter en admin et utiliser la fameuse commande [font=courier new,courier,monospace]sudo[/font] pour s'octroyer temporairement des droits de root. Par ailleurs, nombreux seront également ceux qui nous conseilleront d'opérer des transferts de fichiers en SFTP plutôt qu'en FTPS parce que cela est plus sécurisé, surtout si l'on se connecte par échange de clef plutôt que par mot de passe. (Il n'empêche que, chez moi, le transferts SFTP sont plus lents qu'en FTPS et FTP) Il existe donc de nombreuses raisons de ne pas utiliser l'utilisateur root directement et Synology a fait un choix logique, celui de la sécurité. Soit. Mais si l'on souhaite tout de même avoir un accès SFTP en root "comme avant", voici ce qu'il faut faire : installer et configurer les serveurs SSH et SFTP d'optware. Nous allons donc complètement court-cicuiter les outils livrés avec le NAS pour n'utiliser que ceux d'IPKG. [font=lucida sans unicode,lucida grande,sans-serif]1/ Tout d'abord, installer IPKG.[/font] Voir ce tutoriel pour de l'aide. [font=lucida sans unicode,lucida grande,sans-serif]2/ Installer OpenSSH et OpenSSH-SFTP-server en entrant les commandes suivantes :[/font]
[code]ipkg update ipkg install OpenSSH ipkg install openssh-sftp-server[/code]
[font=lucida sans unicode,lucida grande,sans-serif]3/ Le fichier à modifier :[/font] [font=courier new,courier,monospace]/opt/etc/openssh/ssh_config[/font] [font=lucida sans unicode,lucida grande,sans-serif]3.1/ Faire une sauvegarde[/font]
[code]cp /opt/etc/openssh/ssh_config /opt/etc/openssh/ssh_config-defaults[/code]
[font=lucida sans unicode,lucida grande,sans-serif]3.2/ Les modifications[/font] Repérez les passages correspondants dans le fichier et faire les modifications pour coller à la configuration ci-dessous. Je vous ai mis le paquet pour le contexte mais seules 2 ligne sont à modifier.
[code] # Change to no to disable s/key passwords ChallengeResponseAuthentication no [/code]
[code] #AllowAgentForwarding yes #AllowTcpForwarding yes #GatewayPorts no #X11Forwarding no #X11DisplayOffset 10 #X11UseLocalhost yes #PrintMotd yes #PrintLastLog yes #TCPKeepAlive yes #UseLogin no UsePrivilegeSeparation no #PermitUserEnvironment no #Compression delayed #ClientAliveInterval 0 #ClientAliveCountMax 3 #UseDNS yes #PidFile /opt/var/run/sshd.pid #MaxStartups 10 #PermitTunnel no #ChrootDirectory none # no default banner path #Banner none # override default of no subsystems Subsystem sftp /opt/libexec/sftp-server [/code]
Si vous désirez utiliser CFE pour modifier le fichier, ajoutez la ligne suivante dans son fichier de configuration puis relancez CFE pour accéder au nouveau fichier. [font=courier new,courier,monospace]/opt/etc/openssh/sshd_config,opt sshd_config[/font] À noter que je suis tout sauf un expert de SSH donc si quelqu'un voit une meilleure configuration, qu'il se fasse connaître ! [font=lucida sans unicode,lucida grande,sans-serif]4/ Lancer le service en exécutant la commande suivante :[/font]
[code]/opt/etc/init.d/S40sshd[/code]
[font=lucida sans unicode,lucida grande,sans-serif]4.1/ Vérifier qu'il fonctionne[/font]
[CODE]ps | grep ssh[/code]
Vous devez retrouver le chemin de l'executable : [font=courier new,courier,monospace]/opt/sbin/sshd[/font] Pour arrêter le service, faire un simple
[CODE]killall sshd[/code]

Vous remarquerez ici que le lancement et l'arrêt du SSH/SFTP se fait uniquement en ligne de commande.

Vous savez maintenant comment installer et utiliser SFTP sur votre NAS :)

Pour les personnalisations, on verra une autre fois ;-)

Modifié par Amsonia
Lien vers le commentaire
Partager sur d’autres sites

Personnalisation

Je rajoute rapidement quelques liens vers des blogposts -en anglais certes- mais très clairs.

Ces modifications sont souvent synonymes d'une sécurité accrue par le simple fait que votre configuration n'est plus standardisée.

Pour ceux qui ont suivi le tutoriel pour le DSM 4.1 v2636 (et probablement ultérieurs), les modifications ne se font pas sur /etc/ssh/sshd_config mais sur /opt/etc/openssh/ssh_config

Toutes les modifications nécessitent un redémarrage du daemon SSH pour être prises en compte.

Je vous conseille de désactiver le blocage automatique durant vos tests, ce serait bête de se retrouver bloqué dehors !

1/ Changer le port

Si vous utilisez le terminal d'OS X, la connexion se fera désormais en ajoutant l'argument -p leport

ssh root@votresyno -p 12345
2/ Se connecter par échange de clefs plutôt qu'avec un mot de passe 2.1/ Pour l'utilisateur root 2.2/ Pour tout autre utilisateur À noter, pour ceux qui ont suivi le tutoriel pour le DSM 4.1 v2636, il vous faut entrer une commande supplémentaire à la fin de la procédure :

ssh-keygen -t ecdsa -C '' -N '' -f /opt/etc/openssh/ssh_host_ecdsa_key

[/code]

[font=lucida sans unicode,lucida grande,sans-serif][b]3/ Désactiver les connexions par mot de passe (= forcer les connexions par clef)[/b][/font]

[font=lucida sans unicode,lucida grande,sans-serif][b]4/ Raccourci de connexion (pour les gros fainéants comme moi :P)[/b][/font]

Modifié par Amsonia
Lien vers le commentaire
Partager sur d’autres sites

  • 3 semaines après...

Bonjour,

J'ai essayé la méthode "Depuis le DSM 4.1 v2636 et dans /opt/etc/openssh/sshd_config et dans /etc/ssh/sshd_config, j'ai placé "PermitRootLogin yes" mais j'ai toujours un "Access Denied" lorsque j'essais d'accéder via Putty ou Winscp.

De plus, j'ai beau placé "PATH="/opt/bin:/opt/sbin:$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/syno/bin:/usr/syno/sbin:/usr/local/bin:/usr/local/sbin""

dans /etc/profile mais après un redémarrage, "/opt/bin:/opt/sbin" ne se retrouve pas dans le PATH.

As-tu une idée?

Merci.

Lien vers le commentaire
Partager sur d’autres sites

Pour l'accès root avec putty, je coche la case "SSH" de la console de Syno et ça fonctionne et pour Winscp, je me connecte avec root et le protocole scp et ça fonctionne aussi. Je peux donc tout faire ce que j'ai besoin de faire.

Il ne me reste seulement à régler le PATH qui ne contient pas encore "/opt/bin:/opt/sbin".

Merci.

Lien vers le commentaire
Partager sur d’autres sites

heu j'ai un petit probème dans ce tuto :

D'abord :


ipkg install OpenSSH

Nothing to be done

An error ocurred, return value: 4.

Collected errors:

Cannot find package OpenSSH.
je précise que j'ai bien fait un ipkg update et que j'ai un DS212 en DSM 4.1- 2647 Ensuite , je n'ai pas du tout les mêmes options dans le fichier de config ssh :

vi /opt/etc/openssh/ssh_config

# PasswordAuthentication yes

# HostbasedAuthentication no

# GSSAPIAuthentication no

# GSSAPIDelegateCredentials no

# BatchMode no

# CheckHostIP yes

# AddressFamily any

# ConnectTimeout 0

# StrictHostKeyChecking ask

# IdentityFile ~/.ssh/identity

# IdentityFile ~/.ssh/id_rsa

# IdentityFile ~/.ssh/id_dsa

# Port 22

# Protocol 2,1

# Cipher 3des

# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc

# MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160

# EscapeChar ~

# Tunnel no

# TunnelDevice any:any

# PermitLocalCommand no

# VisualHostKey no

# ProxyCommand ssh -q -W %h:%p gateway.example.com

Modifié par jee27
Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...
  • 3 mois après...

Salut à tous

Je suis déjà bloqué au point 1/ installation d'IPKG

Je possède un DS411slim (DSM 4.2-3202), et en suivant le tuto donc, j'ai téléchargé ce fichier : ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/stable/syno-mvkw-bootstrap_1.2-7_arm.xsh

(puis qu'apparement, d'après 2 source, mon processeur est un Marvell Kirkwood mv6282)

Lorsque je veux l'exécuter, il décompresse, puis il indique : Error: CPU not Marvell Kirkwood, probably wrong bootstrap.xsh

Une idée ?

Modifié par ginshin
Lien vers le commentaire
Partager sur d’autres sites

Ca donne : Feroceon 88FR131 rev 1 (v51)

Pourtant c'est pas ce que je trouve là par exemple : http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have

Bref, quel package IPKG je dois prendre ?

J'ai trouvé l'information sur un wiki Allemand... C'est le bon package que je possède, mais il faut modifier cette ligne dans bootstrap.sh :

if ! grep Feroceon-KW /proc/cpuinfo >/dev/null 2>&1; then

en

if ! grep Feroceon /proc/cpuinfo >/dev/null 2>&1; then

Ca va donc plus loin, puis j'ai ce message :

Configuring ipkg-opt.ipk...WARNING: can't open config file: 
/usr/syno/ssl/openssl.cnf
 

Une idée ?

Après des heures de recherches sur ce forum et d'autres, j'ai eu la solution là : http://frednotes.wordpress.com/2012/11/18/increase-the-use-of-your-synology-with-ipkg-and-squid/

Un petit bug existe, il faut installer openssl :

wget http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable/openssl_0.9.8v-2_arm.ipk
 
/opt/bin/ipkg install openssl_0.9.8v-2_arm.ipk
 
reboot
 

Donc je pensais en avoir fini avec ce point 1/

Mais j'essaye un ipkg update et bardaf c'est l'embardée :unsure:

 
DiskStation> ipkg-ash: ipkg: not found
DiskStation> /opt/bin/ipkg update
Downloading http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable/Packages.gzipkg: 
/opt/ipkg-9kccnp/Packages.gz: No such file or directoryfile_copy: ERROR: 
failed to copy /opt/ipkg-9kccnp/Packages.gz to /tmp/ipkg.swPTkH/cross.gzAn 
error ocurred, return value: 1.
 

Peut etre que cs08q1armel c'est pas le bon ! Je me suis dit qu'en modifiant /opt/etc/ipkg.conf çà le ferait vu que toutes les lignes étaient en commentaire

J'ai donc rajouté :

src nslu2 http://ipkg.nslu2-linux.org/feeds/optware/syno1142mv6281/cross/stable
 

Un ipkg list :

DiskStation> /opt/bin/ipkg list
openssl - 0.9.8v-2 -
wget - 1.12-2 
-Successfully terminated.

Un ipkg update :

DiskStation> /opt/bin/ipkg updateDownloading http://ipkg.nslu2-linux.org/feeds/optware/syno1142mv6281/cross/stable/PackagesDownloading 
http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable/Packages.gzAn 
error ocurred, return value: 2.Collected errors:ipkg_download: ERROR: 
Command failed with return value 34: `wget --passive-ftp    -q -P 
/opt/ipkg-imbmvR http://ipkg.nslu2-linux.org/feeds/optware/syno1142mv6281/cross/stable/Packages'ipkg_download: 
ERROR: Command failed with return value 41: `wget 
--passive-ftp    -q -P /opt/ipkg-imbmvR http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable/Packages.gz'
 

Bon, benh y a des erreurs, et je comprends pas non plus comment il va encore sur cs08q1armel

J'suis un noob, désolé :o

Modifié par ginshin
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.