首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >chroot,gpg-agent和Ubuntu 18.04

chroot,gpg-agent和Ubuntu 18.04
EN

Server Fault用户
提问于 2019-02-20 08:38:26
回答 1查看 4.8K关注 0票数 3

对于对我的服务器的SFTP访问,我已经创建了一个sftp用户,该用户仅限于chroot的工作目录。

代码语言:javascript
复制
Match User sftp-user
    AuthorizedKeysFile /home/sftp-user/.ssh/authorized_keys
    ChrootDirectory /var/www/domain
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

/etc/passwd中的这个条目

代码语言:javascript
复制
sftp-user:x:1003:1003::/html:/usr/sbin/nologin

密钥文件中有一些问题,但是设置一个绝对路径可以解决这个问题。SFTP登录运行良好,直到nagios服务器监视安装在服务器(一个VPS)和/或更新已经运行,并且系统已经重新启动之前--我不太清楚。

现在,连接失败了,syslog显示了这个错误:

代码语言:javascript
复制
systemd[7590]: gpgconf: running /usr/bin/gpg-agent failed (exitcode=2): General error
systemd[7590]: gpgconf: fatal error (exit status 1)

无论登录是否通过密钥文件或密码完成,都会发生此错误。所以我试着按照gpg -代理说代理存在,但是gpg说代理不存在?的问题来缩小问题的范围。

代码语言:javascript
复制
$ gpg-agent --version
gpg-agent (GnuPG) 2.2.4
libgcrypt 1.8.1

当我以用户身份启动gpg-agent (而不是sftp用户)时,它在第一次运行时在主目录中创建一个文件:

代码语言:javascript
复制
$ gpg -d demo-file.asc
gpg: keybox '/home/username/.gnupg/pubring.kbx' created

当我在chroot中禁用/etc/ssh/sshd_config时,登录就正常工作了。所以我假设,某些访问在chroot会话中失败。由于sftp用户不允许使用shell,所以我没有将任何目录bind到sftp用户的主目录中。

EN

回答 1

Server Fault用户

发布于 2019-02-20 08:50:36

实际上,无法创建的是.gnupg目录。/etc/passwd (/html)中指定的主目录在SFTP会话期间是相对的,但在登录期间被理解为绝对路径。所以..。

  • .gnupg = chroot+home = /var/www/domain/html中创建文件夹D6 (!)帮助。
  • 创建文件夹/html/.gnupg (由sftp用户拥有的.gnupg)从/syslog中删除了错误消息。

为了解决进一步的问题(当然,它没有立即工作),我在详细模式下启动了另一个sshd守护进程,并连接到这个端口.但这将导致这里的话题。

代码语言:javascript
复制
sudo /usr/sbin/sshd -d -p 3321
票数 4
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/954844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档