Descărcați FlightGear gratuit: Ghid oficial de instalare
Descarcă FlightGear gratuit de pe site-ul oficial. Compară pachetele Windows, macOS și Linux, instalează fișierele de date și începe primul tău zbor.
Cea mai sigură metodă de a restricționa utilizatorii SSH la un anumit director pe Ubuntu 24.04 este să utilizați OpenSSH ChrootDirectorycu ForceCommand internal-sftp. Acest lucru este ideal atunci când contul are nevoie doar de transfer de fișiere. Oferă utilizatorului o vizualizare SFTP a cărei rădăcină a sistemului de fișiere este directorul ales, blocând în același timp un shell interactiv și redirecționarea SSH.
Dacă utilizatorul are nevoie cu adevărat de un shell normal, decizia este diferită. Un shell interactiv chroot are nevoie de propriul său fișier binar shell, biblioteci, noduri de dispozitiv și fișiere de suport în interiorul jail-ului. OpenSSH documentează acest lucru explicit. Pentru majoritatea conturilor de încărcare, backup, agenție, furnizor și găzduire partajată, chroot-ul doar SFTP este mult mai simplu și mai puțin predispus la erori. Pentru utilizatorii neîncrezători care au nevoie de un mediu de comandă complet, un container sau o mașină virtuală dedicată este de obicei mai ușor de întreținut decât construirea manuală a unui chroot shell.
Acest ghid folosește Ubuntu 24.04 LTS și un exemplu de utilizator numit alice. Utilizatorul va fi restricționat la /srv/sftp/aliceși va avea voie să scrie doar în interiorul /files. Înlocuiți numele și căile pentru a se potrivi serverului dvs.
Cea mai frecventă eroare chroot este cauzată de permisiuni. OpenSSH necesită ca fiecare componentă a ChrootDirectorycăii să fie deținută de root și să nu poată fi scrisă de grup sau de alți utilizatori . Această cerință este verificată necondiționat. Asta înseamnă că nu ar trebui să faceți /srv/sftp/aliceca aceasta să fie scrisă de alice.
În schimb, faceți ca directorul rădăcină al jail-ului să fie deținut de root și creați un director copil cu permisiuni de scriere:
/srv/sftp/alice root:root 755
└── files alice:alice 755
Acest design urmează comportamentul documentat în manualul Ubuntu 24.04sshd_config(5) . Același manual menționează că internal-sftpnu necesită fișiere runtime suplimentare în chroot, motiv pentru care este cel mai potrivit pentru un cont de transfer de fișiere restricționat.

ssh.servicerulează înainte de a modifica regulile de acces.Instalați pachetul serverului dacă este necesar:
sudo apt update
sudo apt install openssh-server
sudo systemctl status ssh.service
Documentația oficială OpenSSH a Ubuntu folosește OpenSSH openssh-serverpentru pachetul daemon și ssh.servicepentru gestionarea serviciilor. Consultați ghidul OpenSSH pentru serverul Ubuntu .
Dacă aceasta este o mașină la distanță și SSH este singura cale administrativă, mențineți sesiunea de administrator existentă deschisă în timp ce faceți modificări. O configurație SSH greșită vă poate bloca accesul.

Creați un grup pentru utilizatori restricționați. Dacă aliceexistă deja, adăugați-o doar pe ea în grup:
sudo groupadd sftpusers
sudo adduser alice
sudo usermod -aG sftpusers alice
id alice
Dacă deja folosești chei publice SSH, continuă să o faci. Configurația chroot controlează ce se întâmplă după autentificare ; nu necesită să treci de la autentificarea cu cheie la parole.
O regulă bazată pe grupuri este de obicei mai bună decât un Match Userbloc separat pentru fiecare cont. Aceasta păstrează politica într-un singur loc. O regulă per utilizator este încă utilă atunci când diferiți utilizatori trebuie să fie închiși la layout-uri fără legătură.

filesdirectorul copil poate fi scris de utilizatorul restricționat.Creați ierarhia directoarelor:
sudo mkdir -p /srv/sftp/alice/files
sudo chown root:root /srv/sftp/alice
sudo chmod 755 /srv/sftp/alice
sudo chown alice:alice /srv/sftp/alice/files
sudo chmod 755 /srv/sftp/alice/files
Verificați proprietatea:
ls -ld /srv /srv/sftp /srv/sftp/alice /srv/sftp/alice/files
namei -l /srv/sftp/alice
Dacă /srvsau /srv/sftpeste permisă scrierea de către grup sau de către utilizator, corectați și acest aspect. OpenSSH verifică toate componentele căii, nu doar directorul final.

Match Groupbloc aplică politica chroot și SFTP-only numai membrilor sftpusers.Documentația actuală a serverului Ubuntu recomandă păstrarea setărilor SSH personalizate în /etc/ssh/sshd_config.d/loc să le amestecați în fișierul principal inclus. Creați un fragment de cod:
sudo nano /etc/ssh/sshd_config.d/90-sftp-restricted.conf
Adăuga:
Match Group sftpusers
ChrootDirectory /srv/sftp/%u
ForceCommand internal-sftp -d /files
DisableForwarding yes
PermitTTY no
Match all
%use extinde la numele de utilizator autentificat, deci aliceeste plasat în /srv/sftp/alice. -d /filesArgumentul îi spune serverului SFTP intern să pornească în directorul copil cu permisiuni de scriere. DisableForwarding yesdezactivează redirecționarea X11, agent, TCP și StreamLocal într-o singură directivă; este documentată special pentru simplificarea configurațiilor restricționate.
Valoarea finală Match alleste importantă într-un fragment de cod deoarece încheie contextul condițional înainte de analizarea configurației ulterioare.

Pentru mai mulți utilizatori cu același layout, păstrați regula de grup afișată mai sus. Pentru un singur cont excepțional, utilizați în schimb un bloc specific utilizatorului:
Match User vendor1
ChrootDirectory /srv/vendor/vendor1
ForceCommand internal-sftp -d /incoming
DisableForwarding yes
PermitTTY no
Match all
Alegeți în funcție de costul de administrare:
| Scenariu | Cea mai bună regulă | De ce |
|---|---|---|
| Mulți utilizatori cu acces doar la încărcare și aceeași structură | Match Group | O singură politică se aplică fiecărui membru. |
| Un furnizor are nevoie de un director unic | Match User | Calea și restricțiile pot diferi fără a afecta alte persoane. |
| Utilizatorul are nevoie de o shell interactivă normală | Nu utilizați această rețetă exclusiv SFTP | Un chroot interactiv are nevoie de un mediu de execuție complet. |
| Utilizatorii neîncrezători au nevoie de comenzi și izolare puternică | Luați în considerare un container sau o mașină virtuală | Mai ușor de definit și actualizat un mediu de execuție complet. |

Nu reporniți niciodată SSH imediat după editarea fișierului. Mai întâi rulați testul de sintaxă recomandat de Ubuntu:
sudo sshd -t
Nicio ieșire înseamnă că verificarea sintaxei a reușit. De asemenea, puteți inspecta configurația efectivă pentru un anumit utilizator:
sudo sshd -T -C user=alice,host=localhost,addr=127.0.0.1 | grep -E 'chrootdirectory|forcecommand|disableforwarding|permittty'
Ar trebui să vedeți calea chroot așteptată și comanda SFTP forțată. Acest lucru este util în special pe Ubuntu, deoarece setările pot proveni atât din /etc/ssh/sshd_configfișierele , cât și din /etc/ssh/sshd_config.d/. Ubuntu notează că OpenSSH folosește în general prima valoare obținută pentru majoritatea directivelor, așadar verificarea configurației efective este mai sigură decât presupunerea care fișier câștigă.

Aplicați modificarea:
sudo systemctl restart ssh.service
sudo systemctl status ssh.service
Apoi conectați-vă de la un alt terminal:
sftp alice@server.example.com
În interiorul SFTP, testați:
pwd
ls
put test.txt
ls -l
Cu configurația de mai sus, directorul SFTP inițial ar trebui să fie /files. Bara oblică afișată de SFTP este rădăcina chroot-ului, nu rădăcina reală a serverului.
O încercare normală de shell nu ar trebui să producă un shell nerestricționat:
ssh alice@server.example.com
Deoarece ForceCommand internal-sftpînlocuiește sesiunea solicitată cu serverul SFTP în proces, acest cont este intenționat destinat transferului de fișiere, nu executării comenzilor.

/etcnu /roottrebuie să devină vizibile în afara chroot-ului.Încercați să vă deplasați deasupra rădăcinii aparente și să inspectați căile sensibile ale gazdei:
cd ..
ls /
ls /etc
ls /root
În interiorul chroot-ului, /reprezintă /srv/sftp/alicepe gazdă. Dacă ați creat directorul `no` etcsau root`en` în interiorul acelui jail, utilizatorul nu poate accesa directorul `real` /etcsau `en` al gazdei /root.
Testați și o încărcare în /files. O configurație care blochează escape, dar accidental face ca întregul jail să fie doar pentru citire este sigură, dar nu este utilă pentru un cont de încărcare.
Dacă autentificarea eșuează imediat, verificați jurnalul serviciului SSH:
sudo journalctl -fu ssh.service
Ghidul OpenSSH al Ubuntu recomandă jurnalul de servicii SSH pentru depanare. Dacă observați o eroare de proprietate sau mod, inspectați fiecare director părinte:
namei -l /srv/sftp/alice
Calea chroot trebuie să fie deținută de root și să nu poată fi scrisă de grup sau de alții. O greșeală frecventă este următoarea:
sudo chown alice:alice /srv/sftp/alice
Nu rezolvați problema prin slăbirea verificărilor OpenSSH. Plasați zona de scriere a utilizatorului sub rădăcina chroot:
sudo chown root:root /srv/sftp/alice
sudo chmod 755 /srv/sftp/alice
sudo chown alice:alice /srv/sftp/alice/files
ChrootDirectorypoate fi folosit și cu un shell interactiv, dar configurarea este substanțial mai complexă. OpenSSH afirmă că un chroot interactiv are nevoie de cel puțin un shell și /devnoduri de bază, plus orice fișiere binare, biblioteci, fișiere de rezoluție a numelor și alte dependențe necesare comenzilor pe care le permiteți.
Pentru un cont de dispozitiv strict controlat, construirea unui astfel de jail poate fi justificată. Pentru accesul general la comenzi Linux, acest lucru creează adesea o povară de întreținere: actualizările de securitate pentru instrumente și biblioteci trebuie, de asemenea, să se reflecte în jail. Dacă cerința dvs. reală este „permiteți acestei persoane să execute comenzi, dar izolați-o de gazdă”, un container, o mașină virtuală sau un serviciu restricționat special conceput este de obicei mai ușor de auditat.
Restricția de director este doar un singur nivel. Pentru serverele cu acces la internet, luați în considerare și:
sudoacces utilizatorilor cu transfer de fișiere restricționat.DisableForwarding yespentru conturile exclusiv SFTP, astfel încât conexiunea SSH să nu poată fi reutilizată pentru tuneluri sau redirecționare prin agenți.journalctl -u ssh.serviceși stabiliți dreptul de proprietate asupra fișierului după adăugarea utilizatorilor.Pentru comportamentul definitiv al ChrootDirectory, Match, ForceCommand, și DisableForwarding, utilizați manualul de configurare a serverului OpenSSH Ubuntu 24.04 . Pentru configurația specifică Ubuntu, validare, comenzi de repornire și înregistrare în jurnal, consultați documentația oficială a serverului OpenSSH Ubuntu .
Dacă obiectivul este „acest cont SSH poate încărca și descărca fișiere doar într-un singur director”, utilizați o `root` ChrootDirectory, plasați conținutul care poate fi scris într-un director copil deținut de utilizator și forțați ` internal-sftp. Validați cu ` sshd -tînainte de a reporni`, apoi testați atât calea de încărcare permisă, cât și tentativa de acces în afara jail-ului. Aceasta vă oferă o limită de securitate mică și ușor de înțeles, fără a fi nevoie să construiți un mediu Linux complet în interiorul chroot-ului.
Descarcă FlightGear gratuit de pe site-ul oficial. Compară pachetele Windows, macOS și Linux, instalează fișierele de date și începe primul tău zbor.
Deschide Google Tasks într-un browser, adaugă o comandă rapidă pentru Chrome sau o lansare în stilul aplicației și gestionează activitățile de făcut în avans prin Calendar și Gmail.
OKSampler mapează clipuri MP3 pe tastele tastaturii și poate reda audio în buclă. Află ce face software-ul gratuit vechi, unde se termină funcțiile sale vechi și ce trebuie să verifici înainte de descărcare.
Instalează versiunea Linux a jocului Don't Starve Together prin Steam, creează o lume sau alătură-te prietenilor urmând acești pași de configurare și depanare.
Configurează Squad pe Linux cu Steam Play și Proton, instalează jocul, alege un instrument de compatibilitate și depanează problemele anti-cheat.
Descărcați și verificați fișierul ISO LMDE 5 arhivat, creați un USB bootabil și alegeți setările de instalare sigure. Elsie a ajuns la sfârșitul duratei de viață; consultați versiunea curentă a LMDE.
Creați un USB de instalare Windows 11 pe Linux cu Ventoy: obțineți fișierul ISO oficial, instalați Ventoy în siguranță, copiați imaginea și porniți PC-ul țintă.
Instalați Wireshark pe Ubuntu, Debian, Fedora, Arch sau openSUSE cu comenzile actuale ale pachetului, apoi configurați captura de pachete live în siguranță.
Învață cum să joci DiRT Rally pe Linux dacă îl deții deja pe Steam: instalează versiunea nativă, lansează-l și folosește Proton doar ca soluție de rezervă.
Instalați Devuan Excalibur din fișierul ISO Desktop Live. Verificați descărcarea, creați un USB bootabil, protejați partițiile existente și finalizați configurarea cu Refracta Installer.