Beperkte toegang tot linux-server inrichten

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

  • eengebruiker
  • Registratie: Oktober 2012
  • Laatst online: 22-04 17:08
Dag,

Wij gebruiken Winscp voor toegang tot Linux-servers. Hoewel wij onszelf beperken tot die delen waar wij echt moeten zijn, kunnen we eigenlijk overal heen op de server.
Ooit gebruikten wij Samba zodat wij onder windows shares konen oppikken en op die manier bestanden konden uitwisselen. Dat is (terecht) om veiligheidsredenen afgeschaft.

Mijn vraag is nu of het linux-technisch mogelijk is om mensen ook bij gebruik van winscp alleen toegang te verschaffen tot plaatsen (directories met subdirectories) waar dat nodig is. M.a.w. dat een rondwandeling op de server niet mogelijk is.

André

Alle reacties


Acties:
  • +1 Henk 'm!

  • grasmanek94
  • Registratie: Juli 2015
  • Laatst online: 15-09 10:57
SSH "jailen" (dat is de correcte zoekterm) is helaas lastig op Linux.

Je kunt ACLs gebruiken, en dan bv iedere gebruiker aan een scp groep toevoegen die je aanmaakt, en dan met ACL "alles behalve..." verbieden.

Helpt dit:

https://askubuntu.com/a/609201

?

Vervang user door group, dus u: door g: enzv.

Het lastige is dan wel dat je ook niet te veel mag afpakken, anders kan er ook weer van alles fout gaan. Ik zou iig de /bin /lib enz folders toegankelijk laten.

Thuis heb ik ervoor gekozen om een sftp server afzonderlijk in docker te draaien, en de toegestane folders heb ik dan voor docker toegankelijk gemaakt:

https://hub.docker.com/r/atmoz/sftp

En als je de oude manier van zaken doen wilt:

https://www.cyberciti.biz...-directory-chrooted-jail/

Maar dit is lastig te onderhouden, en veel werk, en er kan makkelijk iets mis gaan.

[ Voor 51% gewijzigd door grasmanek94 op 14-03-2023 14:49 ]


Acties:
  • +7 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 15-09 22:42

Hero of Time

Moderator LNX

There is only one Legend

Het is helemaal niet lastig. De functie zit standaard in OpenSSH server en zit in het SFTP subsystem. Zie bijvoorbeeld https://access.redhat.com/solutions/2399571 en https://wiki.archlinux.org/title/SFTP_chroot. Belangrijk om te beseffen: de root map die je opgeeft moet van de root gebruiker zijn. Je moet ook minstens 1 submap hebben waar de gebruiker de eigenaar is en in mag schrijven. Dit is nodig, anders werkt het niet.

Dus voor het idee, de mappen structuur kan dit zijn:
code:
1
2
3
4
5
/sftp           # eigenaar: root
     /userA      # eigenaar: root
           /mapA  # eigenaar: userA
     /userB      # eigenaar: root
           /mapB  # eigenaar: userB

UserA zal in de map 'userA' beginnen en alleen 'mapA' zien en daar alles in mogen. Hetzelfde voor userB met 'mapB' waar het alles in mag.

Een gedeelde map kan ook, maar dan moet je instellen dat er niet naar individuele 'home' mappen wordt ge-chroot.

Commandline FTW | Tweakt met mate


Acties:
  • +1 Henk 'm!

  • deHakkelaar
  • Registratie: Februari 2015
  • Laatst online: 27-07-2024
Als je meerdere gebruikers dezelfde rechten wilt geven in bepaalde folders, dan zul je gebruikersgroepen moeten aanmaken.
Je voegt dan de gebruikers toe aan de groep en verandert de rechten voor de folders en bestanden om de groep ipv de individuele gebruikers bepaalde toestemmigen te geven (read/write/execute/list etc).

Zie onder om groepen aan te maken:
code:
1
man addgroup

En onder om groepen toe te voegen aan gebruikers (oftewel lid maken):
code:
1
man usermod

Meestal iets in de trend van:
code:
1
sudo usermod -a G <GROUP> <USER>

Je kunt ook nog de rechten tweaken voor nieuwe bestanden die worden gegenereerd door gebruikers met onder:
https://linux.die.net/man/8/pam_umask

$ apt-file search pam_umask
libpam-doc: /usr/share/doc/libpam-doc/html/sag-pam_umask.html
libpam-modules: /lib/arm-linux-gnueabihf/security/pam_umask.so
libpam-modules: /usr/share/man/man8/pam_umask.8.gz

M'n huidige default voor Pi-OS is:
$ umask
0022

$ touch test.file
$

$ stat test.file
[..]
Access: (0644/-rw-r--r--)  Uid: ( 1000/      pi)   Gid: ( 1000/      pi)

Maar kan met die pam_umask module worden verandert voor SSH/SCP/FTP sessies in bv:
$ umask 0012
$

$ touch test.file.2
$

$ stat test.file.2
[..]
Access: (0664/-rw-rw-r--)  Uid: ( 1000/      pi)   Gid: ( 1000/      pi)


EDIT: Ow en als je met tweaken de user/group/everyone geen listing toegang wilt verlenen tot een bepaalde folder, dan haal je het execute (x) bitje weg:
$ stat .
[..]
  Size: 4096            Blocks: 8          IO Block: 4096   directory
[..]
Access: (0755/drwxr-xr-x)  Uid: ( 1000/      pi)   Gid: ( 1000/      pi)

Een directory/folder kan toch niet executed worden ;)

[ Voor 12% gewijzigd door deHakkelaar op 15-03-2023 00:37 ]

There are only 10 types of people in the world: those who understand binary, and those who don't


Acties:
  • +1 Henk 'm!

  • eengebruiker
  • Registratie: Oktober 2012
  • Laatst online: 22-04 17:08
Allen bedankt voor de (soms) uitgebreide antwoorden.

Ik kan zelf niets doen maar hiermee wel de systeembeheerders 'bestoken' die ons nu het e.e.a. aan gebruiksgemak ontzeggen.

André