Articles of linux

旋转愚蠢的非交互式应用程序的日志

Ubuntu 10.4服务器。 我有一个愚蠢的非交互式传统服务,在我的服务器上不断运行。 它将其日志写入一个具有固定名称(/var/log/something.log)的文件。 它不处理任何信号放弃日志文件。 我需要旋转该日志文件。 有没有办法做到这一点,而不需要改变应用程序,也不会丢失日志中的任何数据?

Web服务器安全性过大?

我一直在进行“广泛的”研究,以确保一个Linux的Web服务器。 除了“基础知识”(去除未使用的服务,强化ssh,iptables等)之外,包含防Rootkits(Tripwire)和反病毒(ClamAV)是明智之举吗? 这些只是一个Web服务器矫枉过正? 我知道这是一个非常模糊的问题,但我很好奇别人的意见。 我的未来环境: – ubuntu 10.04 – fail2ban – nginx 0.8.x – php 5.3.x(suhosin,apc,memcached) – mongodb 1.6.x 可能的应用程序: – networking服务 – 用户上传的networking应用程序(图片,pdf等) – 典型的网站(表格等) 如果您有任何其他提示,请随时添加! 谢谢

从局域网内访问DNAT'tednetworking服务器

我有一个小型networking与路由器,它保持连接到Internet,服务器和本地networking中的一些工作站。 服务器意味着从Internet访问,并且在路由器iptables中设置了几个DNAT条目,如下所示: -A PREROUTING -i ppp0 -p tcp -m multiport –dports 22,25,80,443 -j DNAT –to-destination 192.168.2.10 外部数据包通过ppp0接口到达路由器,内部路由器从br-lan去,实际上包括交换机和WLAN适配器。 问题是,虽然外部访问工作正常,但试图通过DNSparsing的外部IP(分配给ppp0 )从LAN内部访问服务器失败。 我能够发明的唯一解决scheme是向路由器的/etc/hosts指向内部IP的静态条目,但由于没有通配符(我至less有三个分配给该系统的顶级域名,的子域),这是相当脆弱和容易失败。 你能提出更好的build议吗? 我只find这个问题 ,这不是很有帮助。 如果这是相关的,路由器用dnsmasq运行OpenWRT 10.03 Kamikaze。

通过SSH重新启动networking

在服务器A上,我想通过ssh向服务器B发出以下命令。 service network stop sleep 5 service network start 问题是因为我发出一个networking“停止”,那么我当前的SSH连接也会丢失。 因此我不能执行后续命令(睡眠5和服务networking启动)。 请注意,我不能使用(服务networking重新启动)。 有没有人有这方面的解决方法/解决scheme?

每次有人通过SSHlogin到Linux机器时执行程序

我有一个小的SSH服务器,我想写一个脚本来运行每次有人通过SSHlogin。 现在,我将如何去做呢? 我希望每次ANYBODYlogin时脚本都能运行,而且我需要至less访问login人员的用户名和login人员的IP地址。 我想过使用/etc/bash.bashrc ,但这是一个很好的解决scheme吗? 例如,有没有一种方法,用户可以禁用它的使用,从而禁用我的脚本? 如果是的话,我还有其他的select吗? 谢谢。

添加“匹配组”子句后sftp / ssh失败

我正在尝试在ubuntu /精确的EC2上build立一个sftp服务器。 我已经成功地添加了一个可以通过ssh连接的新用户,但是一旦添加了以下子句: Match Group sftp ChrootDirectory /home/%u AllowTCPForwarding no X11Forwarding no ForceCommand internal-sftp 我不能再连接(根本不用,SSH或其他),我得到的消息 Error: Connection refused Error: Could not connect to server 我能够连接子系统设置为: #Subsystem sftp /usr/lib/openssh/sftp-server Subsystem sftp internal-sftp 任何想法为什么SSH服务器失败,这个“匹配”条款? 基本上,除了“chroot”部分外,所有的东西都在工作。

如何在linux ubuntu上configurationPHP CLI作为www-data运行?

我在我的Ubuntu上有一个symfony2应用程序。 Symfony有很多有用的控制台命令(如php app/console cache:clear或php app/console assets:install web )。 问题是如果我以root用户身份运行它们,新生成的文件将具有root:root用户/ root:root组,如果我访问我的网站,我会得到错误(因为apache无法读取/修改这些文件 – >他们应该有www-data:www-data )。 运行chown www-data:www-data解决了这个问题,但是每次运行我清除caching都不是一个解决scheme。 如何将PHP CLIconfiguration为始终以www-data用户/组身份运行? 要么 我怎样才能作为一个不同的用户(作为根,运行它作为万维网数据)运行一个命令?

如何在主机文件(DNS)中设置多个子域名?

我在主域xxx.zzz中有很多子域 所以,对于这个领域,我可以拥有 aaa.xxx.zzz bbb.xxx.zzz ccc.xxx.zzz ddd.xxx.zzz eee.xxx.zzz ….ETC…. 除了在主机文件中添加每个子域外,我还想添加主域xxx.zzz,然后才能访问所有的子域。 我尝试了* .xxx.zzz,但显然,这是行不通的(Linux或Windows)。 任何想法是受欢迎的。 非常感谢你。

使用postfix将垃圾邮件发送到一个特殊的文件夹

我有一个运行amavis和SpamAssassin的postfix服务器来帮助过滤垃圾邮件。 被传送到用户的Maildir中时,被检测为垃圾邮件的邮件如下所示: 来自tom @ tom-mint 2013年3月15日星期五01:46:20 返回path:<tom @ tom-mint> X-Original-To:[email protected] 交付给:[email protected] X-Virus-Scanned:Debian amavisd-new在my-server.com X-Spam-Flag:YES X-Spam-Score:6.463 X-Spam-Level:****** X-Spam-Status:是,score = 6.463 tagged_above = 2 required = 6.31 testing= [DRUGS_ERECTILE = 2.221,FH_FROMEML_NOTLD = 0.18, FSL_HELO_NON_FQDN_1 = 0.001,HELO_NO_DOMAIN = 0.001,RCVD_IN_PBL = 3.558, RDNS_DYNAMIC = 0.363,TO_NO_BRKTS_DYNIP = 0.139] autolearn = no date:2013年3月15日星期五01:46:19 -0400 到:[email protected] 主题:*** SPAM ***你好 用户代理:传家宝mailx 12.5 6/10/10 […]

如何从eth1而不是eth0显式Ping

我试图用eth1执行ping,但程序使用eth0(默认的networking设备)。 任何提示,技巧或替代技术可用?