Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: [OPGELOST]chroot jail met meerdere gebruikers in zelfde map...  (gelezen 1844 keer)

Hallo,

Kan iemand me helpen met het instellen van openssh ?
Wat ik wil:
1) chroot jail voor meerdere gebruikers in dezelfde map met schrijfrechten, met name /var/www

enkele gegevens:
versie openssh: 5.6p1
scp-client: winscp 4.2.9 (build 938)

rechten op mappen:
/ root:root
/var root:root
/var/www root:root

alles onder /var/www gebruiker:gebruikersgroep (bijvoorbeeld: dirk:sshlite)

nog een paar dingen zijn me onduidelijk:
in sshd_config verwijst de authorizedkeysfile naar %h/.ssh/authorized_keys
wat als je de gebruikersdirectory ingesteld hebt op /var/www (of is dit niet nodig en regelt openssh de directory voor je dmv ChrootDirectory)

mag/kan authorized_keys met met daarin alle geauthenticeerde publieke sleutels op een andere plaats gezet worden zodat er meerdere users aan kunnen ?

stappen gevolgd:
sudo useradd -d /var/www dirk
sudo passwd dirk
sudo usermod -g sshlite dirk
sudo usermod -s /bin/false dirk

wijzigingen /etc/ssh/sshd_config:
PermitRootLogin no
PasswordAuthentication no

Subsystem sftp internal-sftp

Match group sshlite
X11Forwarding no
ChrootDirectory /var/www
AllowTcpForwarding no
ForceCommand internal-sftp

ssh-keygen -b 2048 -t rsa -C "dirk"

dan sleutel op client-pc geïmporteerd en geconverteerd met puttygen.exe

maar krijg altijd foutmelding: server refused our key

Kan er iemand zeggen wat er fout is en hoe authorized_keys moet geconfigureerd worden om meerdere gebruikers te kunnen authenticeren en zodat alle gebruikers eraan kunnen ?

Alvast bedankt !


« Laatst bewerkt op: 2011/01/17, 13:33:26 door lowrider2025 »

Kan inmiddels inloggen dmv sleutelpaar:

Oplossing:
/etc/ssh/sshd_config:
AuthorizedKeysFile %h/.ssh/authorized_keys of /home/%u/.ssh/authorized_keys

permissions:
sudo chmod 700 ~
sudo chmod 700 ~/.ssh
sudo chmod 600 ~/.ssh/authorized_keys
sudo chown gebruiker:gebruiker ~
sudo chown gebruiker:gebruiker ~/.ssh
sudo chown gebruiker:gebruiker ~/.ssh/authorized_keys


Probleem dat overblijft:
users moeten bestanden kunnen uploaden in /var/www
maar in chroot jail mag blijkbaar enkel root schrijfrechten hebben, group en others niet. Heeft iemand een workaround ?



Offline Johan van Dijk

  • Administrator
    • johanvandijk
Heb je wat aan deze handleiding?
http://wiki.ubuntu-nl.org/community/SftpServer
Helemaal onderin staat extra informatie over rechten.

Offline Rachid

  • Lid
    • rachidbm
    • Mijn blog
mag/kan authorized_keys met met daarin alle geauthenticeerde publieke sleutels op een andere plaats gezet worden zodat er meerdere users aan kunnen ?
Goede vraag. Daar weet ik geen antwoord op uit mijn hoofd. Dat artikel dat Johan noemt doet bijna wat jij wilt, behalve het inloggen met sleutels ipv wachtwoorden. Heb je dit al wel voor elkaar met wachtwoorden? Zo niet, dan wil ik je aanraden eerst het hele artikel te volgen zodat het werkt. En dan te kijken naar een oplossing voor het authenticeren met sleutels.

Toevallig had ik dat artikel geschreven, daar wordt wel genoemd dat het authenticeren met sleutels veiliger is, maar er is niet uitgewerkt hoe je dat moet instellen wanneer meerdere gebruikers dezelfde map delen. Ik help je graag mee, en wil de oplossing dan toevoegen aan het SFTP-artikel.
Ben je ook blij dat Ubuntu zo toegankelijk en gratis is, en wil je graag net als ik iets terugdoen, kijk dan eens rond bij mwanzo, dé poort naar het bijdragen aan Ubuntu en haar gemeenschap!

Offline Rachid

  • Lid
    • rachidbm
    • Mijn blog
Oi, nu ik er over nadenk.
Je kunt gewoon meerdere paden geven voor AuthorizedKeysFile.

Dus je zou ergens een bestand kunnen maken waar je de verschillende publieke sleutels in zet.
/var/authorized_keys bijvoorbeeld...
Ben je ook blij dat Ubuntu zo toegankelijk en gratis is, en wil je graag net als ik iets terugdoen, kijk dan eens rond bij mwanzo, dé poort naar het bijdragen aan Ubuntu en haar gemeenschap!

niet zo'n mooie, maar wel een effectieve oplossing geworden. (Het moest snel opgelost worden)

bij alle users die inloggen via ssh:
usermod -s /bin/false

omdat openssh niet toelaat dat niet-root gebruikers schrijfrechten hebben op de chrootdirectory (ik wil geen subdirectories met hun username waar ik dan manueel alle files moet gaan uithalen) dan maar het volgende gedaan:
/etc/ssh/sshd_config

PermitRootLogin yes

/etc/passwd

alle ssh-users uid aangepast naar 0

iptables: ssh toegang wordt alleen toegelaten vanaf ip en mac van ssh-users

btw: dit alles is geconfigureerd in een LAN-omgeving, dus geen internettoegang. Alleen voor het updaten van packages zou de server even aan het internet hangen.
« Laatst bewerkt op: 2011/01/12, 09:26:36 door lowrider2025 »

Offline Rachid

  • Lid
    • rachidbm
    • Mijn blog
Aha, je hebt de opmerking van Johan dus niet bekeken of begrepen?
Ben je ook blij dat Ubuntu zo toegankelijk en gratis is, en wil je graag net als ik iets terugdoen, kijk dan eens rond bij mwanzo, dé poort naar het bijdragen aan Ubuntu en haar gemeenschap!

Aha, je hebt de opmerking van Johan dus niet bekeken of begrepen?

Ik zie idd niet hoe de uitleg er kan voor zorgen dat de chrootdirectory schrijfbaar wordt voor ssh-users.

btw: Ik vermoed een typo in je tutorial: (1ste zin onder Permissies, helemaal onderaan) De map /home/share heeft als eigenaar en groep root en dit moet zo blijven!
moet dit niet zijn:
De map /srv/share heeft als eigenaar en groep root en dit moet zo blijven!

Offline Rachid

  • Lid
    • rachidbm
    • Mijn blog
btw: Ik vermoed een typo in je tutorial: (1ste zin onder Permissies, helemaal onderaan) De map /home/share heeft als eigenaar en groep root en dit moet zo blijven!
moet dit niet zijn:
De map /srv/share heeft als eigenaar en groep root en dit moet zo blijven!

Bedankt, ik verander het gelijk.

Er staat dat je een submap met schrijfrechten moet maken onder het kopje opzetten.
Citaat
Om het voor deze groep van gebruikers mogelijk te maken ook bestanden te plaatsen kan er een submap met schrijfrechten worden gemaakt:
Ben je ook blij dat Ubuntu zo toegankelijk en gratis is, en wil je graag net als ik iets terugdoen, kijk dan eens rond bij mwanzo, dé poort naar het bijdragen aan Ubuntu en haar gemeenschap!

Er staat dat je een submap met schrijfrechten moet maken onder het kopje opzetten.
Citaat
Om het voor deze groep van gebruikers mogelijk te maken ook bestanden te plaatsen kan er een submap met schrijfrechten worden gemaakt:

Ik wil dat gebruikers ook in /var/www kunnen uploaden , niet in een submap met bv. hun eigen naam. Het is niet de bedoeling dat ik bestanden uit hun mappen ga halen om het vervolgens op de juiste plaats te zetten en dan nog de rechten en ownerships ga aanpassen.

Offline Rachid

  • Lid
    • rachidbm
    • Mijn blog
Dat snap ik. Je kunt hier niet precies het artikel volgen. Maar je kunt bijv. een map /var/www/public_html maken. Deze schrijfrechten geven. En in Apache instellen dat dit de DocumentRoot wordt.

Als iemand dan inlogt komt ie automatisch in de map /var/www, maar moet ff op public_html klikken om te kunnen uploaden. (Je kunt in je SFTP client weer instellen om automagisch cd /public_html te doen na het verbinden..)
Ben je ook blij dat Ubuntu zo toegankelijk en gratis is, en wil je graag net als ik iets terugdoen, kijk dan eens rond bij mwanzo, dé poort naar het bijdragen aan Ubuntu en haar gemeenschap!

Dat snap ik. Je kunt hier niet precies het artikel volgen. Maar je kunt bijv. een map /var/www/public_html maken. Deze schrijfrechten geven. En in Apache instellen dat dit de DocumentRoot wordt.

Als iemand dan inlogt komt ie automatisch in de map /var/www, maar moet ff op public_html klikken om te kunnen uploaden. (Je kunt in je SFTP client weer instellen om automagisch cd /public_html te doen na het verbinden..)

Lijkt me idd wel best of both worlds. Dat ze moet ze klikken op public_html is nog iets waar ik kan mee leven. Bedankt voor de suggestie !