Puncte:0

Cum să împiedici un utilizator SFTP să vadă alte directoare?

drapel cn

Configurez un server web bazat pe Windows Server 2019. Unul dintre furnizorii noștri trebuie să poată încărca fișiere. eu am

  • Sshd adăugat
  • Am creat un login pe care să-l folosească
  • A creat un grup pentru acea conectare
  • Am adăugat acea autentificare la grup și am eliminat datele de conectare din toate celelalte grupuri
  • A creat un director de încărcare
  • Având în vedere grupul Scrie și Modifica permisiunile din acel director
  • A adăugat linia ForceCommand internal-sftp -d „C:\inetpub\ftproot\Upload” la a Meci directivă pentru acel grup în sshd_config

Până acum, bine. Această autentificare se poate conecta la casetă prin SFTP, iar sesiunea începe automat în director Încărcați, și poate încărca și descărca fișiere de acolo. Dar nu pot să-mi dau seama cum să-l împiedic să vadă conținutul altor directoare. Doar elimină autentificarea din grup Utilizatori nu a avut efect. Negarea grupului Citit și Listă in incinta ftproot directorul nu se poate conecta (cu o eroare de autentificare). Singura sugestie pe care am găsit-o într-o oră de căutare pe Google este să setez o valoare pentru ChrootDirectory, dar acest lucru are ca rezultat faptul că nicio autentificare nu se poate conecta prin SFTP sau SSH (cu erori aparente ale serviciului de a răspunde). Sunt destul de nou pe serverul Windows și am rămas fără idei. Trebuie să existe, evident, o modalitate corectă de a face acest lucru - poate cineva să mă îndrume în direcția corectă?

[Actualizați]

Această casetă rulează OpenSSH 7.7:

> ssh -V
OpenSSH_for_Windows_7.7p1, LibreSSL 2.6.5

Când adaug această linie la Meci directivă pentru grupul sftp:

ChrootDirectory „C:\inetpub\ftproot\Upload”

și apoi încercați să vă conectați ca orice utilizator, indiferent dacă este sau nu în acel grup, acesta este ceea ce apare în sshd.log (în mod evident, pid-ul, portul și marcajul de timp vor varia):

3332 2021-08-17 12:04:24.931 Parolă eșuată pentru utilizatorul sftpuser nevalid din portul XX.XX.XX.XX 34240 ssh2
drapel in
Presupunând că utilizați openssh, poate https://serverfault.com/a/1006119/187998 este o soluție, dacă nu, vă rugăm să furnizați mai multe detalii despre versiune și configurare. De asemenea, încercați să creați și să vă uitați la fișiere jurnal detaliate.
Don R avatar
drapel cn
Am adăugat ce informații suplimentare am. Nu găsesc niciun document care să se refere la modificarea nivelului de verbozitate al jurnalelor.
drapel in
Ce zici de https://github.com/PowerShell/Win32-OpenSSH/issues/190#issuecomment-662879084?
Don R avatar
drapel cn
@NiKiZe Tocmai am încercat `LogLevel VERBOSE`, dar nu a avut nicio diferență în ceea ce a fost înregistrat când am încercat să mă conectez.
Don R avatar
drapel cn
De fapt, câteva postări mai jos, era ceva care pare să fie cheia: *nu* folosiți ghilimele în calea `ChrootDirectory`.
Puncte:1
drapel cn

Se pare că aici este piesa cheie nu pentru a utiliza ghilimele în jurul căii din această linie:

ChrootDirectory C:\inetpub\ftproot\Upload

După acea modificare, realizarea unei conexiuni SFTP s-a comportat exact așa cum am sperat: directorul la care este restricționat grupul apare ca rădăcină.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.