begin process at 2012 05 29 21:28:10
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

Réseau & Internet

 > 

Problème : Mini Remote Shell


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème : Mini Remote Shell

jeudi 14 janvier 2010 à 17:22:38 | Problème : Mini Remote Shell

Abderrahmaine





Mini Remote Shell (mrsh) est une application client-serveur permettant d’exécuter des
commandes sur une machine distante. Les commandes sont lancées à partir d’une application
installée sur une machine cliente (mrsh client). Ces commandes doivent être exécutées sur le
serveur (mrsh serveur – mrshd –) installé sur la machine distante. Après l’exécution, Le
résultat est renvoyé au client.

1- Le Mini Remote Shell Demon (mrshd)
Le mrshd est la partie serveur de l’application, elle doit assurer :
a) Le control des droits d’accès
Le démon mrshd possède un fichier de configuration (/etc/mrshd.conf). Ce fichier
spécifie :
- Des adresses IP (Internet Protocol) et des noms des machines clientes
autorisées à se connecter sur le serveur (Authorized_Hosts)
o Exemple :
Authorized_Hosts 10.0.0.1,hoste2 ,192.168.15.0/24
- Le fichier des utilisateurs de mrsh (Users_file)
o Exemple :
Users_file /etc/rmsh_users
Le format du fichier /etc/rmsh_users est le suivant :
Login : mot de passe : répertoire de travail
b) L’exécution des commandes envoyées par les shells clients.
Après la phase Autorisation et Authentification, Le demon mrshd doit être capable
d’exécuter les commandes des clients

2- Le Mini Remote Shell (mrsh)
Le programme mrsh est la partie client de l’application. Cette application permet
de s’authentifier auprès d’un serveur distant en utilisant la commande interne
« open » (Syntaxe : open hoste1|@ip).

On note que l’utilisateur peut s’authentifier sur plusieurs serveurs à la fois. La
commande « lsrhosts » affiche la liste des serveurs auxquels l’application est
connectée.
Après la phase d’authentification, l’utilisateur peut seulement manipuler les
fichiers et les répertoires appartenant à l’arborescence dont l’origine est son répertoire
du travail.
3- Les commandes implémentées :
L’application mrsh doit implémenter les commandes internes suivantes:
- ps
Une commande permettant de lister les processus sous le contrôle du
rmsh courant.
- pshistory
Une commande permettant d’afficher la liste des commandes lancées,
leurs numéros, leurs PID, leurs PPID et les @ip des serveurs associés.
- r_status
Une commande permettant d’obtenir le code de retour de la dernière
commande exécutée.
- execute ( comande)
Une commande permettant de lancer une commande en arrière plan.
- redirection (Entrée std, Sortie std, Sortie std d’erreur,commande)
Une commande permettant de lancer une commande dont les
entrées/sorties sont redirigées.
On note que les entrées/sorties peuvent être :
- Des fichiers locaux désignés par leurs chemins absolus ou
relatifs.
- Des fichiers distants selon le format @host|ip :file ( Le fichier
file sur le serveur host| @ip.
- pipe ( cmd1,cmd2)
Une commande permettant de lancer deux commandes communiquant
par un tube anonyme.
- alias (nom_alias, cmd)
Une commande permettant de créer l’alias « nom_alias » sur la
commande cmd. On note que l’ordre de priorité des commandes : les
commandes internes, les alias puis les commandes externes.
Les commandes externes à implémenter sont les suivantes :
- r_pwd @host
Une commande permettant d’afficher le répertoire courant sur host.
- r_cd @host répertoire
Une commande permettant de changer le répertoire courant sur host.
- r_mkdir @host répertoire
Une commande permettant de créer un répertoire sur host.
- r_touch @host file
Une commande permettant de créer un fichier file sur host.
- r_rmdir @host répertoire
Une commande permettant de supprimer un répertoire sur host.
- r_remove @host file
Une commande permettant de supprimer le fichier file sur host.
- r_cp @host1 : file1 @host2: file2
Une commande permettant de copier le fichier file1 sur host1 dans file2
sur host2
- r_ls [ @host1 : repertoire]
Une commande permettant qui liste le contenu du répertoire courant.
Sans argument, r_ls liste le contenant du répertoire courant.
- r_mv @host1 : file1 @host2: file2
Une commande permettant de déplacer le fichier file1 sur host1 vers
file2 sur host2
- r_find @host : repertoire –name name_file
Une commande permettant de trouver tous les fichiers dont le nom est
name_file sous l’arborescence répertoire sur host.
- r_find @host1 : repertoire –newer @host2:file
Une commande permettant de trouver tous les fichiers sous
l’arborescence répertoire sur host1 plus récent que le fichier file sur
host2.
- r_find @host1 : repertoire – bigger @host2:file
Une commande permettant de trouver tous les fichiers sous
l’arborescence répertoire sur host1 dont la taille est plus grande que le
fichier file sur host2.
- r_cat @host1 :file1 @host2 :file2 …
Une commande permettant d’afficher sur la sortie standard le contenue
du file1 sur host1, file sur host2…
- r_more [ @host1 :file1 @host2 :file2 …]
Une commande permettant d’afficher page par page le contenue de ces
arguments s’ils sont présents : le contenue du file1 sur host1, file sur
host2…. Si les arguments sont omis r_more affiche page par page son
entrée standard.
jeudi 14 janvier 2010 à 20:25:39 | Re : Problème : Mini Remote Shell

CptPingu

Administrateur CodeS-SourceS
Quelle est la question ?
Tu crois vraiment qu'en postant l'énoncé d'un de tes exercices, on va te le faire ?


_____________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
vendredi 15 janvier 2010 à 15:43:26 | Re : Problème : Mini Remote Shell

Abderrahmaine





Non pas du tout c un problème qui m'a interessé et je travaille sur lui pour le moment
vendredi 15 janvier 2010 à 15:44:20 | Re : Problème : Mini Remote Shell

Abderrahmaine





Veux - tu un peu d'aide ?


Cette discussion est classée dans : répertoire, file, commande, host, commandes


Répondre à ce message

Sujets en rapport avec ce message

executer une commande systeme [ par anthraxx ] bonjour,je voulais savoir si quelqu'un connait un moyen d'éxecuter des commandes su systemes d'exploitation sous Windows, et d'en récupérer l'output.I PB avec system [ par enrageur ] Je programme sous Visual C++ 6. Le programme fait une sauvegarde de donnees que je compresse avec arj. Pour cela j'utilise la commande system. Quand j Emplacement [ par nem02004 ] Salut All, je cherche une Commande genre:Commande(c:\\test\tast\tost\File.exe) return File.exe Exécuter les commandes d'un fichier [ par Alongra ] Bonsoir/bonjour tout le monde !J'espère que vous allez bien et que cette nouvelle année à bien commencé pour vous !!Voilà, je dois réaliser un program Lancer plusieurs commandes sur le même processus [ par ZMJUVENTINO ] Salut,Je cherche comment lancer un processus d'invite de commande et y exécuter plusieurs commandes pas nécessairement consécutives et sans utiliser d Envoi commande AT [ par spirou91 ] Hello, Je cherche à faire communiquer mon gsm avec mon ordi. Pour ca, j'envoi des commandes AT à mon gsm. J'ai trouvé la source suivante: http://www. POLA principe en C [ par erkan1404 ] Bonjour, J'effectue un petit programme qui réalise une implémentation du principe POLA pour ce qui concerne les accès à des fichiers. Par défaut, un OpenGL/FreeGlut sous Ubuntu [ par Debutant2010 ] Bonjour, Je suis sous Ubuntu, et je débute totalement avec OpenGL/FreeGlut (je ne sais pas la différence entre OpenGL et FreeGlut [^^confus2]) Services windows [ par mohdaef ] Bonjour J'ai écrit un premier petit service pour Windows afin de comprendre le fonctionnement. J'ai une attente de connexion de socket sur port, lor


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales