Puncte:0

Eliminați comanda de ștergere din SFTP/WinSCP

drapel kh

Există vreo modalitate prin care putem restricționa un anumit utilizator să ștergă fișiere/dosar care are permisiuni complete de la WinSCP.

Mulțumesc anticipat.

Nate T avatar
drapel it
permisiuni complete cu referire la utilizator sau folder?
Neha avatar
drapel kh
Utilizatorul @Nate T are permisiunea deplină pe acel director....cerința noastră este ca utilizatorul să nu poată șterge fișierul din acel folder din winscp.....pe serverul linux am setat acl pentru comanda rm și funcționează bine.......dar utilizatorul poate șterge fișierul din winscp....deci vrem să restricționăm comanda de ștergere din winscp...
Nate T avatar
drapel it
Trebuie să păstrați portul 22 deschis? Acest utilizator trebuie să acceseze prin SSH din alte motive sau alți utilizatori accesează prin SSH?
Nate T avatar
drapel it
De asemenea, aveți acces fizic la clientul pe care încercați să-l restricționați (este local sau la distanță)? Cred că pot răspunde, dar fără mai multe detalii nu pot fi sigur. Vă rugăm să furnizați aceste detalii și, dacă trebuie să actualizez răspunsul, o voi face.
muru avatar
drapel us
Ce ACL ai folosit, mai exact?
drapel cn
Ce vrei să spui prin „șterge”? De fapt, ștergerea unui fișier sau, de asemenea, împiedica GOLIREA unui fișier (aceasta este, în esență, ștergerea, deși este conținutul)
drapel cn
O metodă: creați un director de supraveghere (există, de exemplu, un modul Python pentru asta) în directoarele pe care doriți. Acest lucru vă permite să dezactivați ștergerea și, de asemenea, vă permite să prindeți pe cineva care elimină linii dintr-un fișier.
drapel hr
*„pe serverul linux am setat acl pentru comanda rm”* probabil că ați avea mai mult noroc să setați un ACL adecvat în directorul ale cărui fișiere doriți să le protejați - restricțiile privind comenzile sunt adesea ocolite cu ușurință (de exemplu, utilizatorul nu poate rula `rm`, dar poate rula `find -delete`)
Neha avatar
drapel kh
@Nate T Trebuie să păstrați portul 22 deschis? Acest utilizator trebuie să acceseze prin SSH din alte motive sau alți utilizatori accesează prin SSH?---------- da, trebuie să menținem deschis portul 22. Da, utilizatorul trebuie să acceseze prin SSH pentru a face față fișierelor de la server la distanță la o mașină locală și invers....da, alți utilizatori accesează și prin SSH
Neha avatar
drapel kh
@Nate T De asemenea, aveți acces fizic la clientul pe care încercați să-l restricționați (este local sau la distanță)? Cred că pot răspunde, dar fără mai multe detalii nu pot fi sigur. Vă rugăm să furnizați aceste detalii și, dacă trebuie să actualizez răspunsul, o voi face.--------------telecomandă
Nate T avatar
drapel it
Același utilizator care are nevoie de restricții are nevoie și de acces de citire ssh sau alți utilizatori au nevoie de el? (sau amândouă?)
Nate T avatar
drapel it
Mi-am actualizat răspunsul. Sperăm că acest lucru vă va merge mai bine.
Neha avatar
drapel kh
@Nate Același utilizator care are nevoie de restricții are nevoie și de acces de citire ssh sau alți utilizatori au nevoie de el? (sau ambele?) â da, acesta este același utilizator pe care trebuie să-l restricționăm operația de ștergere din putty și din winscp
Neha avatar
drapel kh
@Nate T Cerința noastră este ca utilizatorul să nu poată efectua operația de ștergere pe niciunul dintre fișierele/directoarele din winscp sau din chit (pentru chit am restricționat de la acl).....chiar el/ea are drepturi depline asupra fișierelor/directoarelor ............
Neha avatar
drapel kh
@MartinPrikryl Nu există nimic ca „restricție pentru chit”. PuTTY este doar un terminal SSH. Ar fi frumos, daca ne-ati spune ce ati facut mai exact.----am setat acl...din aceasta comanda "/bin/setfacl -m u:john:--- /bin/rm"
drapel tr
Dar `/bin/rm` nu este de departe singura modalitate de a șterge un fișier! După cum a comentat deja @steeldriver, există `find -delete`. De asemenea, puteți utiliza un manager de fișiere, cum ar fi Midnight Commander. Puteți folosi Python, Perl, PHP. Și multe altele. Puteți *suprascrie* un fișier. Puteți *muta* fișierul în `/tmp`. + Și din nou, editați-vă întrebarea.
Puncte:4
drapel tr

Eliminați permisiunile de scriere din fișiere și foldere de pe partea serverului.

Alternativ, puteți restricționa operațiunea de „ștergere” pe serverul SFTP. Vedea Restricționați utilizatorul SFTP să ruleze doar un set limitat de comenzi/acțiuni în Linux. Și asigurați-vă că utilizatorul are doar acces SFTP.

Puncte:2
drapel it

Sunt destul de sigur că acest lucru nu se poate face în modul în care sperați (prin setările clientului winSCP.) Acest forumul arată dovezi ale unui alt administrator de server cu o problemă similară. La întrebare, administratorul site-ului winSCP îl informează că acest lucru nu este posibil în winSCP și îi spune să se concentreze pe partea de server.

După cum sugerează postările, pentru a refuza accesul acestui utilizator, va trebui să utilizați setările pe partea serverului.

O modificare care este extrem de eficientă pentru a opri clienții la distanță să acceseze serverul dvs. (vtemei prin openssh, winscp sau orice alt client SSH) este pur și simplu închiderea portului 22. Acesta este portul implicit pentru traficul SSH.

EDITAȚI | ×: Încă nu sunt sigur că ai oferit toate informațiile relevante. Continuând pe informațiile pe care le-ați furnizat până acum, dacă portul 22 trebuie să rămână deschis, poate fi necesar să fiți creativ. Acestea fiind spuse, sunt sigur că s-ar putea oferi o soluție mai simplă dacă am/am avea mai mult context.

Indiferent de metoda pe care o utilizați pentru a restricționa accesul utilizatorului, mai întâi va trebui eliminați privilegiul sudo al utilizatorului. elimina cu:

gpasswd --delete pbwriters USER

Cred că obiectivul dvs. poate fi atins pe partea de server folosind chown și chmod comenzi. Veți dori să setați g= și o= opțiuni după schimbarea grupului căruia îi aparține fișierul. Această linie ar trebui să facă treaba:

# Înlocuiți DIR cu numele folderului cel mai exterior
sudo groupadd pbwriters && sudo chown -R :pbwriters DIR && sudo chmod -R 774 DIR

Acum dacă Directorul Parinte în comanda de mai sus este schimbat în numele directorului cel mai exterior pe care doriți să-l restricționați, apoi totul din interiorul acelui fișier va putea fi scris numai de cei din grupul pbwriters. Pentru a oferi cuiva acces la scriere, trebuie doar să-l adăugați la pbwriters grup:

# La fel ca înainte, înlocuiți USER cu numele utilizatorului
sudo usermod -a -G pbwriters UTILIZATOR
Nate T avatar
drapel it
Ca o idee ulterioară, puteți, de asemenea, să setați $SHELL-ul lor la [rbash](https://www.networkworld.com/article/2875972/clamping-down-on-users-with-rbash.html). Alături de chroot, acesta este un instrument de neprețuit pentru administratorii de rețea. Acest lucru ar limita cel puțin fișierele pe care le-ar putea accesa.

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.