-
java web sftp_java实现sftp实例
2021-03-08 03:39:33/** * SFTP公共处理类 〈提供SFTP文件上传,下载,获取指定目录 下文件名集合, 获取指定目录 下文件集合等方法> * * @author mKF75022 * @version iCity Manager V100R002 2012-7-3 * @since iCity Manager V100R002...import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Properties;
import java.util.Vector;
import org.apache.commons.lang.ArrayUtils;
import com.huawei.bme.commons.om.log.DebugLog;
import com.huawei.bme.commons.om.log.LogFactory;
import com.huawei.icity.commons.constants.KeyConstant;
import com.huawei.icity.commons.constants.NumberConstant;
import com.huawei.icity.commons.exception.SPMException;
import com.huawei.icity.commons.log.IcityLogFactory;
import com.huawei.icity.commons.log.IcityRuntimeLog;
import com.huawei.icity.commons.sysconfig.StaticInitData;
import com.huawei.icity.commons.utils.StringTools;
import com.huawei.icity.omp.common.util.CommonTools;
import com.huawei.icity.omp.interfaces.hint.constant.TimetaskConstants;
import com.huawei.mdmc.bfm.cms.assist.common.domain.SingleTableModel;
import com.jcraft.jsch.Channel;
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.ChannelSftp.LsEntry;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.JSchException;
import com.jcraft.jsch.Session;
import com.jcraft.jsch.SftpException;
/**
* SFTP公共处理类 〈提供SFTP文件上传,下载,获取指定目录 下文件名集合, 获取指定目录 下文件集合等方法>
*
* @author mKF75022
* @version iCity Manager V100R002 2012-7-3
* @since iCity Manager V100R002C01
*/
public class SFTPTool
{
/**
* 调测日志记录器。
*/
private static final DebugLog DEBUGGER = LogFactory.getDebugLog(SFTPTool.class);
/**
* 运行日志记录器。
*/
private static final IcityRuntimeLog RUNTIMELOGGER = IcityLogFactory
.getRuntimeLog(SFTPTool.class);
/**
* Sftp客户端对象
*/
private ChannelSftp sftp = null;
/**
* SFTP IP地址
*/
private String ip;
/**
* SFTP 端口
*/
private String port;
/**
* SFTP 用户名
*/
private String userName;
/**
* SFTP 密码
*/
private String password;
/**
* SFTP上传模式:BINARY
*/
// private static final int BINARY_FILE_TYPE = 2;
/**
*
* 获取实例
*
* @return SFTPTool newinstance实例
*
*/
public static SFTPTool getNewInstance()
{
return new SFTPTool();
}
/**
* 初始化连接参数
*
* @param sftpIP
* IP
* @param sftpPort
* 端口
* @param sftpUsername
* 用户名
* @param sftpPassword
* 密码
*/
public void init(String sftpIP, String sftpPort, String sftpUsername, String sftpPassword)
{
// 获取SFTP连接信息
this.ip = sftpIP;
this.port = sftpPort;
this.userName = sftpUsername;
this.password = sftpPassword;
}
-
webterminal:ssh rdp vnc telnet sftp bastionjump Web腻子xshell终端跳转服务器审计实时监视器rzsz堡垒机...
2021-02-05 03:00:42目前,它支持近90%的远程管理协议,例如vnc,ssh,rdp,telnet,sftp ...它支持在用户使用此项目管理服务器时监视和记录用户操作的可能性!您也可以重播用户诸如视频之类的动作。 希望你喜欢它。 下一个版本:待... -
IntelliJ IDEA 使用sftp同步web项目到服务器
2019-08-10 17:03:192、SFTP传输(IntelliJ IDEA已经集成了sftp) 实践 下面让我们写一个HelloWorld程序来实践下。 一、项目结构与代码 1、我的项目目录结构 2、HelloWorld.java源码 package com.yfw; // 导入必需的 java 库 im...前言
现在我们要在Windows系统上写完项目编译后,发布到linux服务端。
1、开发工具IntelliJ IDEA
2、SFTP传输(IntelliJ IDEA已经集成了sftp)实践
下面让我们写一个HelloWorld程序来实践下。
一、项目结构与代码
1、我的项目目录结构
2、HelloWorld.java源码package com.yfw; // 导入必需的 java 库 import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; // 扩展 HttpServlet 类 public class HelloWorld extends HttpServlet { private String message; public void init() throws ServletException { // 执行必需的初始化 message = "Hello World"; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 设置响应内容类型 response.setContentType("text/html"); // 实际的逻辑是在这里 PrintWriter out = response.getWriter(); out.println("<h1>" + message + "</h1>"); } public void destroy() { // 什么也不做 } }
3、index.jsp源码
<%-- Created by IntelliJ IDEA. User: Administrator Date: 2019\8\10 0010 Time: 14:32 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>测试</title> </head> <body> 我是HelloWorld主页 </body> </html>
4、web.xml源码
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <servlet> <servlet-name>HelloWorld</servlet-name> <servlet-class>com.yfw.HelloWorld</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloWorld</servlet-name> <url-pattern>/HelloWorld</url-pattern> </servlet-mapping> </web-app>
二、项目配置
打开项目设置
配置java编译后的class文件输出路径
设置热部署在 Java Web 开发中, 一般更新了 Java 文件后要手动重启 Tomcat 服务器, 才能生效, 有印象没?我是真的遇到过,当时用的编辑器是eclipse,使用的服务器好像是jboss,浪费不少生命啊, 你如上配置的话, 不论是更新 class 类,css文件,html文件,js文件,还是更新 Spring 配置文件都能做到立马生效,大大提高开发效率。热部署省去了重启tomcat的时间。
配置sftp
1、打开Deployment配置
2、配置sftp,并测试连接是否成功。
3、要同步的目录路径设置
下面的配置是:
把本地的C:\Users\Administrator\Desktop\Intellij_Project\out\artifacts\Intellij_Project_war_exploded 目录和服务器的
/opt/tomcat/webapps/sshtest目录同步。
编译并同步到服务器
1、点击锤子图标,编译项目
2、同步编译后的文件到服务器
选择sshtest进行同步
访问你的服务器(可以看到项目已经同步到了服务器):
-
浏览器 sftp_ShellNGN - 基于Web的SSH和SFTP在线客户端
2021-01-28 09:24:20文章来自我的博客:ShellNGN - 基于Web的SSH和SFTP在线客户端blog.ljyngup.comShellNGN,是一个基于Web的SSH和SFTP客户端,您可以使用它来打开终端会话到您的服务器,并将所有设备保存在一个地方,以便您可以连接...文章来自我的博客:
ShellNGN - 基于Web的SSH和SFTP在线客户端blog.ljyngup.comShellNGN,是一个基于Web的SSH和SFTP客户端,您可以使用它来打开终端会话到您的服务器,并将所有设备保存在一个地方,以便您可以连接到任何地方。还可以通过浏览器直接下载并上传文件到您的服务器。
无需Java、Flash等插件、支持保存远程会话、支持密钥登陆。有免费方案,免费方案只支持同时打开1个SSH会话和1个SFTP;最多只支持保存5个会话
第三方在线服务,无需自己搭建,但至于安全性… ShellNGN:https://shellngn.com/
界面:
添加并保存新的设备:
SSH连接:
SFTP连接:
总结:
简单体验了一下,发现挺方便的,界面也挺美观,打算使用。ShellNGN用的是亚马逊的云服务,文件上传速度很好。
免费版本只能连接一个SSH,一个SFTP这个没啥,就是最多只能保存5个远程设备,有点十全九美丽的1点瑕疵吧。
-
sublime3 带语法感应 sftp 美化web代码等插件
2018-03-16 09:57:44工具包括插件Emmet mySnippets prettyjson sublimecodeintell color pick 下载即可使用,不用再配置 -
为web项目搭建sftp服务器
2016-09-23 15:10:24为基于nginx多web项目搭建sftp服务器,可以让公司内部员工自己部署项目到指定目录(其活动也基于此指定目录)一.目标:为基于nginx多web项目搭建sftp服务器,可以让公司内部员工自己部署项目到指定目录(其活动也基于此指定目录)二.条件:1.系统:CentOS 7.x x86_642.ssh 必须大于v4.83.web目录结构/data├── lost+found├── nginx//存放nginx相关配置文件│ └── vhosts│ └── default.conf├── sftp //存放sftp相关配置文件│ └── web_sftp.conf└── web //存放web项目└── x1.ttp2016.com├── Code│ └── index.php└── info
三.需求分析:1、线上服务器对安全要求高些,sftp比ftp更安全2、线上服务器需要对用户需要控制,只能让用户在自己的home目录下活动3、用户只能使用sftp,不能ssh到机器进行操作过程:1.查看ssh的版本,需大于4.8版本<span style="white-space:pre"> </span># ssh -V
2.创建sftp组,利于添加多用户<span style="line-height: 22.4px;"><span style="white-space: pre;"> </span># groupadd sftp</span>
3.创建第一个sftp用户ttp2016<span style="white-space:pre"> </span># useradd -g sftp -s /bin/false ttp2016 <span style="white-space:pre"> </span># passwd ttp2016<span style="white-space:pre"> </span>//密码为ttp2010
<span style="white-space:pre"> </span># mkdir -p /data/web/x1.ttp2016.com <span style="white-space:pre"> </span># usermod -d /data/web/x1.ttp2016.com ttp2016
5.配置sshd_config<span style="white-space:pre"> </span># vi /etc/ssh/sshd_config <span style="white-space:pre"> </span>//找到这行并注释掉 <span style="white-space:pre"> </span>Subsystemsftpinternal-sftp
//添加如下一行<span style="white-space:pre"> </span>include /data/sftp/web_sftp.conf
//编辑web_sftp.conf文件<span style="white-space:pre"> </span># vi /data/sftp/web_sftp.conf
//添加如下//基于用户组sftp的控制<span style="white-space:pre"> </span>Subsystem sftp internal-sftp <span style="white-space:pre"> </span>Match Group sftp <span style="white-space:pre"> </span>ChrootDirectory /data/web <span style="white-space:pre"> </span>ForceCommand internal-sftp <span style="white-space:pre"> </span>AllowTcpForwarding no <span style="white-space:pre"> </span>X11Forwarding no
//基于用户ttp2016的控制<span style="white-space:pre"> </span>Subsystem sftp internal-sftp <span style="white-space:pre"> </span>Match User ttp2016 <span style="white-space:pre"> </span>ChrootDirectory /data/web/x2.ttp2016.com或/data/web/%u <span style="white-space:pre"> </span>ForceCommand internal-sftp <span style="white-space:pre"> </span>AllowTcpForwarding no <span style="white-space:pre"> </span>X11Forwarding no
具体意思Subsystem sftp internal-sftp这行指定使用sftp服务使用系统自带的internal-sftpMatch Group sftp这行用来匹配sftp组的用户,如果要匹配多个组,多个组之间用逗号分割匹配用户Match User mysftp这样就可以匹配用户了,多个用户名之间也是用逗号分割,但我们这里按组匹配更灵活和方便ChrootDirectory /data/web/%u用chroot将用户的根目录指定到/data/web/%u,%u代表用户名,这样用户就只能在/data/web/%u下活动ForceCommand internal-sftp指定sftp命令AllowTcpForwarding noX11Forwarding no这两行,如果不希望该用户能使用端口转发的话就加上,否则删掉6.设定Chroot目录访问权限<span style="white-space:pre"> </span># chown root:sftp -R -v /data/web/x1.ttp2016.com <span style="white-space:pre"> </span># chmod 755 -R -v /data/web/x1.ttp2016.com
目录的权限设定有两个要点:1、由ChrootDirectory指定的目录开始一直往上到系统根目录为止的目录拥有者都只能是root2、由ChrootDirectory指定的目录开始一直往上到系统根目录为止都不可以具有群组写入权限所以遵循以上两个原则1)我们将/data/web/x1.ttp2016.com的所有者设置为了root,所有组设置为sftp2)我们将/data/web/x1.ttp2016.com的权限设置为755,所有者root有写入权限,而所有组sftp无写入权限7.建立sftp用户登录后可写入的目录照上面设置后,在重启sshd服务后,用户mysftp已经可以登录,但使用chroot指定根目录后,根应该是无法写入的,所以要新建一个目录供mysftp上传文件。这个目录所有者为mysftp,所有组为sftp,所有者有写入权限,而所有组无写入权限<span style="white-space:pre"> </span># mkdir /data/web/x1.ttp2016.com/Code # chown ttp2016:sftp -R -v /data/web/x1.ttp2016.com/Code # chmod 755 -R -v /data/web/x1.ttp2016.com/Code
8.重启sshd服务<span style="white-space:pre"> </span># service sshd restart
9.关闭SELINUX<span style="white-space:pre"> </span># vi /etc/selinux/config //修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启。或者 # setenforce 0
至此,ttp2016用户将只能在x2.ttp2016.com里面活动,并且只能操作Code文件夹 -
sftp 上传文件空_ShellNGN - 基于Web的SSH和SFTP在线客户端
2020-12-18 19:08:05文章来自我的博客:ShellNGN - 基于Web的SSH和SFTP在线客户端blog.ljyngup.comShellNGN,是一个基于Web的SSH和SFTP客户端,您可以使用它来打开终端会话到您的服务器,并将所有设备保存在一个地方,以便您可以连接... -
【web】【sftp】python sftp文件发送指定IP主机(文件服务器)
2020-05-16 14:56:19使用SFTP上传与下载文件 方法一 import paramiko transport = paramiko.Transport(("106.15.88.182", 22)) # 获取Transport实例 transport.connect(username="root", password="123456") # 建立连接 # 创建sftp... -
java web项目用sftp上传文件_Java使用SFTP上传文件到服务器的简单使用
2021-03-18 09:24:59Java使用SFTP上传文件到服务器的简单使用发布于 2020-8-18|复制链接摘记: 最近用到SFTP上传文件查找了一些资料后自己做了一点总结,方便以后的查询。具体代码如下所示:```java/*** 将文件上传到服务器** @param ... -
支持 web sftp的Jumpserver 1.4.2 发布
2018-10-24 09:06:00Jumpserver 1.4.2 已发布,新增 web sftp 支持。 Jumpserver 是全球首款完全开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 的专业运维审计系统。 Jumpserver使用 Python / Django 进行开发,遵循 Web ... -
java web 实现Sftp文件上传下载
2019-10-08 10:12:26public static Properties properties = LoadProperties.getProperties("/config/sftp.properties"); private static Channel channel; private static Session sshSession; /** * 登陆SFTP服务器 ... -
java web sftp_Java使用SFTP和FTP两种连接方式实现对服务器的上传下载 【转】
2021-03-08 03:39:29原文:https://www.cnblogs.com/libin6505/p/10583438.html一、Java实现对SFTP服务器的文件的上传下载1、添加maven依赖:com.jcraftjsch0.1.542、SFTPUtil工具类:import java.io.ByteArrayInputStream;import java.... -
git 应用程序本身更新_如何使用Git通过SFTP正确部署Web应用程序
2020-08-30 21:19:18//Remote server's ip address or hostname $sftp = new SFTP('192.168.0.1'); if (!$sftp->login('username', $key)) { exit('Login Failed'); } 受密码保护的RSA密钥 (Password Protected RSA Key) If your RSA ... -
Web服务安全(PGP、S/MIME、Secure Shell、SFTP)
2020-01-02 17:18:006.1 PGP PGP是美国菲利普·齐默曼(Philip R. Zimmermann)提出来的。他创造性地把RSA公钥体系的方便和传统加密体系的高速度结合起来,并且在数字签名和密钥认证管理机制上进行巧妙的设计,从而使PGP成为...6.4 SFTP -
sftp服务
2020-01-20 17:34:18sftp服务器存储文件 import com.jcraft.jsch.*; import com.xydtech.creditapi.util.Config; import org.apache.commons.io.FileUtils; import org.apache.logging.log4j.Logger; import org.springframework.web.... -
sftp服务器搭建_从购买云服务器到整个web应用部署过程
2020-11-28 02:48:22目前,阿里云是国内...在这里我把从阿里云购买服务器到应用部署整个心得记录下来,供大家参考学习, 按照以下几个步骤讲解:申请阿里云服务器搭建Web应用环境部署Web工程域名解析1、申请阿里云服务器(1)PC访问阿里云... -
SFTP and FTP
2020-11-23 04:33:17t get the online version (editor.silex.me or preprod.silex.me) to connect to my web server using either SFTP or FTP. From the server log it seems to be sending a blank string - not a . <p>I get <code>... -
FTP/SFTP不使用WEBPORTAL模式直接登录测试---麒麟开源堡垒机技术篇心得之一
2016-04-05 18:52:00我测试的商业堡垒机,基本上如果使用FTP/SFTP必须从WEBPORTAL登录,这种方式说实话对于我这个技术老鸟老说感觉太麻烦了,无论怎么样,我还是喜欢直接启动运维工具,一步直接登录。今天使用了的堡垒机有这个功能,我... -
vscode配置sftp
2018-08-31 16:44:36安装sftp扩展,在命令行输入sftp会有.vscode下建立sftp.json配置如下: ...web.test.com", "port": 22, "username": "guojianbing", "password": "8888 -
sftp配置
2016-10-19 17:41:001. 开通telnet [root@cts-web1 xinetd.d]# rpm -qa |grep telnettelnet-0.17-41.el5telnet-server-0.17-41.el5 yum install telnet-server[root@cts-web1 ~]# vi /etc/xinetd.d/telnet # default: on# descripti... -
sftp 初步了解
2018-07-10 17:59:16参考: https://baike.baidu.com/item/sftp参考:https://www.jianshu.com/p/64d571913185 要谈sftp(SSH File Transfer Protocol),首先要谈ftp(File Transfer Protocol),大家都...刚开始学web开发的时候,接... -
ftp/sftp不使用webportal直接登录到目标系统设置文档-麒麟开源堡垒机技术文档之一...
2016-04-04 16:52:38我测试的商业堡垒机,基本上如果使用FTP/SFTP必须从WEBPORTAL登录,这种方式说实话对于我这个技术老鸟老说感觉太麻烦了,无论怎么样,我还是喜欢直接启动运维工具,一步直接登录。今天使用了的堡垒机有这个功能,我... -
Confirg SFTP error
2020-12-27 01:58:37when i try to config sftp for saas backup it show error Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/odoo/http.py", line 638, in <em>handle_exception return ... -
centos7搭建sftp
2020-02-02 22:54:00groupadd sftp useradd -g sftp -M -s /sbin/nologin mysftpuser passwd mysftpuser #指定修改用户登入时的目录为/data/webroot usermod -d /data/webroot/ mysftpuser vi /etc/ssh/sshd_config #将下面这行... -
Corrupted data on SFTP
2020-12-01 11:37:35Upload a file using web browser check the hash of the uploaded file Delete the file Upload the same file using SFTP and check the hash <p><strong>Expected behavior The hash of the SFTP uploaded file ... -
SFTP Port not applied
2020-12-05 22:34:34I update today to the latest version of Azuracast wich include SFTP server, put port on azuracast.env and here my docker-compose and env file: <pre><code> AZURACAST_SFTP_PORT=2222 </code></pre> ... -
SFTP initial upload problem
2021-01-07 16:40:36ve made local publii project, and I try to upload it to my web-server via SFTP (with key). At webserver, website directory is empty. User, which I will use to connect via SFTP, have all needed ...