Topic: Erreur Directives HideFiles
Bonjour,
Alors je suis sur une debian 6 x64 un serveur sans interface graphique puisqu'en prod.
J'ai récupé l'installation de ce serveur, mon prédécesseur avait mis en place un SFTP avec mysecureshell pour chroot les utilisateurs tout bien.
Bon jusque la OK, le truc c'est que depuis l'installation a changé.
Je voudrais Chroot mes utilisateurs dans "/home/" pour qu'ils puissent accéder à "/home/www/" et écrire dans ce répertoire (oui comme ca ils peuvent test des sites web voyait )
Mon problème c'est que j'ai pas mal de répertoires "autres" dans /home/ auquel je ne veux pas que mes utilisateurs accèdent.
Alors certes je pourrais déplacer mon répertoire /www/ d'un rang et chroot au dessus etc... mais c'est adapté son installation aux solutions et normalement on fait l'inverse .
J'ai donc testé la mise en place du paramètres "HideFiles" mais rien ne change je vois toujours tous les autres répertoires :S.
Si vous pouviez me renseigner ca serait fort sympatique !!!
Voici mon fichier de config sftp_config :
1 ## MySecureShell Configuration File ##
2 #Default rules for everybody
3 <Default>
4 GlobalDownload 50k #total speed download for all clients
5 # o -> bytes k -> kilo bytes m -> mega bytes
6 GlobalUpload 0 #total speed download for all clients (0 for unlimited)
7 Download 5k #limit speed download for each connection
8 Upload 0 #unlimit speed upload for each connection
9 StayAtHome true #limit client to his home
10 VirtualChroot true #fake a chroot to the home account
11 LimitConnection 100 #max connection for the server sftp
12 LimitConnectionByUser 10 #max connection for the account
13 LimitConnectionByIP 100 #max connection by ip for the account
14 # Home /home/$USER #overrite home of the user but if you want you can use
15 # environment variable (ie: Home /home/$USER)
16 IdleTimeOut 5m #(in second) deconnect client is idle too long time
17 ResolveIP true #resolve ip to dns
18 # IgnoreHidden true #treat all hidden files as if they don't exist
19 # DirFakeUser true #Hide real file/directory owner (just change displayed permissions)
20 # DirFakeGroup true #Hide real file/directory group (just change displayed permissions)
21 # DirFakeMode 0400 #Hide real file/directory rights (just change displayed permissions)
22 #Add execution right for directory if read right is set
23 # HideFiles "^(lost\+found|public_html)$" #Hide file/directory which match
24 #this extented POSIX regex
25 HideNoAccess true #Hide file/directory which user has no access
26 # MaxOpenFilesForUser 20 #limit user to open x files on same time
27 # MaxWriteFilesForUser 10 #limit user to x upload on same time
28 # MaxReadFilesForUser 10 #limit user to x download on same time
29 DefaultRights 0640 0750 #Set default rights for new file and new directory
30 # MinimumRights 0400 0700 #Set minimum rights for files and dirs
31
32 # PathDenyFilter "^\." #deny upload of directory/file which match this extented POSIX regex
33
34 ShowLinksAsLinks false #show links as their destinations
35 # ConnectionMaxLife 1d #limits connection lifetime to 1 day
36
37 # Charset "ISO-8859-15" #set charset of computer
38 # GMTTime +1 #set GMT Time (change if necessary)
39 </Default>
40 <Group sftp-users>
41 Shell /bin/bash
42 Home /home/www
43 Download 0
44 Upload 0
45 IdleTimeOut 0
46 StayAtHome true
47 VirtualChroot true
48 LimitConnection 20
49 LimitConnectionByIP 20
50 DefaultRights 0775 0775
51 </User>
52
53 <User jean>
54 Home /home
55 StayAtHome true
56 VirtualChroot true
57 HideNoAccess true
58 DefaultRights 0775 0775
59 IgnoreHidden true
60 HideFiles "^(backup|backupmail|pascal|lab)$"
61 </User>
Alors au cas ou voici la ligne de l'utilisateur "jean" dans le /etc/passwd :
jean:x:1021:1001::/home/bin/MySecureShell
et on voit bien que "jean" ne fait pas parti du groupe "sftp-users" dans le /etc/group :
sftp-users:x:1001:pascal,lab
Bon je poste aussi un petit Mysecureshell --configtest
root@monserveur:/etc/ssh# MySecureShell --configtest
--- root ---
GlobalDownload = 51200 bytes/s
GlobalUpload = 0 bytes/s
Download = 5120 bytes/s
Upload = 0 bytes/s
StayAtHome = true
VirtualChroot = true
LimitConnection = 100
LimitConnectionByUser = 10
LimitConnectionByIP = 100
Home = /root
ResolveIP = true
IdleTimeOut = 300s
HideNoAccess = true
ShowLinksAsLinks = false
SftpProtocol = {default}
LogFile = {default}
CanRemoveDir = true
CanRemoveFile = true
CanChangeRights = true
CanChangeTime = true
DefaultRights = 0640 0750
Config is valid.
Alors euh chef, est ce que j'ai fait un truc de mal ?
Je comprends vraiment pas pourquoi ca fonctionne pas... quand je me connecte a FileZilla je vois bien tout le contenu du /home/ et pas seulement les répertoires que je souhaite (en faite je ne souhaite voir qu'un répertoire le WWW)
Alors par contre dans mon fichier sshd_config j'ai un petit :
Subsystem sftp internal-sftp
Parce que mysecureshell n'a pas toujours était la et qu'il faut bien chroot ces users quand même