我有一个 apt 存储库服务器。有没有办法只允许特定用户/机器连接到我的存储库?通过凭据、证书还是任何其他方式?它不能是 IP 或其他与设备无关的参数。
谢谢
答案1
首先在您的网络服务器上启用基本身份验证。
对于 apache,conf-available/mysite.conf
可能看起来像这样:
<Directory "/var/www/apt/debian">
AllowOverride None
AuthType Basic
AuthName "Request a token for access"
AuthUserFile "/etc/htpasswd/.htpasswd"
Require user master
</Directory>
请参阅man htpasswd
参考资料 来生成 AuthUserFile。
假设DocumentRoot /var/www/apt
,URLhttp://example.org/debian
现在应该提示您输入用户名/密码。
接下来,apt
在每个客户端上进行配置,以便在向服务器发出 HTTP 请求时提供此身份验证。有关如何执行此操作的详细信息,请参见man apt_auth.conf
。这可以通过向存储库用户发出“令牌”来完成。该文件应如下所示:
machine example.org
login master
password pass1234
或这个:
machine example.org login master password pass1234
当您将此令牌提供给用户时,让他们将其安装到/etc/apt/auth.conf.d/*.conf