Have You Tried IT ?

Information Technology from scratch

Nowy użytkownik FTP i błąd setfacl: Operation not supported

Dodano przez Kategoria: Linux

Chcę stworzyć z poziomu konsoli nowego użytkownik, który będzie miał dostęp jedynie poprzez FTP i bez możliwości logowania przez SSH.

Na początek należy stworzyć nową grupę lub ewentualnie można wykorzystać jakąś już istniejącą cat /etc/group.

groupadd nowagrupa
useradd -g nowagrupa -d /var/www/vhosts/domena.pl/httpdocs -s /sbin/nologin nowyuser

Tworzenie nowego użytkownika odbywa się za pomocą komendy useradd, gdzie parametry odpowiednio oznaczają:

  • g – nazwa grupy do jakiej zostanie przydzielony użytkownik
  • d – ścieżka do katalogu domowego użytkownika. Po zalogowaniu do FTP użytkownik domyślnie będzie się znajdował w tym właśnie katalogu
  • s – nazwa do logowania do shella. W typ wypadku /sbin/nologin użytkownik nie będzie mógł się zalogować
  • na końcu należy podać nazwę tworzonego użytkownika (tutaj nowyuser)

Użytkownik jest już stworzony, teraz trzeba ustalić dla niego hasło. Do tego służy polecenie:

passwd nowyuser

Użytkownik może się już zalogować na ftpa, ale pozostaje jeszcze kwestia uprawnień dostępu do plików i możliwość zapisu.

setfacl -m u:nowyuser:rwx /var/www/vhosts/domena.pl/httpdocs
  • m – dotyczy modyfikacji
  • u:nowyuser:rwx – użytkownik nowyuser otrzymuje uprawnienia odczytu(r), zapisu(w) i wykonania(x) do katalogu podanego w dalszej części

W tym miejscy pojawił się taki oto błąd:

setfacl: /var/www/vhosts/domena.pl/htdocs: Operation not supported

Aby rozwiązać problem należało modyfikować plik konfiguracyjny /etc/fstab. Tutaj zapisane są informacje o występujących w systemie dyskach twardych, partycjach i ich montowaniu.

cat /etc/fstab

/dev/md1      /           ext3    errors=remount-ro    0    1
/dev/md2      /var        ext3    defaults             0    2
/dev/sda3     none        swap    defaults             0    0
/dev/sdb3     none        swap    defaults             0    0
proc          /proc       proc    defaults             0    0
sysfs         /sys        sysfs   defaults             0    0
tmpfs         /dev/shm    tmpfs   defaults             0    0
devpts        /dev/pts    devpts  defaults             0    0

W tym konkretnym przypadku, należało dopisać w 4 kolumnie ,acl w wierszu drugim (tam umiejscowiony jest folder, którego prawa będą modyfikowane). Czwarta kolumna dotyczy opcji montowania, a acl odpowiada za zarządzanie uprawnieniami do plików i katalogów. Tak więc należy edytować ten plik (vi /etc/fstab) a następnie zmodyfikować tylko drugą linię w ten sposób:

...
/dev/md2      /var        ext3    defaults,acl             0    2
...

Pozostaje tylko „przemontowanie” urządzenia /var

mount -o remount /var

Teraz już można zarządzać uprawnieniami dostępu na tym urządzeniu, a ponowne wywołanie komendy

setfacl -m u:nowyuser:rwx /var/www/vhosts/domena.pl/httpdocs

powinno zakończyć się sukcesem. Dla pewności można jeszcze sprawdzić jakie uprawnienia przyznane są dla danego katalogu:

getfacl /var/www/vhosts/domena.pl/htdocs

 

1 odpowiedź

  1. Pingback: Zablokowanie użytkownika FTP w swoim katalogu domowym | Have You Tried IT

Dodaj komentarz

XHTML: Dozwolone znaczniki: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="">