Моя компания отключила S SH, но разрешает SFTP.
Например, команды «sftp» будут работать, а «s sh» - нет.
Они могут иметь настроил что-то вроде этого в "/ etc / ssh / sshd_config":
Match Group sftp-only
ForceCommand internal-sftp
ChrootDirectory /pub/sftp
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
Есть ли клиент SFTP для Java, который будет работать без необходимости открывать соединение S SH?
Я использую sshj, и типичный шаблон не работает:
import net.schmizz.sshj.*;
...
void connect() {
SSHClient sshClient;
SFTPClient sftpClient;
sshClient = new SSHClient();
sshClient.connect(hostname, port); // Port = 2233
sshClient.authPublickey(username, privatekey);
sftpClient = sshClient.newSFTPClient();
}
Приведенный выше код вызывает исключение в «sshClient.connect ()»:
Exception in thread "main" java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at net.schmizz.sshj.SocketClient.connect(SocketClient.java:126)