我一直在关注这个 svn 安装指南,当我尝试通过转到访问我的测试仓库时http://localhost/repos
,我成功进行了身份验证,但后来我得到了这个:
"Forbidden You don't have permission to access /repos on this server"
Run Code Online (Sandbox Code Playgroud)
这是我的 subversion.conf 文件:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /repos>
DAV svn
SVNParentPath /var/www/svn/repos
#
# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
AuthType Basic
AuthName "Subversion repos"
AuthUserFile /etc/svn-auth-conf
Require valid-user
# </LimitExcept>
</Location>
Run Code Online (Sandbox Code Playgroud)
我的路径是 /var/www/svn/repos,这是我的权限
[root@localhost svn]# ls -la …
Run Code Online (Sandbox Code Playgroud) 系统管理员存在于所有环境的 sudoers 文件中,但其他 sudoers 没有。不同的环境都有略微不同的sudoer。大多数时候,90% 的用户是相同的,10% 的用户不同,所以我们不能只有一个 sudoers 文件来处理所有事情。
现在,我们正在使用具有 10 个不同文件的 puppet,名称分别为 sudoers.production1、sudoers.production2、sudoers.production3、sudoers.testing1、sudoers.staging1 等等。
Puppet 然后根据服务器的 $domain(例如:dbserver.staging1.acme.com)或 $hardwaremodel 选择要部署的文件。它工作正常,但维护这么多文件是一场噩梦。
我想根据服务器的域自动生成 sudoers 文件,并且只有一个大文件具有所有用户和所有环境的所有 sudoers 权限。看起来像的东西:
User_Alias ADMINS = abe, bob, carol, dave
case $domain {
"staging1.acme.com" {
#add dev1,dev2,tester1,tester2 to sudoers file
}
"testing2.acme.com" {
#add tester1, tester3, tester4 to sudoers file
}
Run Code Online (Sandbox Code Playgroud)
解决这个问题的最佳方法是什么?欢迎提供替代方案的建议。我很感激任何提示。
更新 1:
出于安全原因,我们不希望将位于 puppet 客户端上的文件夹中的一堆文件连接起来,以防有人将文件(无论是否恶意)放入其中并破坏组合文件或在其中插入某些内容。
最重要的是,为了可用性,我们希望将 puppet 服务器上与 sudoers 相关的文件(片段或完整)的数量保持为 3(生产/阶段/测试)或最好是 1 个文件。该文件将(以某种方式)在 puppet 服务器上生成 sudoers 文件,并将一个自定义文件发送到每个 puppet 客户端。
这样做的目的是只在单个文件中搜索用户名,并比在 11 个文件中更快地删除它。将用户添加到一堆环境中时,不会那么快,但只需要打开和查看一个文件,大大减少了遗漏的机会。
我们的 Sudo 版本是 1.6.9p8,所以我们不能使用 …
我在催化剂开关上获得了一个用户名和一个临时密码,但我不知道如何更改我的密码...
在谷歌搜索时,我发现了这一点,但是当我通过键入enable 15
然后键入将我的权限提高到 15 时
username gozulin {[1] opensesame}
它说:
^
Run Code Online (Sandbox Code Playgroud)
%invalid input detected at '^' marker
标记指向我的用户名后的第一个字符。
那么,我该怎么做呢?
编辑:现在我输入
username gozulin password opensesame
它说:
^
Run Code Online (Sandbox Code Playgroud)
%invalid input detected at '^' marker
编辑2:成功!
系统设置了 (md5) 加密密码,所以我必须给出的命令是:
username gozulin secret opensesame
谢谢大家的帮助!
apache-2.2 ×1
centos ×1
cisco ×1
linux ×1
password ×1
permissions ×1
puppet ×1
sudo ×1
svn ×1
users ×1