Nous sommes le Dim 20 Juil, 2025 13:59
Supprimer les cookies

Page 2 sur 3Précédent 1, 2, 3 Suivantgérer l'accès à un navigateur internet sur Ubuntu

Pour une tâche précise, pour remplacer un logiciel propriétaire donné...

Jeu 26 Avr, 2007 23:37

Un logiciel, ca peut être un ligne de commande. Ce que je veux dire, c'est qu'il y a peut-être autre chose auquel il faut penser que "juste" le cron : je répète le cahier des charges : permettre d'utiliser le mail à toute heure, et le surf sur certains crénaux horaires.

Et l'histoire d'avoir une heure de surf, répartie comme on le sent, on peut le faire ? Vous avez des idées ?

Bref, je ne fais pas de débat ligne de commande / interface graphique.
Mais je pense qu'on peut estimer que tout un tas de fonctions de gestion de l'accès internet peuvent avoir été pensées, et peuvent faire l'objet d'un programme.
Dernière édition par environ314 le Ven 27 Avr, 2007 00:16, édité 2 fois au total.
environ314

Messages : 17

Ven 27 Avr, 2007 00:14

Je dirais bien un truc... Mais ça va peut-être te demander de te documenter un peu (iptables est assez rigolo à utiliser).
Un cron couplé avec iptables (que tu paramètres via cron, donc) devrait pouvoir faire ce que tu veux faire, en restreignant les ports que tu veux.
Enfin, il y a peut-être plus simple.
Par contre, pour utiliser internet pendant 2 heures, tu dois avoir plusieurs solutions : Peut-être que cron peut le faire. Sinon, un script au démarrage pour te le faire. Après, tu peux varier les plaisirs, mais à mon avis, entre iptables, cron et quelques scripts maisons, tu as tout ce qu'il te faut.

Après, moi, ce que je trouve puissant, c'est la faculté de jongler entre les diverses commandes. Là, tu as tous les logiciels de bases inclus (cron et iptables, faut pas déconner, ça se trouve dans n'importe quel distribs GNU/Linux). Tu as juste à faire les ponts.
rehtnaP

Messages : 97

Ven 27 Avr, 2007 00:16

Par ailleurs, qu'en est-il si on éteint l'ordinateur juste avant l'horaire où se met en place l'interdiction, et qu'on le ralume après ? L'interdiction ne se fait plus alors, si j'ai bien compris.
environ314

Messages : 17

Ven 27 Avr, 2007 01:00

environ314 a écrit:Par ailleurs, qu'en est-il si on éteint l'ordinateur juste avant l'horaire où se met en place l'interdiction, et qu'on le ralume après ? L'interdiction ne se fait plus alors, si j'ai bien compris.

En fait, tu as plusieurs gestionnaires cron : dcron, anacron + vixiecron, et fcron (les 3 sont des démons "cron", avec des fonctionnalités différentes).
dcron n'exécute pas les tâches après que le PC soit rallumé.
anacron + vixiecron offre une solution intermédiaire. Soit on utilise vixiecron, avec les fichiers crontab qui a le même comportement que dcron, soit on utilise la commande anacron, qui est une sorte de surcouche de vixiecron, et qui permet de faire d'exécuter des tâches après redémarrage, même si elles ont été réalisées pendant que le PC était éteint. L'inconvénient étant que c'est trop peu précis comme commande, et donc totalement inadapté. De plus, anacron a un usage différent de cron, des fichiers de configuration différents...
fcron est selon moi, pour toi la meilleure solution. Les commandes sont exécutées même si le PC était éteint, ce après le démarrage, tout en gardant la précision.

Tu as en fait 2 solutions.
La première, c'est de voir si fcron est dispo pour ta distribution (ce qui est le plus simple).

Après, une autre solution qui peut être plus avantageuse est la suivante :
Garder un dcron/vixiecron (donc le démarrage n'exécute pas les commandes), et mettre en place un script au démarrage qui vérifie l'heure, et en fonction reparamètre iptables (ou une autre solution qui permet de limiter l'accès à internet).
Pourquoi plus avantageux ?
D'une, parce que, je me dis que si tu as des mois et des mois de retard, fcron pourrait exécuter des mois et des mois de commandes en "retard". Interdire l'accès, autoriser l'accès, interdire l'accès, autoriser l'accès... Ça serait contre-productif. (C'est une supposition, peut-être que fcron gère ça de manière plus intelligente)
De deux, parce que ça permettrait d'implémenter la gestion des horaires.
rehtnaP

Messages : 97

Ven 27 Avr, 2007 09:53

- je n'ai pas oublié le cahier des charges, j'ai parlé du "cron" pour aider, après on l'utilise si on veut, et surtout avec les scripts qu'on veut (c'est ça l'important en fait). S'il y a une meilleure solution faut pas se gêner, m'enfin c'est difficile de trouver plus simple que cron, pas la peine d'essayer de lui trouver des défauts pour le principe.

- ce que je dis sur le "clic-clic" c'est de manière générale, pas spécialement pour ce cas. Je n'ai rien contre la souris, et dans bien des cas elle est indispensable (voire même trop limitée). Je dis simplement que penser "souris = plus simple" est archi-faux, et j'ajoute qu'une des choses les plus débiles en informatique est la recherche de la "convivialité" en tant que fin en soi. Le comble étant d'assimiler "souris" et "convivialité".

- enfin, si j'insiste toujours lourdement sur ces idées, c'est qu'à mon avis l'approche objective et curieuse qui pousse à réfléchir un peu, se donner un peu de peine pour faire quelque chose proprement, c'est complètement dans la philosophie du logiciel libre et dans l'utilisation d'un système aussi adaptable que GNU/Linux. Je ne manque aucune occasion pour montrer du doigt les comportements "consommateurs" (une vraie plaie pour la communauté libre), et pour applaudir les démarches volontaristes et intelligentes. Prendre la peine de regarder cron plutôt que d'essayer de l'artillerie lourde est en plein dans cette optique : se coucher un peu plus intelligent, délester son ordi d'applications inutiles, être plus efficace sur son PC, etc. Tout ça pour l'avoir enfin, la convivialité : un ordi qui enfin ne nécessite pas d'être 24H/24 dessus...

Bon j'arrête, le topic est déjà trollé jusqu'à la garde, désolé... :(
irimi

Messages : 503

Ven 27 Avr, 2007 09:56

Sur Ubuntu,

on a Anacron fonctionnel de base, et utilisé déjà par le système,
le paquet de fcron est incompatible avec anacron,

dcron et vixiecron sont absents.

J'ai à présent besoin de savoir où et comment placer un fichier qui s'exécute au lancement d'une session utilisateur lambda.

Je vais dans un premier temps limiter l'emploi du réseau, ca semble plus simple que de tout gérer avec iptables [à moins qu'il "suffise" de bloquer le port 80.. ?], qui, je suppose, varie selon l'ordinateur considéré. J'ai malgré tout besoin de vous...

Il faut, je pense, créer un groupe InternetReduit , y mettre les comptes des personnes concernées. Bon, je vais lire les docs. Vos conseils me sont précieux. Merci !
environ314

Messages : 17

Ven 27 Avr, 2007 12:56

Alors, comment dire.
Anacron fonctionnel de base : ok.
fcron incompatible avec anacron : C'est pas trop un problème. "Fcron fait à la fois le travail de Vixie Cron et Anacron, mais il en fait plus, et le fait mieux".

dcron et vixiecron absents : C'est impossible, pour résumer comment ça marche :
Bon, le noyau démarre, appelle init V, qui exécute les scripts dans /etc/rc2.d/ (ou un autre). Il va, entre autre, appelé le démon crond. En fait, ce "crond" peut être soit dcron, soit fcron, soit Vixie Cron, lesquels sont à peu près transparents au final : ils n'ont pas de commandes dédiées -mis à part crontab qui permet d'éditer la configuration- (Même si fcron fait exception à la règle).

Pour lancer un scripts au commencement d'une session utilisateur :
En fait, là, tu as plusieurs solutions. Une qui est barbare d'ajouter le script que tu veux à /etc/bashrc. Barbare parce que le script est exécuté à chaque fois que le shell est lancé. Mais bon, au moins, les utilisateurs ne pourront pas le tripatouiller.
L'autre, c'est de rajouter le script à /etc/X11/gdm/Xsession, qui si j'ai bien compris est utilisé quand gdm connecte un utilisateur.

Après, limiter l'emploi du réseau, c'est ce que je proposais avec iptables. Il faut effectivement bloquer les ports 80, 8080 (Sait-on jamais), et 443 (HTTPS). Même si on peut passer au travers avec un proxy sur un autre port, c'est quand même déjà très efficace.
rehtnaP

Messages : 97

Ven 27 Avr, 2007 13:06

Bonjour,

Avec iptables, ce n'est pas si compliqué que cela
Pour bloquer : iptables -A OUTPUT -p tcp --dport 80 -j DROP
pour débloquer : iptables -F

Il ne reste plus qu'a mettre ceci dans un script ( qui peut agir à la manière d'un interrupteur ) :
si bloqué, alors
debloquer
sinon
bloquer
fin

Ensuite, un script au démarrage de la machine qui se charge du vérouillage ( ou pas ) après avoir vérifier l'heure ( qui pourrait très bien etre situé dans un fichier de conf ).

Et enfin un script qui sera lancé par cron au moment désiré et qui agira sur l'interrupteur.

La ou cela peut se corser, c'est si la machine a déja des règles iptables, il ne faudra pas utiliser iptables -F pour débloquer mais etre beaucoup plus fin, c'est a dire n'enlever que la règle en question.

Voila, bon courage
Damien
damien

Messages : 208

Ven 27 Avr, 2007 13:11

rehtnaP a écrit:Alors, comment dire.
Anacron fonctionnel de base : ok.
fcron incompatible avec anacron : C'est pas trop un problème. "Fcron fait à la fois le travail de Vixie Cron et Anacron, mais il en fait plus, et le fait mieux".

En clair : lorsque je veux installer fcron, et qu'on m'impose de désinstaller Anacron pour cela, ca n'est pas grave ? fcron fera tout ?
Je précise que la description du paquet Anacron dit :
Code: Tout sélectionner
This package is pre-configured to execute the daily jobs of the Debian
system. You should install this program if your system isn't powered on
24 hours a day to make sure the maintenance jobs of other Debian packages
are executed each day.

rehtnaP a écrit: dcron et vixiecron absents : C'est impossible, pour résumer comment ça marche :
Bon, le noyau démarre, appelle init V, qui exécute les scripts dans /etc/rc2.d/ (ou un autre). Il va, entre autre, appelé le démon crond. En fait, ce "crond" peut être soit dcron, soit fcron, soit Vixie Cron, lesquels sont à peu près transparents au final : ils n'ont pas de commandes dédiées -mis à part crontab qui permet d'éditer la configuration- (Même si fcron fait exception à la règle).

je voulais dire que man dcron ou man vixiecron ne donne rien, et que une recherche de ces mots dans les descriptifs de paquets ne donne rien.

rehtnaP a écrit:Pour lancer un scripts au commencement d'une session utilisateur :
En fait, là, tu as plusieurs solutions. Une qui est barbare d'ajouter le script que tu veux à /etc/bashrc. Barbare parce que le script est exécuté à chaque fois que le shell est lancé. Mais bon, au moins, les utilisateurs ne pourront pas le tripatouiller.
L'autre, c'est de rajouter le script à /etc/X11/gdm/Xsession, qui si j'ai bien compris est utilisé quand gdm connecte un utilisateur.

Après, limiter l'emploi du réseau, c'est ce que je proposais avec iptables. Il faut effectivement bloquer les ports 80, 8080 (Sait-on jamais), et 443 (HTTPS). Même si on peut passer au travers avec un proxy sur un autre port, c'est quand même déjà très efficace.

je vais me renseigner. Merci pour ces pistes.
environ314

Messages : 17

Ven 27 Avr, 2007 13:16

damien a écrit:Bonjour,

Avec iptables, ce n'est pas si compliqué que cela
Pour bloquer : iptables -A OUTPUT -p tcp --dport 80 -j DROP
pour débloquer : iptables -F

Il ne reste plus qu'a mettre ceci dans un script ( qui peut agir à la manière d'un interrupteur ) :
si bloqué, alors
debloquer
sinon
bloquer
fin

Ensuite, un script au démarrage de la machine qui se charge du vérouillage ( ou pas ) après avoir vérifier l'heure ( qui pourrait très bien etre situé dans un fichier de conf ).

Et enfin un script qui sera lancé par cron au moment désiré et qui agira sur l'interrupteur.

La ou cela peut se corser, c'est si la machine a déja des règles iptables, il ne faudra pas utiliser iptables -F pour débloquer mais etre beaucoup plus fin, c'est a dire n'enlever que la règle en question.

Voila, bon courage
Damien


c'est bien, grâce à vous j'apprends plein de choses :)

Si on veut que le script soit facilement utilisable par d'autres, on ne peut a priori pas supposer que iptables est vide. On ne peut pas lui dire d'enlever juste une ligne ?
La méthode semble aussi ne pas différencier les utilisateurs... iptables peut-il être paramétré différemment suivant les utilisateurs ?

A ce niveau, l'idée de bloquer les droits d'exécution/lecture pour un groupe me paraissait plus simple. Mais de quels programmes ?!
environ314

Messages : 17

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit