标签: rewrite

如何在不重写的情况下将 exim 中继服务器中的外部地址黑洞化?

我有一个场景,电子邮件是通过我的出站中继发送的,其中有一个不回复“收件人:”收件人(实际收件人是 BCCd)。

这些电子邮件的示例:

From: <from@mydomain.com>
To: <do-not-reply@mydomain.com>
Bcc: <actualrecipient@gmail.com>
Subject: foo
Run Code Online (Sandbox Code Playgroud)

BCCd 收件人仍应收到邮件,但我想阻止向外部域中存在的不回复收件人发送邮件的尝试。请注意,mydomain.com传入邮件并非由此 exim 服务器托管 - 此邮件服务器严格用于中继。

我尝试了一种重写方法,但这会修改​​ BCC 收件人看到的“收件人”地址,这看起来很混乱。由于不回复收件人不会转到本地托管域,因此据我所知,用于黑洞地址的传统别名设置不起作用。

exim rewrite

5
推荐指数
1
解决办法
1695
查看次数

如何在 nat 网关(iptables)中覆盖 dns 服务器

我有一台运行 openvpn 的 Ubuntu 服务器,iptables 用于通过 vpn 服务器推送所有传入流量。IP 表配置非常基础,使用以下一系列命令生成:

sudo iptables --flush
sudo iptables --table nat --flush
sudo iptables --delete-chain
sudo iptables --table nat --delete-chain
sudo iptables --table nat --append POSTROUTING --out-interface tun0 -j MASQUERADE
sudo iptables --append FORWARD --in-interface eth0 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

我一直在尝试通过添加以下两行来重写流量以强制使用特定的 dns 服务器:

sudo iptables --table nat --append PREROUTING -i eth0 -p tcp --sport 53 -j DNAT --to-destination 146.148.119.121:53
sudo iptables --table nat --append PREROUTING -i eth0 -p udp --sport 53 -j DNAT --to-destination 146.148.119.121:53
Run Code Online (Sandbox Code Playgroud)

但它不工作我所希望的(输出nslookup …

dns iptables openvpn nat rewrite

5
推荐指数
1
解决办法
1202
查看次数

如果请求不是来自 localhost,则 Apache 重定向到 https

我有一台 Centos 6.7 和 apache 2.2.15。我想将所有流量从端口 80 重定向到 443,但有一个例外。来自 localhost 的流量我想保留在端口 80 上。

现在我使用这个配置,但我不知道如何更改它

RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,QSA]
Run Code Online (Sandbox Code Playgroud)

centos https rewrite apache-httpd virtual-host

5
推荐指数
1
解决办法
4215
查看次数

替换字符串的单引号除以变量的空格

我正在编写一个 bash 脚本,我正在通过read这两个字符串读取变量:

log.*.console.log log.*.log
Run Code Online (Sandbox Code Playgroud)

它们被空间隔开。

如何重写脚本中调用的下一个程序的变量的输出将具有这种形式的字符串? 'log.*.console.log' 'log.*.log'

我正在尝试 sed 和 awk 但不知何故没有成功。

整个脚本:

#!/bin/bash
if [ -z "$*" ] ; then
echo "USAGE: ./some text"
exit 1

else

echo "some text"
read varlogname

i=1
for file in $@
do
echo "Doing" $file
GTAR=$(gtar -xvf $file --wildcards --ignore-case --no-anchored "$varlogname")

for file in ${GTAR[*]}
do
mv $file $file"."${i}
i=$((i+1))
done
done
echo "Files extracted."
fi
exit 0
Run Code Online (Sandbox Code Playgroud)

bash solaris variable read rewrite

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

标签 统计

rewrite ×4

apache-httpd ×1

bash ×1

centos ×1

dns ×1

exim ×1

https ×1

iptables ×1

nat ×1

openvpn ×1

read ×1

solaris ×1

variable ×1

virtual-host ×1