Re: [FRsAG] : commandes ssh resteintes

2013-01-12 Par sujet JC PAROLA
Le Sat, 12 Jan 2013 02:48:27 +0100,
Jean Weisbuch  a écrit :

> mais évidemment si vous voulez garder une seule 
> IP publique frontale vous devrez avoir un proxy frontal et du nat
> pour les accès SSH (chaque conteneur ayant son propre SSHD, si
> possible lancé sur demande car seule une petite partie des
> utilisateurs utilisent du SSH). Cette solution est bien évidemment
> plus lourde à mettre en place et peut être contraignante et
> consommera plus de ressources par compte.
> 
> Si la solution d'un chroot était choisie, il vaut mieux avoir un
> kernel avec le patchset grsecurity qui permet entre autre aux
> utilisateurs non root de ne pas pouvoir voir les processus des autres
> utilisateurs (pratique si une commande comprenant un login ou mot de
> passe est lancé par un user) et différents renforcements de la
> sécurité des environnements chrootés.

Merci beaucoup pour ces éléments très pertinents.

Le patchset de grsecurity  est effectivement une très bonne réponse en
terme besoin sur le ssh utilisateur mais soulève du coup d'autres
contraintes au niveau du systemes d'exploitation comme le fait de
recompiler le noyaux Linux dès que GrSec sort un nouveau patch.

Plus le fait d'installer des noyaux "custom" n'est souvent spécifique à
chaque distribution. Il faut donc bien connaître les distrib pour
connaître les options à laisser impérativement spécifiquement pour la
distribution Linux.

J'ai un peu peur que la charge de travail n'augmente trop.

Le déploiement sous forme de VM seraint une solution.autre sujet.

Je sais que l'on hérite de UNIX System V, que des ACL étendues ont été
crées pour palier à certaines carences, j'aurais pensé qu'une solution
plus "standard" voire "packagée" pouvait exister pour ce besoin de ssh
utilisateur. 

Je me posait la question de savoir si des systèmes MAC (Mandatory
Access Control) comme SELinux/AppArmor ou les MAC de FreeBSD n'était
pas prévu pour ça.

Avec un Framework MAC on traiterait du coup le pb du ssh user mais
aussi d'autres points.question ouverte.

JC PAROLA

___
Liste de diffusion du FRsAG
http://www.frsag.org/


Re: [FRsAG] : commandes ssh resteintes

2013-01-12 Par sujet Florian Maury

Le 12 janv. 2013 à 12:22, JC PAROLA a écrit :
> Je me posait la question de savoir si des systèmes MAC (Mandatory
> Access Control) comme SELinux/AppArmor ou les MAC de FreeBSD n'était
> pas prévu pour ça.
> 
> Avec un Framework MAC on traiterait du coup le pb du ssh user mais
> aussi d'autres points.question ouverte.


Je me contenterai de répondre que question charge de travail, SELinux se pose 
là, dès qu'on sort des sentiers battus (a.k.a. ce qui est pré-packagé)

Pour ainsi dire, sa lourdeur n'a d'égal que son efficacité.

Florian Maury
___
Liste de diffusion du FRsAG
http://www.frsag.org/


Re: [FRsAG] : commandes ssh resteintes

2013-01-12 Par sujet Emmanuel Thierry

Le 12 janv. 2013 à 02:48, Jean Weisbuch  a écrit :

> Le 11/01/2013 10:52, JC PAROLA a écrit :
>> Je pense que ce point soulever par Emmanuel Thierry est beaucoup plus
>> utilisé que ce que l'on pense. On m'a souvent demandé d'intervenir sur
>> des serveurs mutualisés d'autres hébergeurs qui n'ont pas peur de
>> fournir un accès SSH pour chaque utilisateur et pour les milliers de
>> serveurs mutualisés qu'ils possèdent.
>> 
>> En accédant en ssh sur ces serveurs, je m'était rendu compte que ce
>> n'était pas un nouveau shell mais bien du super chroot comme énoncé
>> précédemment
>> 
>> Je vais creuser aussi la dessus.
>> 
>> un grand merci également Jonathan SCHNEIDER pour son coup de pouce pour
>> le contact avec le développeur de lshell. Sincèrement, je suis
>> persuader que le pb venait de mon install (apt sur Debian et port sur
>> Freebsd). La mise en prod mettra tout cela en lumière.
> Pour une telle utilisation il est recommandé en terme de sécurité et 
> souplesse pour l'utilisateur (si l'on veux qu'il ait un environnement semi 
> ouvert) de mettre en place des conteneurs (LXC ou VServer ou OpenVZ) plutôt 
> que du chroot même avancé (sans forcément donner l'accès root à 
> l'utilisateur), mais évidemment si vous voulez garder une seule IP publique 
> frontale vous devrez avoir un proxy frontal et du nat pour les accès SSH 
> (chaque conteneur ayant son propre SSHD, si possible lancé sur demande car 
> seule une petite partie des utilisateurs utilisent du SSH).
> Cette solution est bien évidemment plus lourde à mettre en place et peut être 
> contraignante et consommera plus de ressources par compte.

Le point avec LXC est qu'il est possible de "virtualiser" à la carte. On peut 
"virtualiser" le filesystem, les PID, les devices, etc, mais garder le même net 
namespace. C'est précisément ce que je fais sur l'un de mes setup où j'ai gardé 
une stock réseau unique pour tous les conteneurs. Cela évite un NAT  inutile.
Concrètement cela pourrait se faire pour des restrictions utilisateur en ayant 
un seul process sshd, lequel pourrait créer à la volée un nouveau conteneur 
pour chaque session ssh ou utilisateur.

Cordialement.
Emmanuel Thierry
___
Liste de diffusion du FRsAG
http://www.frsag.org/


Re: [FRsAG] : commandes ssh resteintes

2013-01-12 Par sujet SELS INGENIERIE

Le 2013-01-12 16:16, Emmanuel Thierry a écrit :
Le 12 janv. 2013 à 02:48, Jean Weisbuch  a écrit 
:



Le 11/01/2013 10:52, JC PAROLA a écrit :
Je pense que ce point soulever par Emmanuel Thierry est beaucoup 
plus
utilisé que ce que l'on pense. On m'a souvent demandé d'intervenir 
sur

des serveurs mutualisés d'autres hébergeurs qui n'ont pas peur de
fournir un accès SSH pour chaque utilisateur et pour les milliers 
de

serveurs mutualisés qu'ils possèdent.

En accédant en ssh sur ces serveurs, je m'était rendu compte que ce
n'était pas un nouveau shell mais bien du super chroot comme énoncé
précédemment

Je vais creuser aussi la dessus.

un grand merci également Jonathan SCHNEIDER pour son coup de pouce 
pour

le contact avec le développeur de lshell. Sincèrement, je suis
persuader que le pb venait de mon install (apt sur Debian et port 
sur

Freebsd). La mise en prod mettra tout cela en lumière.
Pour une telle utilisation il est recommandé en terme de sécurité et 
souplesse pour l'utilisateur (si l'on veux qu'il ait un environnement 
semi ouvert) de mettre en place des conteneurs (LXC ou VServer ou 
OpenVZ) plutôt que du chroot même avancé (sans forcément donner 
l'accès root à l'utilisateur), mais évidemment si vous voulez garder 
une seule IP publique frontale vous devrez avoir un proxy frontal et 
du nat pour les accès SSH (chaque conteneur ayant son propre SSHD, si 
possible lancé sur demande car seule une petite partie des 
utilisateurs utilisent du SSH).
Cette solution est bien évidemment plus lourde à mettre en place et 
peut être contraignante et consommera plus de ressources par compte.


Le point avec LXC est qu'il est possible de "virtualiser" à la carte.
On peut "virtualiser" le filesystem, les PID, les devices, etc, mais
garder le même net namespace. C'est précisément ce que je fais sur
l'un de mes setup où j'ai gardé une stock réseau unique pour tous les
conteneurs. Cela évite un NAT  inutile.
Concrètement cela pourrait se faire pour des restrictions utilisateur
en ayant un seul process sshd, lequel pourrait créer à la volée un
nouveau conteneur pour chaque session ssh ou utilisateur.

Cordialement.
Emmanuel Thierry
___
Liste de diffusion du FRsAG
http://www.frsag.org/


merci pour votre retour. Je vais approfondir ce point.
___
Liste de diffusion du FRsAG
http://www.frsag.org/


Re: [FRsAG] : commandes ssh resteintes

2013-01-12 Par sujet Wallace
Pour ma part je suis assez d'accord avec Florian sur les aberrations que
l'on voit avec un chroot mal fait.

Je me contente d'un kernel récent avec patch grsec, séparation entre le
web Nginx et PHP (communication par socket dédiés par sites),
MySecureShell pour l'accès sftp/scp, combiné à lshell pour limiter les
commandes possibles (éditions emacs/vim, packages, manipulation de base
des fichiers/rep).

Les accès sont donc chrooté virtuellement par MySecureShell qui lance
lshell qui lui aussi ajoute son chroot virtuel.

Les partitions sont montées en autre avec noexec, nosuid, nodev, php a
une liste longue comme le bras pour limiter les fonctions utilisables
(même curl_exec est bloqué).

En amont sur une plate-forme à vocation mutualisée on a des reverses
proxy Nginx avec naxsi (en cours de test sur quelques vhost).

Voilà comment je gère cela.



signature.asc
Description: OpenPGP digital signature
___
Liste de diffusion du FRsAG
http://www.frsag.org/