
Dylan Parker
0
2491
691

Introducere
Scponly este un shell alternativ pentru administratorii de sistem care ar dori să ofere acces utilizatorilor la distanță atât la citirea cât și la scrierea fișierelor locale fără a oferi privilegii de execuție la distanță. Funcțional, este cel mai bine descris ca un wrapper pentru suita de aplicații ssh încercată și adevărată. Scponly este o alternativă sigură la FTP anonim. Oferă administratorului posibilitatea de a configura un cont de utilizator securizat cu acces restricționat la fișiere la distanță și fără acces la un shell interactiv.
O utilizare tipică a scponly este în crearea unui cont semi-public. Acest lucru permite unui administrator să partajeze fișiere în același mod în care ar face o configurare anon ftp, folosind doar toată protecția pe care o oferă ssh. Acest lucru este semnificativ mai ales dacă considerați că autentificările ftp traversează rețelele publice într-un format de text simplu.
Condiții prealabile
Înainte de a începe acest tutorial, există câteva premise, cum ar fi:
- Aveți nevoie de o nouă picătură CentOS 6 sau 7.
- Și trebuie să rulați toate comenzile ca utilizator non-root.
Instalați și configurați Scponly
Pasul 1:
Există 5 pachete necesare pentru a fi instalate pentru a construi scponly de la sursă, aceste pachete sunt următoarele:
- Wget: pentru a descărca fișiere
- om: pentru a citi pagini de om
- rsync: pentru a oferi copiere avansată a fișierelor
- gcc: pentru a compila scponly din sursă
- openssh-client-tools: pentru a utiliza diverse instrumente ssh
Pentru a instala acele pachete vom folosi următoarea comandă:
sudo yum instala wget man rsync gcc openssh-clients -y
Pasul 2:
Acum vom descărca cea mai recentă versiune a Scponly folosind următoarele instrucțiuni. Vom începe prin a ne deplasa la /opta director folosind următoarea comandă, care este utilizată pentru software-ul opțional:
cd / opt
Și vom folosi următoarea comandă pentru a instala cea mai recentă versiune a Scponly:
sudo wget http://sourceforge.net/projects/scponly/files/scponly-snapshots/scponly-20110526.tgz
Și pentru a extrage fișierul vom folosi următoarea comandă:
sudo tar -zxvf scponly-20110526.tgz
Pasul 3:
Acum, după descărcarea și extragerea fișierului, vom începe crearea scponly folosind 3 comenzi principale: configurați, creați și faceți instalarea.
Ne vom muta în directorul unde există codul sursă al scponly folosind următoarea comandă:
cd / opt / scponly-20110526
Apoi vom folosi prima comandă „configure” pentru a crea un makefile cu caracteristicile noastre selectate.
Alegem următoarele opțiuni:
--enable-chrooted-binary:
Instalează binar chrootatscponlyc
--enable-winscp-compat:
Permite compatibilitatea cu WinSCP, un client Windows scp / sftp--enable-rsync-compat:
Activați compatibilitatea cu rsync, un utilitar de copiere a fișierelor foarte versatil--enable-scp-compat:
Permite compatibilitatea cu comenzile scp stil UNIX
Așa cum este scris în următoarea comandă:
sudo ./configure --enable-chrooted-binary --enable-winscp-compat --enable-rsync-compat --enable-scp-compat --with-sftp-server = / usr / libexec / openssh / sftp-server
Acum vom folosi a doua comandă „make” pentru a încorpora opțiunile selectate în binarele care vor fi instalate și rulate în sistemul dvs..
sudo make
Și vom instala binarele folosind următoarea comandă:
sudo make install
Și vom adăuga shell-urile scponly în fișierul / etc / shells folosind următoarea comandă:
sudo / bin / su -c "echo" / usr / local / bin / scponly ">> / etc / shells"
Acum am adăugat o nouă shell la sistem numită scponly și am localizat binarul în directorul / usr / local / bin / scponly.
După aceea, vom crea grupul nostru numit scponly folosind următoarea comandă:
sudo groupadd scponly
Pasul 4:
În această secțiune vom crea un director de încărcare centralizat pentru grupul scponly. Acest lucru vă permite să controlați unde și cât de multe date pot fi încărcate pe server.
Creați un director numit / pub / upload
acesta va fi un director dedicat încărcărilor:
sudo mkdir -p / pub / upload
Schimbați calitatea de proprietar al grupului / pub / upload
director către scponly
:
rădăcină sudo chown: scponly / pub / upload
Următorul pas este configurarea permisiunilor pentru / pub / upload
director. Setând permisiunile pentru acest director la 770, oferim acces doar utilizatorilor root și membrilor grupului scponly.
Modificați permisiunile pentru / pub / upload
director pentru a citi, scrie și executa pentru proprietar și grup și pentru a elimina toate permisiunile pentru alții:
sudo chmod 770 / pub / upload
Pasul 5:
Pentru a verifica configurația noastră scponly, vom configura un cont de utilizator nou. Deci, vom începe prin a crea un utilizator numit Waf_User și menționează scponly ca grup alternativ și / usr / local / bin / scponly
ca shell folosind următoarea comandă:
sudo useradd -m -d / home / Waf_User -s "/ usr / local / bin / scponly" -c "Waf_User" -G scponly Waf_User
Acum vom edita permisiunile din directorul de start Waf_User folosind următoarea comandă:
sudo chmod 500 / home / Waf_User
Și vom finaliza acest pas adăugând o parolă utilizatorului nostru creat folosind următoarea comandă:
sudo passwd Waf_User
Pasul 6:
În acest pas, vom verifica dacă shell-ul nostru funcționează de la distanță. Vom începe prin a verifica dacă utilizatorul nostru creat nu are acces la terminal. Pentru a face acest lucru, vom încerca să ne conectăm la server ca Waf_User folosind următoarea comandă:
su - Waf_User
Dacă nu ați acces, apăsați ctrl + c pentru a ieși din shell-ul scponly. Și puteți verifica, de asemenea, accesul de pe mașina dvs. locală utilizând următoarea comandă:
ssh [email protected] your_IP
Veți vedea că nu ați acces, așa că apăsați din nou pe ctrl + c pentru a ieși din shell-ul scponly.
Pasul 7:
Acum vom verifica dacă utilizatorul nostru creat putem descărca fișiere. Vom începe prin crearea unui fișier de 100 Mbytes folosind următoarea comandă:
sudo fallocate -l 100m /home/Waf_User/Waf_file.img
Acum vom schimba proprietatea Waf_file.img la Waf_User folosind următoarea comandă:
sudo chown Waf_User: Waf_User /home/Waf_User/Waf_file.img
Apoi treceți la directorul tmp folosind următoarea comandă:
cd / tmp
Apoi vom folosi următoarea comandă pentru a ne muta pe serverul nostru:
sftp [email protected] your_IP
Apoi utilizați următoarele comenzi pentru a descărca fișierul:
ls -obtin Waf_file.img
După terminarea descărcării, utilizați comanda quit pentru a ieși:
părăsi
Verificați dacă fișierul a fost descărcat cu succes înainte de a reveni la computerul dvs. local.
ls -l Waf_file.img
Pasul 8:
Acum vom verifica dacă Waf_User poate descărca fișiere pe server folosind comanda sftp.
Ca și pasul anterior, creați un fișier de 100 megaocteți numit Waf_upload.img
folosind următoarea comandă:
fallocate -l 100m /home/Waf_User/Waf_upload.img
Apoi, din sistemul dvs. local, conectați-vă la server folosind următoarea comandă:
sftp [email protected] your_IP
Apoi încărcați fișierul folosind următoarea comandă:
pune Waf_upload.img / pub / upload /
Verificați dacă fișierul a fost încărcat cu succes folosind următoarea comandă:
ls -ltr / pub / upload
Veți obține așa ceva:
-rw-r - r-- 1 Waf_User Waf_User 104857600 27 Iulie 08:58 Waf_upload.img
Și, în cele din urmă, utilizați comanda quit pentru a ieși:
părăsi
Concluzie
Acum, aveți un sistem instalat și configurat scponly în sistemul dvs. Acest instrument este un shell limitat pentru a permite utilizatorilor acces scp / sftp și doar acces scp / sftp la cutia dvs. În plus, puteți configura scponly pentru a ghida utilizatorul într-un anumit director, crescând nivelul de securitate.
Link-uri sursă și referință:
- Pagina principală Scponly
- Oceanul digital