wkd*_*rty 10 ssh logging x11-forwarding debug
我在通过 SSH 进行 X 转发时遇到问题。我已经战斗了很长时间,但似乎没有人能提供帮助。
我现在采取不同的策略。我想知道如何调试错误?
我应该查看哪些日志,我应该设置哪些额外的标志(-v 等)以及我应该寻找什么?
进一步编辑:
如果我将 Putty 登录到服务器并尝试xeyes,我会得到:
PuTTY X11 代理:尝试了错误的授权协议错误:无法打开显示:本地主机:10.0
如果xauth generate $DISPLAY我得到:
PuTTY X11 代理:尝试了错误的授权协议xauth: (argv):1: 无法打开显示“localhost:10.0”。
小智 14
$ ssh -X root@192.168.1.39
[root@localhost ~]# ls -al [root@localhost ~]# vim .Xauthority
[root@localhost ~]# cp .Xauthority /home/oracle/ cp:覆盖`/home/oracle/.Xauthority'?是
[root@localhost ~]# chown oracle:oinstall .Xauthority [root@localhost ~]# chmod 0600 .Xauthority
[root@localhost ~]# su - oracle
[oracle@localhost ~]$ echo $DISPLAY 本地主机:10.0 [oracle@localhost ~]$ ls -al
[oracle@localhost ~]$ xauth 列表 localhost.localdomain/unix:11 MIT-MAGIC-COOKIE-1 310f1b02c1080e73059391c193a1881b localhost.localdomain/unix:10 MIT-MAGIC-COOKIE-1 41843db100830a2aa352641ac47bb759
[oracle@localhost ~]$ xauth add localhost.localdomain/unix:10 MIT-MAGIC-COOKIE-1 41843db100830a2aa352641ac47bb75
[oracle@localhost ~]$ xclock
希望他们服务!@wcaraza
确保 SSH 服务器xauth安装了该工具,并且您的~/.Xauthority文件是可写的。(不存在也可以,只要xauth能创造就行。)
检查 xauth 数据是否正在更新:
server$ xauth list
Run Code Online (Sandbox Code Playgroud)
尝试手动添加虚拟 xauth 数据(再次在 SSH 服务器上),看看是否xauth有任何问题(例如无法创建锁定文件或修改 Xauthority 文件本身):
server$ xauth add localhost:123 MIT-MAGIC-COOKIE-1 d7e2e4a8c5aa4430bfcc2abb436940d2
Run Code Online (Sandbox Code Playgroud)
如有必要,请在 下重新运行strace。
在调试模式下运行 SSH 服务,通过LogLevel DEBUG2在服务器配置 ( /etc/ssh/sshd_config) 中设置,或者直接在调试模式下启动 sshd:
server$ sshd -rddp 12234
Run Code Online (Sandbox Code Playgroud)
(在本例中,12234是您需要连接的临时 SSH 端口。任何空闲端口都可以。)
它正在发挥作用,它正在发挥作用。哈哈。
最后。
在发现这不是系统之后,通过添加一个测试用户(其中 x 转发“开箱即用”),我想我应该开始复制 .bash* 启动文件以将“损坏的”用户处女化。
所有文件都没有不同,因此接下来我删除了用户 .ssh 目录。当我 ssh 登录时,它抱怨“服务器拒绝我们的密钥”,但我可以使用密码登录。登录后,我可以完美转发。
我现在将尝试再次设置密钥,看看是否也能正常工作。然后就会恢复正常。