## 新建目录 ``` mkdir -p /hook/java mkdir -p /hook/jdk21 ``` ## 上传文件 - JDK解压到 /hook/jdk21 目录下,注意目录结构,确保 /hook/jdk21 目录下包含**/bin**目录 - 将 TShark.java 上传到 /hook/java 目录下 ## 修改 TShark.java 文件中的一行 ##### 找到 **startSharkProcess** 函数 ```java public static Process startSharkProcess() throws IOException { List cmd = List.of( "tshark", "-l", "-i", // 把这一行网卡名称,替换成正确的网卡名称,下面这个是我自己电脑上的网卡名称 "\\Device\\NPF_{807C63AC-179D-4AC8-BD56-85CE8AA179DB}",// 修改后应该是:"ethxxx", "-Y", "tcp.port == 33000 && http.request.method == \"POST\"", "-V" ); ProcessBuilder processBuilder = new ProcessBuilder(cmd); processBuilder.redirectErrorStream(true); return processBuilder.start(); } ``` ##### 查本机IP网卡的命令 ``` ip a ``` ## 创建一个 shell 脚本,用于后台运行 java 脚本 ##### 创建脚本 ``` vi /hook/tshark_bash.sh ``` ##### 复制粘贴下面内容然后保存 ```bash #!/bin/bash export JAVA_HOME=/hook/jdk21 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib java /hook/java/TShark.java ``` ##### 赋予执行权限 ``` sudo chmod +x /hook/tshark_bash.sh ``` ##### 后台运行 ``` sudo nohup bash /hook/tshark_bash.sh >> /hook/tshark_bash.log 2>&1 & echo $! > /hook/tshark_bash.pid ``` #### 停止运行 ``` kill -9 $(cat /hook/tshark_bash.pid) ```