我有一些麻烦的主机用我运行的SSH服务器尝试它,我试图用fail2ban来禁止它们。 问题是,我没有用正则expression式做很多工作,用Python正则expression式更less。 下面是我的auth.log中的麻烦的一行: Nov 19 18:58:17 myhost sshd[48272]: Connection from xxx.xxx.xxx.xxx port 3284 on my.host.ip.address port 22 Nov 19 18:58:21 myhost sshd[48272]: fatal: Read from socket failed: Connection reset by peer [preauth] 我想抓住正则expression式中的两条线,在其他文章中我已经看到了如何做多行的东西,但目前我甚至不能把它匹配到第一行! 这是我的* .conf文件的一个片段: [INCLUDES] # Read common prefixes. If any customizations available — read them from # common.local before = common.conf [Init] maxlines […]
我有一个用Python编写,运行在Linode VPS上的小公司的内部pipe理应用程序,用户可以通过它向客户发送偶尔的电子邮件。 电子邮件非常简单:带有PDF发票附件的文本部分(即不是HTML),使用email stdlib模块创build,并通过外部SMTP服务器(不在VPS上托pipe)发送。 一切都运行得相当顺利了一段时间,但最近我一直在接受抱怨,电子邮件通常被接收邮件服务器归类为垃圾邮件。 我发送了一封testing邮件到http://www.mail-tester.com ,发现添加一些丢失的标题(特别是Date和Message-ID )有助于减less我的消息的“垃圾”级别。 不过还有一个SPF相关的SpamAssassin问题仍然没有解决: SPF_HELO_SOFTFAIL SPF: HELO does not match SPF record (softfail) 我尝试将testing电子邮件发送到我的Gmail帐户,以下是“Show Original”时可以find的相关标题: Received-SPF: pass (google.com: domain of <sender_address> designates <ip_smtp_server> as permitted sender) client-ip=<ip_smtp_server>; Received: from [<ip_linode_vps>] (helo=<domain_name_linode_vps>) 从这里和我在这里和那里收集的一些额外的信息,我敢肯定,这个问题可以通过修改SMTP服务器域的SPFlogging(已经存在,作为一个TXTlogging"v=spf1 a mx… ~all" <ip_smtp_server> "v=spf1 a mx… ~all"string包含一个ip4引用<ip_smtp_server> ),但我目前的理解是不够的,所以我会很感激任何帮助。 更新: <ip_linode_vps> = 69.164.216.89 <domain_name_linode_vps> = li131-89.members.linode.com <ip_smtp_server> = […]
我是新来的networking和代理。 对于一个项目,我需要给一个代理连接。 我已经有一个连接,我想改变stream程的连接行为,通过该代理连接。 我还希望它在检测到它被扼杀的情况下使用新的IP。 我想要的新连接过程是:从我们的服务器连接 – >代理 – >所需的网站,如果我们被限制:通过代理build立新的连接(需要确认新的IP正在被代理分配)。
我在OSX上工作,我试图用Python3创build一个virtualenv,但是我收到一个错误: $ virtualenv –python python3 env Running virtualenv with interpreter /Library/Frameworks/Python.framework/Versions/3.4/bin/python3 Traceback (most recent call last): File "/usr/local/lib/python2.7/site-packages/virtualenv.py", line 37, in <module> import ConfigParser ImportError: No module named 'ConfigParser' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python2.7/site-packages/virtualenv.py", line 39, in <module> import configparser as ConfigParser File "/usr/local/lib/python2.7/site-packages/configparser.py", […]
我有一个在Python中使用套接字构build的TCP服务器。 我正在构build的应用程序是时间敏感的,所以数据的完整性很重要,因此我们需要TCP。 带宽非常低。 还有一个客户端每隔50毫秒向服务器请求一次数据。 如果服务器没有数据或实际需要的数据,客户端会收到OK消息。 每当客户端向服务器发出请求时,它就发送一个5字节的帧(不包括来自IP和TCP的40个额外字节)。 另一方面,服务器或者以5字节的帧(在大多数情况下)或者大于70字节的帧(通常为每秒) 两边的sockets都是这样设置的: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) # this line is excluded in client's case sock.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, 8192) sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) sock.settimeout(0.5) 一切运行良好在本地networking(没有滞后),但每当我连接到公共IP(我是端口转发)的服务器,它滞后了很多。 滞后可能高达15秒(在那一刻它超时),这是令人难以置信的多。 RTT大部分时间停留在200-210毫秒。 在WireShark上,我可以看到有很多(伪)重传和dup ACK。 我能做什么? 我已经禁用了Nagle的algorithm,但是还没有成功。
我正在使用systemd来pipe理Ubuntu 16上的程序。我似乎无法从程序中获取日志以输出到journalctl或/var/log/syslog 。 日志configuration是缺省configuration,至less应将所有日志消息<debug到syslog。 这里是杂志的conf: >> cat /etc/systemd/journald.conf # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # […]
我正在使用pam_python模块来loggingSSH尝试中使用的用户名和密码。 在/etc/pam.d/sshd我加了这行: auth requisite pam_python.so /lib64/security/pwreveal.py 这是/lib64/security/pwreveal.py : import crypt, spwd, syslog def auth_log(msg): """Send errors to default auth log""" syslog.openlog(facility=syslog.LOG_AUTH) syslog.syslog("SSH Attack Logged: " + msg) syslog.closelog() def check_pw(user, password): auth_log("User: " + user + " Password: " + password) """Check the password matches local unix password on file""" # try: hashed_pw = spwd.getspnam(user)[1] […]
过去几天我已经做了一些寻找工作,我无法正确地工作。 我正在使用AngularJS&Webapp2 Python(Google App Engine)。 我正在使用工厂资源: app.factory('facTest', ['$resource', function ($resource) { return $resource('http://localhost:10080/:route', {}, { GetTest: { method: 'GET', isArray: false, params: { route: "gettest", user_id: '@user_id' } } }) }]); 这个伟大的工作,但WebApp2我需要添加: self.response.headers['Access-Control-Allow-Origin'] = '*' 或者我也遇到类似的问题。 我的问题是当我试图通过AngularJS发送自定义标题: $http.defaults.headers.common.Authorization = 'Basic ' + "123454"; 当我做我得到错误。 我试图在所有的HTTP调用之前添加一个令牌到头部。 我已经尝试将此添加到python WebApp2 self.response.headers['Access-Control-Allow-Headers'] = 'X-Requested-With, Content-Type, X-Codingpedia, Authorization' self.response.headers['Access-Control-Allow-Methods'] = […]
我试图在CentOS 5.1机器上安装MySQLdb Python包,但没有成功。 起初我尝试过使用easy_install,但是它安装的版本是1.2.1,这对于Django来说太旧了,至less要求1.2.1p2。 所以我去从SourceForge项目网站下载源代码。 我把档案放在我的桌面上,并解压到那里的一个文件夹。 然后按照说明setup.py install setup.py build和setup.py install 。 这似乎起初工作,但一个不幸的事情发生了:它使用包时使用桌面上的文件夹! 我知道,因为我试图用Python导入包,它给了我一些警告提到我的桌面上的path! 这里发生了什么,我该怎么办? (注意:这里安装的Python版本是2.4)
我有一个VPS服务器上的Django应用程序(128MB RAM)当我用python manage.py runserver启动它,它的工作原理是完美的,但如果我尝试通过Apache / mod_wsgi使用它,很快就会导致主要的放缓(点击几下随机链接在我的网页上),似乎耗尽内存。 这甚至发生在“hello world”应用程序中。 但它有点奇怪,因为它运行良好wit. manage.py runserver任何想法? /var/log/apache2/error.log —————————– [Wed Feb 10 00:00:40 2010] [error] [client 65.55.37.202] File does not exist: /var/www/robots.txt [Wed Feb 10 00:01:22 2010] [error] [client 65.55.37.202] File does not exist: /var/www/file [Wed Feb 10 00:02:32 2010] [warn] child process 2023 still did not exit, sending a SIGTERM […]