L'envoi de commandes au serveur distant via ssh par Java avec JSch
Je suis en train de définir une classe pour que je puisse faire un ssh sur un serveur distant (j'ai l'adresse IP, le nom d'utilisateur et mot de passe) et ensuite envoyer la commande "echo "test" puis récupérer la sortie (par exemple, "test"). Je suis en utilisant JSch de le faire, mais je ne comprends pas comment le faire.
import com.jcraft.jsch.*;
public class ConnectSSH {
public int execute (String command) {
JSch jsch = new JSch();
String ip = "00.00.00.00;
String user = "root";
String pass = "password";
int port = 22;
try {
Session session = jsch.getSession(user, ip, port);
session.setPassword(pass);
session.connect();
...
Je ne sais pas quoi faire, je suis bloqué après la connexion.
Tout conseil est le bienvenu.
OriginalL'auteur snario | 2013-05-09
Vous devez vous connecter pour publier un commentaire.
Essayez ceci:
Eu ma réponse ici: stackoverflow.com/questions/5831594/..., merci
OriginalL'auteur Sainse
shamnu la réponse ci-dessus a droit. Je n'arrivais pas à ajouter un commentaire à elle, afin que voici quelques exemples pour enrichir sa réponse. L'un c'est comment faire une exécution à distance de 'ls-l', un autre 'mkdir', et l'autre d'un local à distance copie. Tout se fait avec la version 0.1.51 de jsch (http://www.jcraft.com/jsch/).
OriginalL'auteur gageorge
Je suggère de regarder le caché exemple sur le JCraft site web: http://www.jcraft.com/jsch/examples/UserAuthKI.java
Leur exemple demande le nom d'utilisateur, nom d'hôte, le mot de passe, de sorte qu'il est prêt à faire l'essai de la boîte. J'ai couru sur mon réseau et a été en mesure de se connecter à un serveur AIX, sans modification du code.
Note, leur exemple a un problème (ce qui est peut-être pourquoi il est caché).. il n'est pas toujours proche du canal. Si vous envoyez la sortie de " le serveur se déconnecte, mais l'objet canal reste ouvert et votre programme Java se ferme jamais. J'ai fourni un correctif pour que ici: Sans fin de la lecture de la réponse du serveur à l'aide de jSch
OriginalL'auteur Damienknight
c'est à partir de Ici
OriginalL'auteur user5974091