近期已经有多名Linux服务器管理员爆出服务器被恶意攻击,导致系统root密码泄漏以及资料泄漏,经查可能是由于内置后门的PuTTY和WinSCP工具导致。
PuTTY是知名的Windows开源SSH管理工具,WinSCP是常用的开源SFTP工具。两者皆为免费、开源软件,其中PuTTY从没有官方中文版,而WinSCP已经拥有官方中文版。
但是在百度搜索这两款软件,均出现了竞价广告,并指向非官方授权的中文打包分发网站。不熟悉相关软件的朋友,可能下载到包含后门的SSH连接工具。
专注WEB编程开发技术
近期已经有多名Linux服务器管理员爆出服务器被恶意攻击,导致系统root密码泄漏以及资料泄漏,经查可能是由于内置后门的PuTTY和WinSCP工具导致。
PuTTY是知名的Windows开源SSH管理工具,WinSCP是常用的开源SFTP工具。两者皆为免费、开源软件,其中PuTTY从没有官方中文版,而WinSCP已经拥有官方中文版。
但是在百度搜索这两款软件,均出现了竞价广告,并指向非官方授权的中文打包分发网站。不熟悉相关软件的朋友,可能下载到包含后门的SSH连接工具。
随着互联网的飞速发展,毫无疑问,互联网上的安全,操作系统平台的安全也逐渐成为人们所关心的问题。而许多网络服务器、工作站所采用的平台为Linux/UNIX平台。Linux平台作为一个安全性、稳定性比较高的操作系统也被应用到了更多领域。本文带领大家探讨了Linux系统管理员应该掌握的20个防火墙应用技巧。
广为人知的iptables命令行
Netfilter作为Linux内置的主机防火墙,它可以使用iptables命令处理IPv4协议,也可以使用ip6tables命令处理IPv6协议。在iptables之前,Linux 2.2中使用ipchains来配置防火墙,Linux 2.0中则使用ipfwadm,它基于BSD的ipfw命令实现。
过去的一年对于Linux来说是振奋的一年。这一年,这个来自芬兰的小项目度过了20岁生日,推出了3.0版并且在从移动设备到超级计算机的几乎一切领域都占统治地位。当然,未来的路还很长但是,2012年对于Linux来说将是充满期待的一年。
Linux确实没有一个路线图。人们得到的是许多国家的数百名开发者协作的结果。没有人制定一个功能列表并且指导开发者研究这些功能。当开发者递交一个补丁并且获得接受的时候,这个东西便进入了Linux的内核。这并不总是一个简单的流程。有些功能需要几个月或者几年的时间才能进入Linux内核。
但是,如果你关注Linux社区的讨论,你可以合理地了解近期将会发生什么事情。下面是你在2012年预计将在Linux领域看到的事情。
下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行。在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩。需要注意的是,这段脚本仅适用数据一致性要求不高的环境。
#!/bin/bash mysql_pwd="password" mysql_dump="/usr/local/mysql/bin/mysqldump" cur_year=$(date +"%Y") cur_month=$(date +"%m") cur_day=$(date +"%d") dump_path="/usr/backup/mysql/$cur_year-$cur_month/$cur_day" arr_tables=( "table_1" "table_2" "table_3" ) if [ ! -d "$dump_path" ]; then mkdir -p "$dump_path" fi for cur_table in ${arr_tables[*]}; do $mysql_dump -uroot -p$mysql_pwd --opt mydb $cur_table | gzip > $dump_path/$cur_table.sql.gz done
阳光部落原创,更多内容请访问 http://www.sunbloger.com/
这是一段Linux的Shell脚本,用于切割Nginx的日志,可通过crontab设置每日零点执行这段脚本实现自动切割。
#!/bin/bash # This script run at 00:00 log_year=$(date -d "yesterday" +"%Y") log_month=$(date -d "yesterday" +"%m") log_day=$(date -d "yesterday" +"%d") # The Nginx logs path logs_path="/usr/local/nginx/logs/" save_path="/usr/local/nginx/logs/$log_year-$log_month/" if [ ! -d "$save_path" ]; then mkdir -p "$save_path" fi mv ${logs_path}access.log ${save_path}access_$log_year$log_month$log_day.log mv ${logs_path}error.log ${save_path}error_$log_year$log_month$log_day.log kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
阳光部落原创,更多内容请访问 http://www.sunbloger.com/
如果ulimit设置的过小,对于并发量大的网站,可能会出现too many open files的错误。因此需要我们对ulimit设置进行调整,方法如下:
例如apache以www用户身份运行
首先,打开limits.conf文件
vi /etc/security/limits.conf
在末尾加上如下内容:
www soft nofile 32768
www hard nofile 65536
上面两行的含义是:
www – 所指定的用户名
soft – 软限制
hard – 硬限制
nofile – 允许打开的文件数量,后面的数字就是具体的数量。
最近一段时间,我刚刚进入一家新公司,并接手了这里的一个站点,由于这个站点的架构设计不太合理,导致MySQL的压力始终很大,经常出现超时的Locked进程,于是编写了一段Linux的Shell脚本来定时kill掉这些进程。
脚本如下:
#!/bin/bash mysql_pwd="xxxxxx" #mysql的root密码 mysql_exec="/usr/local/mysql/bin/mysql" tmp_dir="/tmp" file_sh="$tmp_dir/mysql_kill_locked.sh" file_tmp="$tmp_dir/mysql_kill_locked.tmp" file_log="$tmp_dir/mysql_kill_locked.log" #日志 $mysql_exec -uroot -p$mysql_pwd -e "show processlist" | grep -i "Locked" > $file_tmp cat $file_tmp >> $file_log for line in `cat $file_tmp | awk '{print $1}'` do echo "$mysql_exec -uroot -p$mysql_pwd -e \"kill $line\"" >> $file_sh done chmod +x $file_sh sh $file_sh #执行临时脚本 > $file_sh #清空临时脚本
最后,将这段脚本加入到crontab,定时执行即可。
阳光部落原创,更多内容请访问 http://www.sunbloger.com/
我的配置环境为:
Linux版本:CentOS 5.6
PHP版本:PHP 5.2.17
Memcached版本:1.4.9
Memcache版本:2.2.6
Memcached需要libevent支持,所以需要先检查libevent是否已经安装。
下面是Memcached的安装过程:
2011年6月21日,Firefox 火狐浏览器 5.0 正式发布并提供下载。
更新内容:
简体中文版下载地址:http://firefox.com.cn/download/