标签: configuration

如何使用 Ansible 对特定任务的用户进行身份验证?

尝试使用 apt 在 playbook 中安装某些依赖项时,我收到“msg:无法锁定 apt 以进行独占操作”,而 vagrant 用户。我怀疑它告诉我这个是因为它在运行任务时无法验证 vagrant 用户。

这是我正在使用的角色声明。

- name: ruby installer
  hosts: all
  sudo: True
  sudo_user: vagrant
  roles:
  - ruby
Run Code Online (Sandbox Code Playgroud)

这是失败的任务:

    - name: Install ruby building dependencies
      apt: name={{ item }} 
           state=installed 
           update_cache=yes

      with_items:
      - dependency
Run Code Online (Sandbox Code Playgroud)

当删除“update_cache=yes”并重新运行剧本时,我得到:E:无法锁定管理目录(/var/lib/dpkg/),你是 root 吗?

显然,当用 root 运行它时它工作得很好,但由于一些 ruby​​(rvm,rbenv 特定)任务,我需要它在不同的用户下运行,而不是 root。

运行我的剧本时如何正确验证流浪用户?有人可以指出我正确的方向吗?

python configuration ansible

2
推荐指数
1
解决办法
3434
查看次数

写一个apache配置,条件基于apache版本

我想为 apache 服务器编写一个配置,它应该适用于 apache-2.2 和 -2.4 而无需更改。由于 v2.4 中有很多必须加载的新模块,以及一些更改的指令,我需要一些条件语句。我想要的是类似的东西

<If ApacheVersion >= 2.4>
  LoadModule mod_only_in_2.4.so
</If>
Run Code Online (Sandbox Code Playgroud)

但我还没有找到正确的表达方式。有人可以指出我正确的方向吗?

澄清我的动机:我正在开发一个服务器,我希望能够将其复制到服务器上并在没有进一步依赖主机的配置的情况下运行。而且由于机器可以有任一版本的 apache,我想要一个在这两种情况下都可以使用的配置。

configuration web-server conditional apache-2.2 apache-2.4

2
推荐指数
2
解决办法
1740
查看次数

如何使用默认 CA 制作 openssl s_client

有没有办法配置 openssl,以便在未指定 -CAfile 选项的情况下运行 s_client 命令时使用一些默认 CA 文件(例如/etc/ssl/certs/ca-certificates.crt)?

ubuntu configuration openssl

2
推荐指数
1
解决办法
7807
查看次数

Postfix 非法地址语法

我的 postfix 安装设置为将所有电子邮件转发到example.com我的其他邮件服务器(位于 )mail.example.net。这对于所有地址都适用,除了!@example.com——服务器在日志中example.com吐出并发送给客户端,Illegal address syntax from501 5.1.3 Bad recipient address syntax

我如何告诉 postfix!@example.com也进行转发?维基百科说这!对本地部分有效。

我的配置如下:

主文件

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
mailbox_size_limit = 0
mydestination = mail.example.com, localhost
relay_domains = example.com
myhostname = mail.example.com
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 10.10.10.10/32
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relayhost = …
Run Code Online (Sandbox Code Playgroud)

postfix configuration

2
推荐指数
1
解决办法
3691
查看次数

预加载严格传输安全 (HSTS)

我将我的网络服务器配置为使用Strict Transport Security (HSTS)
我或多或少使用了本手册中的配置。
但是,如果我在Qualys SSL LABS上运行测试,我会在 SSL 报告中得到以下信息:

在此处输入图片说明

为什么报告说它不会为这些浏览器做 HSTS 预加载:

不在:Chrome Edge Firefox IE Tor

我怎样才能改变这个?我在另一个网站上看到了这个,所以应该是可能的:

在此处输入图片说明

ssl configuration web-server

2
推荐指数
1
解决办法
2207
查看次数

无法访问除 RD 之外的 Azure VM 的任何端口 (3389)

我有一个新的 Windows Server 2012 Azure 虚拟机。在我尝试从外部访问之前,通过 RD 一切正常。我无法访问 SQL Server 服务(我尝试了 1 小时后放弃了一切,认为我搞砸了 SQL Server 服务)。后来我发现连web端口(80)也不行!

这是我的防火墙状态和网络监视器(您可以看到端口 80 和 1433 被允许且不受限制):

在此处输入图片说明

在此处输入图片说明

我试图 telnet 到 80 或 1433,但都不起作用。但是,将相同 IP 地址的 telnet telnet 到端口 3389 可以工作。错误信息是:

无法在端口 1433 上打开与主机的连接:连接失败

有什么我需要做的配置吗?

注意:我已经在 IIS 中添加了一个网站,同时绑定到域和虚拟机 IP 地址,但是访问两者都失败了,没有任何效果。

firewall configuration port azure windows-server-2012-r2

2
推荐指数
1
解决办法
3100
查看次数

Nginx 忽略配置文件选项

我正在尝试使用特定的配置文件作为 Ubuntu 14.04 上的用户进程启动 nginx。但是我一开始就被阻止了:

$ nginx -c nginx.conf 
nginx: [alert] could not open error log file: open() "/var/log/nginx/error.log" failed (13: Permission denied)
2017/03/30 01:03:46 [emerg] 21805#21805: open() "/usr/share/nginx/nginx.conf" failed (2: No such file or directory)
Run Code Online (Sandbox Code Playgroud)

似乎继续尝试打开默认配置和其他文件。我看到 nginx 是使用以下选项构建的:

$ nginx -V
nginx version: nginx/1.10.1
built with OpenSSL 1.0.1f 6 Jan 2014
TLS SNI support enabled
configure arguments: --with-cc-opt='-g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy …
Run Code Online (Sandbox Code Playgroud)

ubuntu configuration nginx ubuntu-14.04

2
推荐指数
1
解决办法
3299
查看次数

尽管允许,但在 Nginx 中禁止 phpmyadmin

我不明白为什么禁止进入 PHPmyadmin ( http://my_ip/phpmyadmin)。这是我为安装它所做的:

在纯 Ubuntu 16.04 机器(服务器、xenial)上,我安装了带有 php-fpm 7.0 的 LEMP。Nginx conf 是默认的:

apt-get update -y
apt-get upgrade nginx mysql-server php-fpm php-mysql -y
Run Code Online (Sandbox Code Playgroud)

然后我安装了 PMA 并允许它:

DEBIAN_FRONTEND=noninteractive apt-get upgrade phpmyadmin php-mbstring php-mcrypt -y
ln -s /usr/share/phpmyadmin/ /var/www/html/
chown -R www-data:www-data /usr/share/phpmyadmin/ /var/www/html
chmod -R a-x,a=rX,u+w /usr/share/phpmyadmin/ /var/www/html
Run Code Online (Sandbox Code Playgroud)

我真的无法理解错误日志中有什么问题:

“/var/www/html/phpmyadmin/”的目录索引被禁止

什么可能导致 PMA 被禁止?

更新 - 一般:

珍妮的更新:

我删除了符号链接并在http块中添加了这个 confnginx.conf并重新启动了服务器,但没有看到任何变化:

server {    
    location /phpmyadmin {
        index index.php index.html …
Run Code Online (Sandbox Code Playgroud)

php permissions configuration nginx phpmyadmin

2
推荐指数
1
解决办法
2万
查看次数

服务器拒绝转发连接:管理禁止。同时使用 @IP 和 PermitOpen

[本机为192.168.80.125]

允许所有基本访问的普通 SSH 规则:

AllowUsers                  user1
PubkeyAuthentication        yes
PasswordAuthentication      no
AllowTcpForwarding          yes
UsePAM                      no
Run Code Online (Sandbox Code Playgroud)

匹配组测试

AllowUsers                  user2@IP1 user2@IP2 user2@IP3 user2@IP4
PubkeyAuthentication        yes
PasswordAuthentication      yes
AllowTcpForwarding          yes
    PermitOpen              192.168.80.100:80
    PermitOpen              192.168.80.125:443
AllowAgentForwarding        no
Run Code Online (Sandbox Code Playgroud)

当我以 user2 身份从 IP1 连接到 sshd 时,我可以使用 PuTTY 打开隧道:

本地S:IP1:8080 远程D:192.168.80.100:80

本地源:IP1:8443 远程目标:192.168.80.125:443

我打开浏览器并浏览到 localhost:8080 我得到连接重置。我打开浏览器并浏览到 localhost:8443 我得到连接重置。

我检查 SSH 日志:

192.168.80.125 authlog: Received request to connect to host 192.168.80.100 port 80, but the request was denied.
192.168.80.125 authlog: Received request to connect to host 192.168.80.125 port 443, …
Run Code Online (Sandbox Code Playgroud)

security ubuntu ssh configuration forwarding

2
推荐指数
1
解决办法
1829
查看次数

如何将 MySQL CLI 设置为默认使用寻呼机输出?

我发现MySQL的CLI这美妙的输出格式在这里。命令是mysql> pager less -SFX. 我希望这是我的默认设置,而不必每次启动 MySQL CLI 时都输入命令。我该如何将其设置为默认值?

mysql configuration

2
推荐指数
1
解决办法
550
查看次数