V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  gleport  ›  全部回复第 1 页 / 共 3 页
回复总数  56
1  2  3  
58 天前
回复了 zhawuwx 创建的主题 求职 出狱求一份开发工作
想起之前 Hacker News 上一个很火的帖子,https://news.ycombinator.com/item?id=44288937 一个叫 Preston Thorpe 的人在服刑期间参与并给 turso 这个开源数据库贡献大量代码,出狱后成为 turso 全职开发者了
@swananan ecapture 这个应用场景更广泛吧,实现起来也要复杂很多。要是仅仅想捕获某个应用的 https 的话,使用 httpseal -q 模式并制定输出文件就可以用了,相对来说使用门槛要低。在应用层做转发还有个优势就是后期想扩展功能做 http 报文覆写会很方便实现。

我用的是 Aloxaf/fzf-tab 这个补全工具。对于 httpseal 本身仓库提供了 zsh 自动补全的脚本,需要安装后才能自动补全。
@wncoic 我没有自己的域名呀,没看明白你说的是什么域名。
可以用 SSH 的反向隧道,需要有一个家里和公司都可以访问的 SSH 服务,我以下面的场景来说明:

场景:主机 A 在一个私有网络,主机 B 和 A 不在一个私有网络。B 想使用 A 的网络来访问一些服务,比如使用 A 的网络来进行 `git push`。
实现:通过一台 A 和 B 都可以访问的主机 C ,并且 C 开启了 SSH 服务,可以实现上面的场景需求。
假设 C 的 ip 地址为 IP-C 。
步骤:

A:

```
./socks5 -p PortA # 任何 SOCKS5 Server 都可以,这里以 https://github.com/jqqjj/socks5 为例
ssh -NR PortC:localhost:PortA root@IP-C
```

B:

```
ssh -NL PortB:localhost:PortC root@IP-C
mgraftcp --socks5="localhost:PortB" git push # 这里即使用了 A 的网络
```

需要稳定服务的话可以使用 autossh 来启动上面的 ssh 连接。
tmux 的色彩和在终端上有差异的原因是:tmux 没有为终端开启 RGB 特性,本来应该是 RGB 24 位颜色的 ANSI 转义序列被 tmux 转换为比较接近的 256 色的转义序列,再输出给终端渲染。可以通过 `tmux -vvv` 启动日志查看 RGBCOLOURS flag 确认。

tmux 也给用户提供了配置来开启 RGB 特性:set -as terminal-features ",根据自己的$TERM 值而定*:RGB"

另外不推荐 export TERM=tmux-256color 这种方式修改 TERM 环境变量,这个值一般是终端模拟器初始化的时候终端自己设置的,许多外部程序会依赖这个值查询出对应的 terminfo ,从而确定终端特性能力以及在不同输入的行为,比如对 <CTRL>_l 这些控制序列的反应。正如 kitty 在这个配置上的警告说的:


#: The value of the TERM environment variable to set. Changing this
#: can break many terminal programs, only change it if you know what
#: you are doing, not because you read some advice on "Stack Overflow"
#: to change it. The TERM variable is used by various programs to get
#: information about the capabilities and behavior of the terminal. If
#: you change it, depending on what programs you run, and how
#: different the terminal you are changing it to is, various things
#: from key-presses, to colors, to various advanced features may not
#: work. Changing this option by reloading the config will only affect
#: newly created windows.

我刚写了一篇 blog 来总结了一下 tmux 在不同终端下颜色差异的原因: https://hmgle.github.io/terminal/tmux/color/2024/05/12/term-color.html
2022-02-15 18:19:27 +08:00
回复了 workwonder 创建的主题 程序员 [viaproxy] 我基于 graftcp 封装了一个命令行代理 helper
忘了 makefile 写法了,请忽略😅
2022-02-15 18:07:33 +08:00
回复了 workwonder 创建的主题 程序员 [viaproxy] 我基于 graftcp 封装了一个命令行代理 helper
很不错!不过发现首层目录缺少 Makefile 导致不能执行 `make -C graftcp`,是否忘提交了?
2021-07-07 21:26:12 +08:00
回复了 gleport 创建的主题 分享创造 一种把指定程序的 TCP 流量重定向到代理的方法
@mjikop1231 和 proxychains 的主要差别是支持 golang 的程序。
2021-02-25 09:06:22 +08:00
回复了 iceorange 创建的主题 程序员 cproxy: 使用简单的 Linux per app 透明代理
回应一下楼主说的 graftcp 每次要起两个程序的问题:graftcp-local 是设计为守护进程方式使用的,"sudo systemctl --now enable graftcp-local.service" 后使用方式和 proxychains 基本一致。
适合用字典树来实现。把这 100 万个词组从 MySQL 读出存进一棵字典树里,不会消耗多大内存。

一百多行左右的核心代码就可以完成了:

```go
package main

import (
"fmt"

"github.com/hmgle/trie-x/go/trie"
)

func main() {
t := trie.New()
t.Insert("yellow wall", 1)
t.Insert("little cat", 1)
t.Insert("brown cat", 1)
t.Insert("yellow dog", 1)
t.Insert("coffee cup", 1)

content := "a little cat is sleeping behind a yellow wall with a yellow dog"
hits := t.ScanContent(content)
for _, hit := range hits {
fmt.Printf("word: %s, offset: %d\n", hit.Word, hit.Offset)
}
}
```

输出:

```
word: little cat, offset: 2
word: yellow wall, offset: 34
word: yellow dog, offset: 53
```
2020-05-06 09:04:42 +08:00
回复了 1and0 创建的主题 Ubuntu ubuntu 有办法让终端走 proxy 吗?
浏览了上面的回复,发现不少人对设置代理这方面存在误解。比如:
设置环境变量 http_proxy=socks5:********。有人提到需要配置 HTTP 协议的而不是 sock5,其实这完全取决于要运行的这个程序认不认,很多软件是支持这种方式的。https://twitter.com/chenshaoju/status/1181780020345233408 这里也提到了。设置环境变量的方法是把选择权完全交给要运行的程序,具有一定局限性。程序读取什么名字的环境变量,怎么转换就是它自己的事情了,有些程序是不支持的。
2020-05-05 14:17:27 +08:00
回复了 1and0 创建的主题 Ubuntu ubuntu 有办法让终端走 proxy 吗?
proxychains 对 Go 编译出来的无效。docker 可以参考 https://github.com/hmgle/graftcp/issues/14
2020-01-16 11:18:35 +08:00
回复了 abu666 创建的主题 问与答 问下大佬们如何通过跳板机连接数据库
之前总结过一些通过跳板机连接 MySQL、Redis 等服务的技巧:
https://hmgle.github.io/wiki/tip/forwarded_tips.html
希望能帮到你。
2019-11-05 18:02:30 +08:00
回复了 qiuyesuifeng 创建的主题 前端开发 让数据库运行在浏览器里? TiDB + WebAssembly 告诉你答案
想问一下楼主编译出来的 TiDB wasm 文件有多大。
我之前刚好也把一个用 Go 写的象棋引擎生成了 wasm 在浏览器运行,动用了 wasm-opt 和 wasm-strip 后,也有 2 MB 多一点,感觉体积还是挺大的。
2019-08-27 13:49:05 +08:00
回复了 namek 创建的主题 问与答 请问 v2 的大佬 我这眼睛是怎么回事啊啊啊
楼主是否有趴着桌子午睡的习惯,眼球可能收到了物理挤压?
2019-01-23 19:23:49 +08:00
回复了 ishiguang 创建的主题 程序员 有办法把 ubuntu18 所有的命令行程序网路走 ss5 代理么?
graftcp
2018-08-06 23:37:56 +08:00
回复了 gleport 创建的主题 奇思妙想 一种实现 HTTPS 抓包的方法
楼上列举的部分工具,它们的原理基本一致,有些是和 Charles 一样都是闭源收费软件,基本都需要代理全局流量来达到效果。而这种方式是仅仅影响到需要分析的程序的。我仅仅是提出一种想法,没有这方面需求的话也就没有必要继续了。
2018-08-06 09:57:15 +08:00
回复了 gleport 创建的主题 分享创造 一种把指定程序的 TCP 流量重定向到代理的方法
@lyztonny tsocks 功能类似,但无法实现重定向静态链接程序的 TCP 流量功能,graftcp 对这点做了改进。
2018-08-05 19:32:37 +08:00
回复了 gleport 创建的主题 分享创造 一种把指定程序的 TCP 流量重定向到代理的方法
2018-08-04 12:10:38 +08:00
回复了 gleport 创建的主题 分享创造 一种把指定程序的 TCP 流量重定向到代理的方法
@qf0129 可以的,graftcp-local 启动后,graftcp ssh user@xxx 就可以了。或者:
graftcp bash
在这个新 Shell 里面 ssh user@xxx
1  2  3  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1371 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 16:56 · PVG 00:56 · LAX 09:56 · JFK 12:56
♥ Do have faith in what you're doing.