Jupyter 密码未散列

iac*_*sme 2 jupyter-notebook nvidia-jetson-nano

当我尝试设置 jupyter notebook 密码时,打开 jupyter_notebook_config.json 文件时没有得到密码哈希。

这是json文件的输出:

{
"NotebookApp": {
  "password": 
 "argon2:$argon2id$v=19$m=10240,t=10,p=8$pcTg1mB/X5a3XujQqYq/wQ$/UBQBRlFdzmEmxs6c2IzmQ"
 }

}
Run Code Online (Sandbox Code Playgroud)

我也尝试从 python 运行 passwd() ,就像在网上找到的准备散列密码指令的说明中一样,但它产生与上面相同的结果。没有哈希。

有人可以让我知道我做错了什么吗?

我正在尝试以与 Deep Learing Institute Nano 构建类似的方式设置 Jetson Nano。通过该构建,您可以远程运行 Jupyter Lab,以便 nano 可以无头运行。我试图在没有运气的情况下做同样的事情。

谢谢!

Thi*_*elo 6

这是默认算法 ( argon2):

https://github.com/jupyter/notebook/blob/master/notebook/auth/security.py#L24

sha1如果您愿意,您可以提供不同的算法:

>>> from notebook.auth import passwd
>>> from notebook.auth.security import passwd_check
>>>
>>> password = 'myPass123'
>>>
>>> hashed_argon2 = passwd(password)
>>> hashed_sha1 = passwd(password, 'sha1')
>>> 
>>> print(hashed_argon2)
argon2:$argon2id$v=19$m=10240,t=10,p=8$JRz5GPqjOYJu/cnfXc5MZw$LZ5u6kPKytIv/8B/PLyV/w
>>>
>>> print(hashed_sha1)
sha1:c29c6aeeecef:0b9517160ce938888eb4a6ec9ca44e3a31da9519
>>> 
>>> passwd_check(hashed_argon2, password)
True
>>>
>>> passwd_check(hashed_sha1, password)
True 
Run Code Online (Sandbox Code Playgroud)

检查您的机器上是否没有运行不同的 Jupyter 服务器。我碰巧在端口上一遍又一遍地尝试密码,8888而我想要的服务器在端口上8889

还有一次,Anaconda 在 上启动了一个服务器localhost:8888,我试图从 docker 容器访问映射端口,也在端口 8888 上,而访问的唯一方法实际上是在0.0.0.0:8888.