Comment implanter ssh dans son serveur ?

Comment implanter ssh dans son serveur ? - C++ - Programmation

Marsh Posté le 30-11-2005 à 16:24:00    

Lorsqu'on se programme un serveur telnet, dabord je fais un listen() ensuite je reçois et envoie des data. Mon programme fait déjà tout cela. Mais bon il parait que ce n'est pas sécurisé.  [:alph-one]  
 
J'ai beau lire sur le ssh, ça ne me dit pas comment implanter ça dans mon prog, tout ce que je trouves c'est des programme serveur qui ont déjà ssh, mais moi je voudrais le mettre dans mon propre programme  [:belokan]  
 
Quelqu'un aurait une idée comment il faut faire  [:autobot]

Reply

Marsh Posté le 30-11-2005 à 16:24:00   

Reply

Marsh Posté le 30-11-2005 à 17:12:05    

google ssh :
http://www.commentcamarche.net/crypto/ssh.php3
dedans on voit :
http://www.ietf.org/html.charters/secsh-charter.html
pour des exemples de sources peut-etre voir :
http://www.openssh.com/


---------------
-( BlackGoddess )-
Reply

Marsh Posté le 30-11-2005 à 17:50:12    

Merci :)

Reply

Marsh Posté le 30-11-2005 à 17:54:34    

Mais si j'ai bien compris le principe, c'est carrément au niveau logiciel ? le client doit en premier lieu envoyer des data, une clé de 128 bits, pour s'identifier, le serveur lui décrypte cette clé et selon des règles il ferme ou accepte la connexion ?

Reply

Marsh Posté le 30-11-2005 à 20:57:59    

J'ai beau lire mais je n'arrives pas à comprendre l'implantation du protocol dans un programmme, il y aurait pas quelque part l'algorithme détaillé étape par étape ? :/

Reply

Marsh Posté le 01-12-2005 à 12:30:11    

tu peux garder ton code actuel et utiliser un tunnel ssh, comme ça t'as rien à coder (mal sans doute)

Reply

Marsh Posté le 01-12-2005 à 13:59:28    

Un tunnel ??? qu'est-ce qu'un tunnel  :??:

Reply

Marsh Posté le 01-12-2005 à 16:27:17    

tu utilises un client ssh, qui travaille avec un serveur ssh. la partie cliente "forward" un port (tcp) vers le serveur.  
par exemple ton telnet dialogue avec le client ssh, qui dialogue avec le serveur ssh (donc cette connexion est sécurisée), et le serveur ssh dialogue avec le serveur telnet.


---------------
-( BlackGoddess )-
Reply

Marsh Posté le 01-12-2005 à 16:27:34    

bah tu fais ton appli qui communique en clair pénard, ensuite tu confies le transport à ssh, sans rien toucher à ton appli.

Reply

Marsh Posté le 01-12-2005 à 22:32:48    

Mais ssh est un programme qui va encrypter les données avant de les envoyer ? et le prog client va demander à ce même prog de désencrypter avant de pouvoir traiter les data ?
 
J'ai de la misère à faire le lien.
 
Si je comprends bien ça fonctionne comme ceci ?:
 
serveur telnet  ----> ssh.exe(data a envoyer_pour encrypter) -------> client telnet  -----> ssh.exe(data recu_pour desencrypter)
 
Mais on dit serveur/client telnet dans le fond c'est un abus de language, car si j'encrypte mes data avec mon propre algo on ne peut appeler ça serveur telnet/client telnet ni ssh non plus .. [:chacal_one333]  
 
quoique ..un serveur reste un serveur en tant que tel, moi dans mon prog je fais un listen() sur le port 23, ce n'est pas le port qui fait qu'on appele ça "telnet" je pourrais bien écouter le port 6487 si je voudrais.. et les data je les envois avec la méthode Send de winsock, tel quel ...donc en fait il y a aucun protocol, seulement tcp/ip ..donc ce n'est pas vrai que c'est un serveur "telnet"
 
Je suis complètement à côté ou si je comprends bien ?  :hello:  
                       

Reply

Marsh Posté le 01-12-2005 à 22:32:48   

Reply

Marsh Posté le 02-12-2005 à 12:38:40    

non.
 
client <-> transport ssh <-> serveur
 
le transport ssh est une connexion ssh initialisée en redirection de port.

Reply

Marsh Posté le 02-12-2005 à 14:04:04    

ah ok c'est une autre connexion à part ?
 
Mais pour mes autres questions ?  [:chacal_one333]

Reply

Marsh Posté le 02-12-2005 à 15:33:45    

tu cryptes rien. Tu fais tes échanges en clair tranquille, comme tu veux, avec le protocole applicatif que tu veux (mais doit rester en TCP). Une fois que ça marche, tu tunnelles.

Reply

Marsh Posté le 02-12-2005 à 17:20:01    

Oui mais je comprends pas  [:alph-one]  
 
Comment ça tunelle  :??:  
 
Ça me prendrait un exemple de code simple en pseudo-code ça serait suffisant ..  [:belokan]
 
 
Mais pour ma question concernant le fait d'appeler ça telnet ou non j'ai raison ou non ? :)

Reply

Marsh Posté le 02-12-2005 à 18:20:16    

re-explication de l'explication :
 
Client --> ssh.exe (cryptage) --> ~~~~~LAN (secure :o)~~~~~ --> ssh.exe(décryptage) --> Serveur  
 
c'est plus clair ?  
 
regarde les exemple de tunneling ssh sur internet tu va vite saisir

Reply

Marsh Posté le 02-12-2005 à 18:54:36    

Ok la c'est clair :)
 
C'est donc bel et bien un programme externe, c'est comme ce que j'avais dessiné plus haut sauf que moi je pensais que les data sécurisé était envoyé au client telnet et ensuite au ssh.exe pour le décrypter, mais c'est plutôt envoyé à ssh.exe donc ça veut dire qu'il y a un autre programme qui sert de serveur client .. de là l'expression de tunnel ...
 
Je vois, je vois ..hmmm...alors pourquoi ont dit que c'est "au dessus" de la couche tcp/ip ?
 

Reply

Marsh Posté le 02-12-2005 à 20:32:16    

on le dit pas.

Reply

Marsh Posté le 02-12-2005 à 20:41:35    

Ok, et bien j'ai souvent lu ça dans des textes, bon c'est pas grave :)

Reply

Marsh Posté le 02-12-2005 à 21:14:34    

et TCP/IP c'est 2 couches déjà.

Reply

Marsh Posté le 02-12-2005 à 21:38:05    

ok
 
mais dites-moi ..mon serveur telnet ne s'occupe pas de la connexion ,après qu'elle ait été établi, je démarre un programme de bbs, qui utilise un driver fossil et c'est ce driver qui comunique avec la socket. C'est donc le driver fossil qui envoie et reçoi les data. Donc je dois faire le tunnel à partir de là ?  [:chacal_one333]


Message édité par NullDragon le 02-12-2005 à 21:38:48
Reply

Marsh Posté le 02-12-2005 à 21:57:18    

tu peux tunneler une fois que ton appli fonctionne.

Reply

Marsh Posté le 02-12-2005 à 22:50:14    

Taz a écrit :

on le dit pas.


 
Vu que TCP c'est la couche transport, que ce soit ssh ou son application, c'est dans la couche applicative du modèle OSI, non ? (par contre son appli n'est pas "au-dessus" de ssh)


Message édité par Elmoricq le 02-12-2005 à 22:51:34
Reply

Marsh Posté le 03-12-2005 à 08:43:39    

OSI ça pue. L'appli et ssh sont au même niveau. C'est une sorte de pipe si tu veux.

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed