!Pozdravljeni prijatelji! Danes vam predstavljam alternativo uporabi strežnika FTP za varen prenos datotek. Že kolega KZKG ^ Gaara objavil enega na podlagi paketa zapornik. Tisti, ki ga bomo razvili, temelji na paketih, ki jih imamo v svojem skladišču bolj na dosegu roke.
Bomo videli:
- Vnesite obvezno
- Kako nastavimo strežnik Openssh?
- Kako ustvarimo uporabnike?
- Kako spremenimo domače imenike, tako da kletka deluje?
Vnesite obvezno
Pogosto potrebujemo kopiranje datotek iz oddaljenih računalnikov v naš računalnik. Mnogi so me o tem spraševali. Ali moram namestiti FTP? Kako namestim SAMBA? No, pojdimo od preprostega k kompleksnemu. Najprej, zakaj bi si komplicirali, če imamo OpenSSH-strežnik nameščen?. In če ga nimamo, s preprostim ukazom:
aptitude namestitev openssh-strežnika
Zdaj ga imamo!, Nato pa bomo lahko varno prenašali datoteke prek protokola SFTP (Secure File Transfer Protocol), ki za šifriranje uporablja SSH (Secure Shell).
Privzeto uporabniki z dovoljenjem za zagon oddaljene seje prek ssh uporabnik @ moja ekipa, lahko bodo videli skoraj vse datoteke, shranjene v našem sistemu, ki nam morda niso všeč, ali pa iz varnostnih razlogov tega ne smemo dovoliti.
Ta članek nam bo pomagal konfigurirati OpenSSH-strežnik tako da so uporabniki, ki jih želimo, omejeni na njihov osebni imenik / home / uporabnik. Pojasnjujemo, da S to metodo deklarirani uporabniki ne bodo mogli začeti oddaljene seje prek ssh konzole ali PuTTy. Datoteke bodo lahko prenašale samo v svoj osebni imenik ali iz njega v našem računalniku ali strežniku.
Tu opisana metoda velja za različice Debian 5 (Lenny) ali novejše in za različice Ubuntu 9.04 ali novejše. Različica paketa SSH za Hardy ali Ubuntu 8.04 je zelo pozna in ne podpira konfiguracije, ki jo bomo opisali spodaj.
Kako nastavimo strežnik Openssh?
Kot uporabnik koren datoteko uredimo / etc / ssh / sshd_config s katerim koli preprostim urejevalnikom besedil. Priporočamo uporabo nano v načinu konzole.
nano / etc / ssh / sshd_config
Želimo, da je prisotna naslednja vrstica:
Podsistem sftp
V Lennyju in Squeezeu so:
Podsistem sftp / usr / lib / openssh / sftp-server
Če ne obstaja, na koncu datoteke dodamo:
Podsistem sftp interni-sftp
Nadaljujemo z urejanjem datoteke sshd_config in na koncu dodamo:
Skupina tekem group-sftp ChrootDirectory% h X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp
Spremembe shranimo in znova zaženemo storitev:
/etc/init.d/ssh ponovni zagon
Kako ustvarimo uporabnike?
Najprej ustvarimo «skupina»To izjavljamo v sshd_config. Bodite previdni pri imenu, ki smo ga izbrali prej, ne bo, da že obstaja in je skupina samega sistema. Če ne želimo omejiti obstoječih uporabnikov v našem sistemu, moramo ustvariti nove uporabnike, da bodo lahko prenašali datoteke. Da bo kletka delovala, jih moramo narediti tudi mi, člani zadevne skupine.
addgroup group-sftp adduser user1 adduser user2 [----] usermod -G group-sftp user1 usermod -G group-sftp user2
Če želite preveriti ustvarjanje skupine in uporabnikov, lahko naredimo:
manj / etc / geslo manj / etc / group ls -l / home
In uporabniki bi se morali pojaviti uporabnik1 y uporabnik2pa tudi skupine group-sftp in tisti, ki ustrezajo ustvarjenim uporabnikom. Tudi pri navajanju imenika / Domov, se bodo prikazali domači imeniki vsakega ustvarjenega uporabnika.
Kako spremenimo domače imenike, da bo kletka učinkovito delovala?
Povečati moramo varnost osebnih map vsakega uporabnika, tako da ne more ustvariti dodatnih map v svojem osebnem imeniku in z dovoljenji za pisanje, kjer želimo (ne tam, kjer hočejo) 🙂:
chown root: root / home / user1 / home / user2 chmod 755 / home / user1 / home / user2 cd / home / user1 mkdir documents html_public chown user1: user1 * cd / home / user2 mkdir documents html_public chown user2: user2 *
Uporabniki, ki pripadajo skupini group-sftp, odslej se bodo lahko prijavili s svojimi imeni in gesli samo prek SFTP, datoteke pa bodo lahko prenašali v in iz imenikov, ki se nahajajo pod njihovo osebno mapo in ki smo jih ustvarili mi, ne bodo pa mogli videti preostalih naš datotečni sistem.
Za prenos datotek in map lahko uporabimo Nautilus, Konqueror, WinSCP, FileZilla in druge, ki podpirajo protokol SFTP. V primeru Konquerorja moramo uporabiti fish: // user @ remotecomputer.
Upamo, da nam bo ta članek koristen v praksi!
Do naslednje dogodivščine, prijatelji!
Dober članek. Zelo varen način za skupno rabo datotek. Najlepša hvala za razlago. 🙂
Odlično
In ali ni bolj udobno uporabljati sshfs?
Za našo ekipo bi bila oddaljena mapa prikazana kot še ena mapa z enakimi značilnostmi.
Pozdravljeni Federico, kot vedno odličen članek. Zelo sem vesel, da lahko zdaj berem vaše objave z interneta.
Objem
jako
Kaj pa Jacobo, noben Federico se ne strinja neposredno. Hej, ko se ne vrneš več ubuntu, pobarvaš človeško zeleno in popolnoma odpreš. Objem. 😉
Odlično prispevate, tako nadaljujte 😀
Hvala tisoč KZKG ^ Gaara in hvala VSEM za povratne informacije
Ali je uporabnik lahko v kletki v mapi, ki ni / home / user / ... ..?
Kar želim storiti, je, da uporabnika namestim v mapo / media / hdd / ...
To moram storiti na ta način, saj je strežnik Raspberry Pi z Raspbianom in ima na sd kartici mapo / home / ... /, ki bi se v kratkem napolnila.
Poskusil sem na več načinov, rezultat v odjemalcu pa je vedno »Broken pipe«, rezultat pa usoden strežnik: slabo lastništvo ali načini za komponento imenika chroot «/ media / HDD /»
Vsem najlepša hvala
Mislim, da boste morali sistemu povedati, da je domača mapa tega uporabnika / home / HDD, če ima ta particija izvorni format linux, to je ext4; ext3; itd. Na primer, če je uporabnik jae-za kratek čas, morate izvesti nekaj takega:
: ~ # usermod –move-home –home / home / HDD jae
Glej tudi man usermod. Na zdravje
Imam težavo ali imam storitev v Amazonu z javnim prijateljem in moram vstopiti prek sftp, da shranim ali odstranim datoteke.
To sem počel že prej in vse je v redu, danes pa mi je naredil nekaj, kar se mi še ni zgodilo
Znotraj ami je vrsta map, ena izmed njih pa je ujeti internetni portal (stran za moje uporabnike). Izkazalo se je, da tam delam promocije in reklame za svoje uporabnike ter jih nenehno spreminjam in nalagam prek sftp (z winscp). root dovoljenja in root pass
Chmod 777 sem dal za dovoljenja za pisanje in vse je šlo dobro
danes pa mi je pri posodabljanju spleta in nalaganju index.html in drugih datotek dal imena, vendar mi ni pustil bajtov, kar pomeni nič (prazno), zdaj na mojem spletu ne vidite ničesar
Zaprl sem sejo in znova vstopil, znova dal dovoljenja, zamenjal uporabnika, posodobil, poskušal dodati druge datoteke, ustvaril nove in vedno naredi enako
da mi datoteke, vendar nimajo podatkov
Mi lahko kdo pomaga ???
Hvaležen bi bil za vaše odgovore
najprej hvala
jasno Atte
G. Irving Hernandez
Pozdravljeni, kako uporabljati filezilla, videl sem ga že na več načinov in se še vedno ne morem povezati.
Narobe je.
Dober večer,
Izvedite postopek in kletka deluje popolnoma, vendar mi pri poskusu pisanja v mapo «dokumenti» ali «html_publico» onemogoči dostop. Ima omenjena dovoljenja in nič, kar dovoljuje.
drwxr-xr-x. 2 uporabnik1 uporabnik1 4096 11. marec 13:16 dokumentov
drwxr-xr-x. 2 uporabnik2 uporabnik2 4096 11. marec 13:16 html_publico
Rezultat je zavrnjen dostop pri poskusu pisanja v katero koli mapo. Vendar izvajanje pridobivanja to dopušča.
Upam, da mi lahko čim prej pomagate.
Lep pozdrav.