本文整理汇总了Java中org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory类的典型用法代码示例。如果您正苦于以下问题:Java VirtualFileSystemFactory类的具体用法?Java VirtualFileSystemFactory怎么用?Java VirtualFileSystemFactory使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
VirtualFileSystemFactory类属于org.apache.sshd.common.file.virtualfs包,在下文中一共展示了VirtualFileSystemFactory类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setupSftp
import org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory; //导入依赖的package包/类
protected void setupSftp(int port, final String username, final String password, File fileSystemFolder)
throws IOException {
sshd = SshServer.setUpDefaultServer();
sshd.setPort(port);
SftpSubsystem.Factory factory = new SftpSubsystem.Factory();
@SuppressWarnings("unchecked")
List<NamedFactory<Command>> factoryList = Arrays.<NamedFactory<Command>> asList(new NamedFactory[] {factory});
this.sshd.setSubsystemFactories(factoryList);
sshd.setPasswordAuthenticator(new PasswordAuthenticator() {
public boolean authenticate(String tryUsername, String tryPassword, ServerSession session) {
return (username.equals(tryUsername)) && (password.equals(tryPassword));
}
});
sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider());
sshd.start();
VirtualFileSystemFactory vfSysFactory = new VirtualFileSystemFactory();
vfSysFactory.setDefaultHomeDir(fileSystemFolder.getCanonicalPath());
sshd.setFileSystemFactory(vfSysFactory);
LOGGER.info("Embedded SFTP started on port {}", Integer.valueOf(sshd.getPort()));
}
示例2: before
import org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory; //导入依赖的package包/类
@Override
protected void before() throws Throwable {
sshd = SshServer.setUpDefaultServer();
sshd.setPort(findRandomOpenPortOnAllLocalInterfaces());
sshd.setKeyPairProvider(
new ClassLoadableResourceKeyPairProvider(getClass().getClassLoader(), "server_key"));
sshd.setCommandFactory(new ScpCommandFactory());
sshd.setSubsystemFactories(Collections.singletonList(new SftpSubsystemFactory()));
sshd.setUserAuthFactories(Collections.singletonList(new UserAuthPublicKeyFactory()));
sshd.setHost("localhost");
sshd.setPublickeyAuthenticator(AcceptAllPublickeyAuthenticator.INSTANCE);
sshd.setHostBasedAuthenticator(new StaticHostBasedAuthenticator(true));
VirtualFileSystemFactory fileSystemFactory = new VirtualFileSystemFactory();
fileSystemFactory.setDefaultHomeDir(currentFolder.get().toPath());
sshd.setFileSystemFactory(fileSystemFactory);
sshd.start();
}
示例3: setupSftpServer
import org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory; //导入依赖的package包/类
public void setupSftpServer() throws IOException {
sshd = SshServer.setUpDefaultServer();
sshd.setHost("127.0.0.1");
sshd.setPort(4922);
sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider("target/hostkey.ser"));
sshd.setPasswordAuthenticator(new PasswordAuthenticator() {
@Override
public boolean authenticate(String username, String password, ServerSession session) {
return "ftpuser".equals(username) && "topsecret".equals(password);
}
});
List<NamedFactory<UserAuth>> userAuthFactories = new ArrayList<NamedFactory<UserAuth>>();
userAuthFactories.add(new UserAuthPassword.Factory());
sshd.setUserAuthFactories(userAuthFactories);
sshd.setCommandFactory(new ScpCommandFactory());
List<NamedFactory<Command>> namedFactoryList = new ArrayList<NamedFactory<Command>>();
namedFactoryList.add(new SftpSubsystem.Factory());
sshd.setSubsystemFactories(namedFactoryList);
// prepare directory for test files
VirtualFileSystemFactory fileSystemFactory = new VirtualFileSystemFactory(ROOT.getAbsolutePath());
sshd.setFileSystemFactory(fileSystemFactory);
sshd.start();
}
示例4: startSerer
import org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory; //导入依赖的package包/类
@Before
public void startSerer() throws Exception {
server = SshServer.setUpDefaultServer();
server.setPort(PORT_NUMBER);
server.setPasswordAuthenticator((username, password, session) -> true);
server.setKeyPairProvider(new SimpleGeneratorHostKeyProvider());
server.setSubsystemFactories(Collections.singletonList(new SftpSubsystem.Factory()));
final java.nio.file.Path tempDir = Files.createTempDirectory(String.format("%s-", this.getClass().getName()));
final java.nio.file.Path vault = tempDir.resolve("vault");
passphrase = new AlphanumericRandomStringService().random();
cryptoFileSystem = new CryptoFileSystemProvider().newFileSystem(CryptoFileSystemUris.createUri(vault), CryptoFileSystemProperties.cryptoFileSystemProperties().withPassphrase(passphrase).build());
server.setFileSystemFactory(new VirtualFileSystemFactory(cryptoFileSystem.getPathToVault().getParent().toAbsolutePath().toString()));
server.start();
}
示例5: createSshServer
import org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory; //导入依赖的package包/类
private SshServer createSshServer( int port, String homeDir, String hostKeyPath ) {
SshServer server = SshServer.setUpDefaultServer();
server.setHost( "localhost" );
server.setPort( port );
server.setFileSystemFactory( new VirtualFileSystemFactory( homeDir ) );
server.setSubsystemFactories( Collections.<NamedFactory<Command>>singletonList( new SftpSubsystem.Factory() ) );
server.setCommandFactory( new ScpCommandFactory() );
server.setKeyPairProvider( new SimpleGeneratorHostKeyProvider( hostKeyPath ) );
server.setPasswordAuthenticator( this );
return server;
}