哪个是最好的Postfix Log分析仪?我们正在为postfix寻找好的日志分析器.我们需要分析以下内容
是否可以查看所有邮件状态的主题而不是邮件ID?我的意思是审查单个邮件的状态.
我们现在正在使用Sawmill分析仪.但管理层对锯木厂的报告不满意,因为它缺少单一的信息状态和主题.
我在从我的osx swift应用程序发送邮件时遇到问题.要发送邮件我使用下面的代码
import Foundation
import Cocoa
class sendemail : NSObject, NSSharingServiceDelegate{
func sendEmail() throws
{
print("enter email sending")
let body = "This is an email for auto testing throug code."
let shareItems = [body] as NSArray
let service = NSSharingService(named: NSSharingServiceNameComposeEmail)
service?.delegate = self
service?.recipients = ["abc@dom.com"]
let subject = "Vea Software"
service?.subject = subject
service?.performWithItems(shareItems as [AnyObject])
}
}
Run Code Online (Sandbox Code Playgroud)
我找到了这个链接的源代码:https://www.veasoftware.com/posts/send-email-in-swift-xcode-62-os-x-1010-tutorial
但它没有用.
我还尝试按照以下说明从终端发送邮件:
http://www.developerfiles.com/how-to-send-emails-from-localhost-mac-os-x-el-capitan/
它说 :
postfix/postfix-script: fatal: the Postfix mail system is not running
Run Code Online (Sandbox Code Playgroud)
请帮我.
我可以手动从我的mac邮件应用程序发送邮件. …
在过去的几天里,我一直在努力学习使用Rails,而且我遇到了一些我无法通过Google解决的问题.
所以我只是创建一个发送电子邮件的基本联系表单.一切似乎都在测试中正常工作,这告诉我表单正在运行,并且ActionMailer已正确实现,但是,我在配置ActionMailer时遇到了问题.我正在运行OSX 10.6.2.我有postfix运行,并已验证它正在运行使用telnet localhost 25.当我尝试使用表单时,我收到"拒绝连接"错误.
这是我目前的配置:
config.action_mailer.smtp_settings = {
:address => 'localhost',
:port => 25
}
Run Code Online (Sandbox Code Playgroud)
我想我可能需要设置,:domain但我对在这种情况下应该设置的内容感到困惑.
所以今天早上我接到一个电话,询问客户是否需要查看他们在我们的辅助邮件服务器上等待发送的电子邮件.他们的主服务器的链接已经(仍然)已经停止了两天,他们需要看到他们的电子邮件.
所以我编写了一个快速的Perl脚本,将mailq与postcat结合使用,将每个电子邮件的地址转储到单独的文件中,然后将其关闭并发送出去.可怕的代码,我知道,但这很紧急.
我的解决方案工作正常,因为它至少提供了原始视图,但我想今晚如果我有一个解决方案可以提供他们的电子邮件附件并且可能删除一些"垃圾"标题文本也会很好.大多数重要的电子邮件似乎都附有PDF或类似内容.
我一直在环顾四周,但查看队列文件的唯一方法是我可以看到的是postcat命令,我真的不想编写自己的解析器 - 所以我想知道你们中是否有人已经这样做过,或者知道更好的命令使用?
这是我当前解决方案的代码:
#!/usr/bin/perl
$qCmd="mailq | grep -B 2 \"someemailaddress@isp\" | cut -d \" \" -f 1";
@data = split(/\n/, `$qCmd`);
$i = 0;
foreach $line (@data)
{
$i++;
$remainder = $i % 2;
if ($remainder == 0)
{
next;
}
if ($line =~ /\(/ || $line =~ /\n/ || $line eq "")
{
next;
}
print "Processing: " . $line . "\n";
`postcat -q $line > $line.email.txt`;
$subject=`cat $line.email.txt | grep "Subject:"`;
#print "SUB" . …Run Code Online (Sandbox Code Playgroud) 我有一个开发Web服务器(CentOS LAMP堆栈),它使用postfix中的SMTP中继设置来发送电子邮件.我们使用带有多个用户的mailgun,类似于此的设置,但是使用特定用户而不仅仅是通配符电子邮件:
/etc/postfix/main.cf中
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_auth_enable = yes
sender_dependent_relayhost_maps = hash:/etc/postfix/relayhost_map
smtp_sender_dependent_authentication = yes
smtp_sasl_security_options = noanonymous
relayhost = [smtp.mailgun.org]:587
Run Code Online (Sandbox Code Playgroud)
/等/后缀/ sasl_passwd
# our domains
no-reply@domain.com postmaster@domain.com:password1
info@domain2.com postmaster@domain2.com:password2
support@domain3.com postmaster@domain3.com:password3
# in-case we don't have it setup, use a default
#[smtp.mailgun.org]:587 postmaster@domain2.com:password2
Run Code Online (Sandbox Code Playgroud)
/等/后缀/ relayhost_map
no-reply@domain.com [smtp.mailgun.org]:587
info@domain2.com [smtp.mailgun.org]:587
support@domain3.com [smtp.mailgun.org]:587
Run Code Online (Sandbox Code Playgroud)
要设置电子邮件日志记录,我使用自己的SMTP凭据验证计算机上的每个开发人员.我想设置它,以便开发人员不需要在postfix中添加additional_headers或additional_parameters获取正确的smtp中继匹配 - 事实上,在代码中为不同的开发人员设置不同的邮件头需要做很多工作,特别是对于版本化的码.我离题了.当我使用以下内容时,这在postfix的方面工作得很好:
mail('email@address.tld', 'subject', 'message here...', 'From: noreply@domain.com', '-fnoreply@domain.com');
Run Code Online (Sandbox Code Playgroud)
所以我然后将以下内容添加到vhost配置中:
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fnoreply@domain.com"
Run Code Online (Sandbox Code Playgroud)
这成功地让我摆脱了-f additional_parameter …
默认情况下,Google 的计算引擎会阻止所有传出电子邮件端口。来自Compute Engine 文档的引用
当流量通过这些端口(这也包括负载平衡地址)寻址到它们的外部 IP 地址时,Compute Engine 会阻止或限制 Internet 和虚拟机之间以及两个虚拟机之间通过以下所有端口/协议的流量: > 所有到端口 25 (SMTP) 的传出流量被阻止。除了已知的 Google IP 地址外,大多数到端口 465 或 587(基于 SSL 的 SMTP)的传出流量都被阻止。
作为对此的解决方案,Google 建议使用 SendGrid 等第三方网站来管理电子邮件。SendGrid 可以轻松帮助您发送电子邮件,但接收电子邮件却不是那么容易。
在服务器上安装电子邮件客户端无济于事,因为这些客户端需要与其他服务器通信以接收电子邮件的端口仍然被阻止。
我的问题是接收电子邮件的最简单解决方案是什么?SendGrid 的解决方案是用于发送电子邮件,Compute Engine 文档对此进行了说明。我已经安装了 postfix,但所有发送到我服务器的电子邮件都收到超时错误,而且我的收件箱仍然是空的。
php email postfix-mta google-compute-engine google-cloud-platform
使用 terraform v0.12.9 并使用 template_file 数据源构建文件,我无法使用双美元符号$$将输入${data_directory}视为文字。
寻找解决方案以正确的方式解决此问题,或寻找任何其他建议或解决方法来帮助创建包含此内容的文件。
我尝试使用双美元符号(如下面的代码示例所示)将此${data_directory}隔离为文件输出中的文字。
这是我尝试使用 terraform 创建 postfix main.cf 文件的代码:
variable "hostname" {
default = "test"
}
variable "domain_name" {
default = "test.com"
}
variable "fn_main_cf" {
default = "main.cf"
}
data "template_file" "main_cf" {
template = <<EOF
##
## Network settings
##
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
inet_interfaces = 127.0.0.1, ::1, 120.121.123.124, 2a03:b0a0:3:d0::5e79:4001
myhostname = ${var.hostname}.${var.domain_name}
###
### Outbound SMTP connections (Postfix as sender)
###
smtp_tls_session_cache_database = btree:$${data_directory}/smtp_scache
EOF …Run Code Online (Sandbox Code Playgroud) 我知道这个话题还有其他一些问题(有答案)。但这些都对我没有帮助。
我有一个具有以下配置的后缀服务器(debian 10 上的后缀 3.4.14)(只有有趣的部分):
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtpd_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtpd_tls_exclude_ciphers = aNULL, LOW, EXP, MEDIUM, ADH, AECDH, MD5, DSS, ECDSA,
CAMELLIA128, 3DES, CAMELLIA256, RSA+AES, eNULL
smtp_tls_exclude_ciphers = aNULL, LOW, EXP, MEDIUM, ADH, AECDH, MD5, DSS, ECDSA,
CAMELLIA128, 3DES, CAMELLIA256, RSA+AES, eNULL
tls_preempt_cipherlist = yes
tls_high_cipherlist = !aNULL:!eNULL:!CAMELLIA:HIGH:@STRENGTH
Run Code Online (Sandbox Code Playgroud)
如果我使用 openssl 检查配置,我会得到(请注意,我使用“xxxxxx.de”使域名无法识别):
#> openssl s_client -connect xxxxxx.de:25 -starttls smtp
CONNECTED(00000003)
depth=3 O …Run Code Online (Sandbox Code Playgroud) 我需要在Linux服务器上停用RepeatedMsgReduction,以允许fail2ban评估每次失败的登录尝试.(参见此错误报告:http://bugs.debian.org/cgi-bin/bugreport.cgi? bug = 440037)
由于我不想充斥我的日志文件,我希望仅在那些fail2ban扫描的日志文件上具有该功能,尤其是mail.warn.
有没有办法在rsyslog.conf中设置条件规则/过滤器来设置
$RepeatedMsgReduction = off
Run Code Online (Sandbox Code Playgroud)
如果邮件绑定到mail.warn?
我想要postfix在我的ROR项目中发送电子邮件.由于其更安全和更多的功能.
但现在我很失落.我安装postfix了ROR工作.但接下来该怎么办?
(我只需发送电子邮件,暂不收到)
我应该配置postfix,让它能够先在评论行发送电子邮件,然后将其集成到ROR中吗?
如果是这样,我应该如何设置配置文件postfix,以及如何设置rails?
或者我只是需要做每一个设置rails?如果是这样,详细设置应该是什么?
我很困惑.许多教程要么不起作用,要么不适合我的情况.
postfix-mta ×10
email ×4
macos ×2
php ×2
actionmailer ×1
ansible ×1
apache ×1
encryption ×1
java ×1
log-analysis ×1
parsing ×1
perl ×1
rsyslog ×1
ruby ×1
starttls ×1
swift ×1
swift2 ×1
terraform ×1
variables ×1
xcode ×1