主要使用Nginx和vsftpd.
安装方面可以直接从nginx官网上下载,或者...
如果是从官网上下载的则进行如下操作:
安装vsftpd:
对nginx没有做太复杂的配置,仅仅是创建了一个虚拟目录并打开了目录浏览功能.
我想访问http://localhost/apps时实际访问的路径是/home/appmanager/
首先我需要在nginx/html下创建一个apps文件夹,尽管实际访问的不是这个路径。
然后修改nginx/conf/nginx.conf在默认的server里再添加一个location并指定实际路径:
autoindex on便是打开浏览功能。
root则是将apps映射到/home/appmanager/apps/
当然,alias也可以实现我想要的效果,只是用法上和root稍有差异。
接着需要创建用户,就是上面配置文件中的appmanager。
接着指定目录并加入权限
不知是什么原因,我第一次创建的用户的目录总是不生效,虽然多次进行usermod -d也毫无效果....
无论如何现在可以通过Jsch api访问了。
Properties config = new Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
channelSftp = (ChannelSftp) session.openChannel("sftp");
channelSftp.connect();
} catch (JSchException | SftpException | IOException e) {
logger.error(e.getMessage(), e);
} finally {
if (channelSftp != null) {
channelSftp.disconnect();
}
if (session != null)
session.disconnect();
}
}