V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  jinliming2  ›  全部回复第 16 页 / 共 58 页
回复总数  1145
1 ... 12  13  14  15  16  17  18  19  20  21 ... 58  
2022-02-28 00:25:03 +08:00
回复了 xi_lin 创建的主题 Google google 搜索结果有啥好办法 exclude 特写语种吗?
这个有试过吗:首页右下角 settings -> search settings 里 search results 指定区域、languages 里指定语言。
2022-02-27 09:54:32 +08:00
回复了 thisismr2 创建的主题 Android android 可以像 ios keychain 那样追踪用户吗
@nicevar API 30 Android 11 ,记得 Google 不是搞了个事情么,转载一条 tg 消息:

Magisk 的代码贡献者南宫雪珊说:
从 Android11 开始,应用能「不需要」存储权限,向 Download 、Documents 等标准文件夹内新增文件或文件夹,传统的 File API 就行。并且,可以读取存储空间全部文件夹名字。仅名字,即目录结构,文件看不到。(但自己添加的文件在卸载前能一直看见并修改)
再次重复:以上这些读写行为,都不需要授予存储权限,只需要 Android 11+。
目前正在利用这一行为(注意这不是漏洞,是 Android11 的行为变化)的 app 有哔哩哔哩,它在 Documents 文件夹内存放了用户 ID 文件,可能用于持久跟踪。
鉴于卸载重装后,之前新增的文件不再对它可见,所以哔哩哔哩还采用了文件夹名字来存放用户 ID 。

关于 Android 11 分区存储「开倒车」的实例:即便不给淘宝任何权限,淘宝启动后也会立即在 /Pictures 目录下建立一大堆以 .gs 为标识的文件夹,里面存放着各种阿里系应用包名命名的文件夹和伪装成图片文件的不知道什么屎。
2022-02-26 16:12:16 +08:00
回复了 sunny1688 创建的主题 程序员 TLS 是如何确定这个数据包是一个完整的包
你原始的 TCP 直接传裸数据时,自己可以定义包头+包体的结构。
但是中间加了一层 TLS 之后,你自己定义的结构对于 TLS 来说都没有意义了,都看作一堆无意义的二进制流。
然后 TLS 会自己对这一堆二进制数据流进行包装,包装成一个一个的 Application Data 帧,每个 Application Data 帧里可能包含了一个你的自定义包头+包体结构,也可能包含了两个,也可能包含了半个,具体包含多少是 TLS 层面决定的(单个帧最大 16K ,通常根据实际情况动态调整。单帧大了,可能会受 MTU 、MSS 限制而在 TCP 层面再拆分;单帧小了,则会浪费帧头的传输)。
Application Data 帧的结构与你的包头+包体结构类似:1 字节的帧类型( 0x17 Application Data ),2 字节的 TLS 协议版本号,2 字节的数据长度,然后后面跟加密初始化向量和加密后的帧数据。(注:这里的数据长度是指后面初始化向量和**加密后**的数据的总长度,与加密前的数据多长无关)
2022-02-26 15:42:59 +08:00
回复了 LxnChan 创建的主题 Linux 如何让 Ubuntu 中的部分用户无法登录到 shell?
@LxnChan
chsh --shell /sbin/nologin 用户名
2022-02-21 11:06:49 +08:00
回复了 c0nstantien 创建的主题 Linux Linux 代理工具
@ugvfpdcuwfnh emmm ,已经在 Linux 下了,就没必要开 docker 然后配旁路由了吧,不过 docker 用来启动软件还行……
我是直接开 ss-redir ,用 systemd 做开机自启,然后用 nftables (或者 iptables )直接配规则转发。
如果用 v2ray 之类的,也可以在 v2ray 里再配规则。
Google 上用 ios http proxy setting gone 关键词搜索,找到有人问过类似的问题。应该是你安装了某个软件全局接管了代理设置……
2022-02-20 11:36:21 +08:00
回复了 kreutec 创建的主题 Google 从 Google 账户中删除了 YouTube 服务还有方法可以恢复吗?
Google 的客服,你多提交几次,前几次是模板回答,里面应该有一些一般步骤,你就说跟着步骤问题仍然没有解决,多发几轮就会有人工回复了。
之前因为他们的 bug 导致我扩展程序不能通过就是这样,前几轮都是模板邮件,回了 4 次,就收到人工回复了。
2022-02-18 01:26:33 +08:00
回复了 nekoneko 创建的主题 职场话题 看面试题看得迷茫了
@919615766 前两天研究 TLS 指纹识别的时候(主要是部分服务器会拦截非浏览器的请求,在研究原因),然后搜到了这篇文章
https://httptoolkit.tech/blog/tls-fingerprinting-node-js/
文章中提到了上面那个 TLS1.3 的图解,然后页面底部给了 TLS1.2 和 GitHub 的链接。
觉得挺好,就收藏了。
2022-02-17 16:20:15 +08:00
回复了 v2defy 创建的主题 微信 求 rust 学习交流群
@jinliming2 #2 群里技术氛围挺好,入群请先看公告,不要讨论无关话题……一个一个 +1 的消息我比较尴尬……
2022-02-17 15:29:47 +08:00
回复了 Jihua 创建的主题 程序员 作为程序员的你,喜欢帮同事 review 代码吗
@ppllss 所以 for 循环要登录 steam 么……
stream ?还是 iterator ?
2022-02-17 15:26:29 +08:00
回复了 v2defy 创建的主题 微信 求 rust 学习交流群
2022-02-17 00:13:23 +08:00
回复了 itemqq 创建的主题 信息安全 向日葵远程桌面存在远程代码执行漏洞
@justNoBody github 上搜仓库名,可以搜到 fork
2022-02-16 21:35:21 +08:00
回复了 nekoneko 创建的主题 职场话题 看面试题看得迷茫了
觉得可以看看这个,应该比较容易:
TLS1.2: https://tls.ulfheim.net/
TLS1.3: https://tls13.ulfheim.net/
2022-02-16 09:25:55 +08:00
回复了 yaott2020 创建的主题 Go 编程语言 Golang TLS 问题
没做错误处理、自己处理一下
server 端:
cert, err := tls.LoadX509KeyPair(*cert, *key)

CA := x509.NewCertPool()
file, err := ioutil.ReadFile(*ca)
CA.AppendCertsFromPEM(file)

tlsConfig := tls.Config{
GetCertificate: func(info *tls.ClientHelloInfo) (*tls.Certificate, error) {
return &cert, nil
},
ClientAuth: tls.RequireAndVerifyClientCert,
ClientCAs: CA,
// ...
}

客户端:
cert, err := tls.LoadX509KeyPair(*cert, *key)

CA := x509.NewCertPool()
file, err := ioutil.ReadFile(*ca)
CA.AppendCertsFromPEM(file)

tlsConfig := tls.Config{
Certificates: []tls.Certificate{cert},
RootCAs: certPool,
ClientAuth: tls.RequireAndVerifyClientCert,
ClientCAs: certPool,
// ...
}
2022-02-14 21:30:53 +08:00
回复了 daoqiongsi1101 创建的主题 Go 编程语言 http1.1 长连接与 golang 并发请求的疑问
@daoqiongsi1101 http://nginx.org/en/docs/http/ngx_http_upstream_module.html#server 对于 HTTP/1 upstream ,可以通过 max_conns 限制连接数、keepalive 限制连接池。

先说一下 HTTP/1 、HTTP/2 、HTTP/3:
HTTP/1 在单个 TCP 上以 keep-alive 的形式复用,按照“请求-响应-请求-响应”的顺序进行,后面的请求会受到前面请求的阻塞,叫做“线头阻塞 Head-of-line blocking” https://en.wikipedia.org/wiki/Head-of-line_blocking
HTTP/2 在单个 TCP 上分帧复用连接,多个请求可以同时发送、同时接收。但这个“同时”只是在应用层的 HTTP 协议眼中看起来是“同时”的,而在传输层的 TCP 眼中来看还是串行的。就是将多个 HTTP 请求响应拆成小片,然后在单个 TCP 连接中交替(也不一定是交替)传输。所以仍然存在“线头阻塞”,只不过是 TCP 层面的线头阻塞。
HTTP/3 将传输层协议给替换掉了,改成了基于 UDP 的 QUIC ,由于 UDP 属于无状态的,所以传输层的包也是同时发送了,这就消除了传输层的线头阻塞。

回到你这个链接里讨论的不支持 HTTP/2 ,总结一下原因:
1 ,支持 HTTP/2 作为 upstream ,那么所有连接复用同一个 TCP ,会受到 TCP 线头阻塞和拥塞控制问题的影响,对 nginx 来说,会使得事情变得复杂
2 ,用单个连接传输,几乎消除了连接数的限制,但是实际上 nginx 本身也没有主动做这样的限制(除非你自己指定 max_conns ),所以这个没啥意义
3 ,(感觉也是最主要的一点)实现 HTTP/2 进行单路复用,需要对 upstream 模块做重大修改,风险比较高
If you still think that talking to backends via HTTP/2 is something needed - feel free to provide patches.(翻译:老子嫌麻烦不想做,你要觉得有必要,你做好了把 patch 提交上来)

所以,风险大于收益,他们觉得没有实现的必要。
这也是 2015 、2016 年的帖子了,那时候 HTTP/2 才刚起步。
现在 HTTP/3 的时代快来了,云厂商都在部署 h3 了,不知道是不是 nginx 的时代已经快过去了?(瞎说的)
1 ... 12  13  14  15  16  17  18  19  20  21 ... 58  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2838 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 35ms · UTC 09:44 · PVG 17:44 · LAX 01:44 · JFK 04:44
Developed with CodeLauncher
♥ Do have faith in what you're doing.