Atunci când gestionați un server Linux, asigurarea accesului restricționat al utilizatorilor pentru transferuri de fișiere fără a acorda acces complet la shell este o preocupare comună în materie de securitate. Două instrumente care ajută la realizarea acestui obiectiv sunt rssh și scponly. Aceste shell-uri restricționate permit utilizatorilor să efectueze operațiuni specifice de transfer de fișiere prin SCP, SFTP și rsync, împiedicând în același timp executarea comenzilor.
În acest ghid, vom acoperi instalarea și configurarea rssh și scponly pe un sistem Linux.
Majoritatea distribuțiilor Linux oferă rssh în depozitele lor de pachete. Îl puteți instala utilizând următoarele comenzi:
Pentru Debian/Ubuntu:
sudo apt update && sudo apt install rssh -y
Pentru CentOS/RHEL:
sudo yum install rssh -y
Pentru Arch Linux:
sudo pacman -S rssh
Odată instalat, configurați rssh prin editarea fișierului său de configurare:
sudo nano /etc/rssh.conf
Decomentați opțiunile necesare pentru a permite SCP, SFTP sau rsync. Exemplu:
allowscp
allowsftp
allowrsync
Salvați și ieșiți din fișier.
Pentru a atribui rssh ca shell pentru un anumit utilizator, executați:
sudo usermod -s /usr/bin/rssh nume utilizator
Acum, utilizatorul poate efectua operațiuni permise numai prin SCP, SFTP sau rsync.
Pentru sistemele bazate pe Debian:
sudo apt update && sudo apt install scponly -y
Pentru CentOS/RHEL:
sudo yum install scponly -y
Pentru Arch Linux:
sudo pacman -S scponly
Pentru a restricționa accesul unui utilizator la scponly, modificați-i shell-ul:
sudo usermod -s /usr/bin/scponly nume utilizator
Pentru a vă asigura că utilizatorul este restricționat corespunzător, testați cu:
ssh username@server
Acesta ar trebui să interzică accesul la shell, dar să permită transferurile de fișiere SCP/SFTP.
Pentru a verifica configurația, încercați să transferați fișiere utilizând:
Pentru SCP:
scp file.txt username@server:/home/username/
Pentru SFTP:
sftp nume utilizator@server
Dacă este configurat corect, utilizatorii ar trebui să poată transfera fișiere, dar nu să execute comenzi.
Utilizând rssh și scponly, administratorii pot spori securitatea prin restricționarea accesului utilizatorilor doar la transferul de fișiere. Acest lucru previne accesul neautorizat la shell, permițând în același timp operațiunile necesare de schimb de fișiere. Asigurați-vă că actualizați periodic configurațiile pentru a le alinia cu politicile de securitate.