是否可以通过java与服务器建立ssh连接?SSH连接Java
7
A
回答
4
是的,我在一个Java应用程序中使用http://sourceforge.net/projects/sshtools/来通过SSH连接到UNIX服务器,它工作得很好。
+0
好的,我会试试:) thx – Benni 2010-07-21 19:47:19
3
1
为了连接到Java服务器,你需要一个SSHD的实现(SSH客户端是不够的)。您可以尝试阿帕奇SSHD,
由于sshd的是已经在大多数系统上运行的,更简单的方法是通过SSH隧道来连接到服务器。
2
是的,这是可能的。你可以试试下面的代码:
package mypackage;
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import java.io.*;
public class SSHReadFile
{
public static void main(String args[])
{
String user = "user";
String password = "password";
String host = "yourhostname";
int port=22;
String remoteFile="/home/john/test.txt";
try
{
JSch jsch = new JSch();
Session session = jsch.getSession(user, host, port);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
System.out.println("Establishing Connection...");
session.connect();
System.out.println("Connection established.");
System.out.println("Crating SFTP Channel.");
ChannelSftp sftpChannel = (ChannelSftp) session.openChannel("sftp");
sftpChannel.connect();
System.out.println("SFTP Channel created.");
}
catch(Exception e){System.err.print(e);}
}
}
+0
完美。为我工作。 – 2014-07-30 06:39:23
相关问题
- 1. Java和SSH:保持连接
- 2. 与Java的SSH连接
- 3. ssh连接上连接
- 4. Haskell SSH连接
- 5. SSH连接`authorized_keys`
- 6. C#SSH连接
- 7. 使用Java中的JTA连接到SSH
- 8. 无法使用Java配置ssh连接
- 9. SSH连接超时
- 10. ssh连接超时
- 11. SSH反向连接
- 12. SSH连接重载
- 13. CentOS 7 ssh连接
- 14. Perl ssh连接并执行telnet连接
- 15. SSH连接无法断开连接
- 16. Net :: SSH :: Perl中的SSH连接超时
- 17. 设置SSH连接超时
- 18. ansible SSH连接失败
- 19. Net :: SSH无法连接
- 20. aws ssh连接被拒绝
- 21. 流浪SSH连接失败
- 22. SSH Windows 7的连接refuser
- 23. Bash脚本 - SSH连接
- 24. ansible ssh连接错误
- 25. Ansible playbook测试SSH连接
- 26. GIT SSH连接问题
- 27. ssh连接站“DEBUG1:SSH2_MSG_KEXINIT派”
- 28. AWS EC2 - 连接超时 - SSH
- 29. 原始ssh连接(低级)
- 30. BitBucket SSH连接问题
检查[http://stackoverflow.com/questions/3071760/ssh-connection-with-java/9019095#9019095] – World 2012-03-08 09:00:56
FWIW,我在那些刚刚看了一下如下所列,并且sshtools仅在GPL许可下可用。 (jsch在BSD下可用,sshJ在Apache下可用。) – Mickalot 2013-05-20 14:46:17