LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python。
LAMP 架构在企业里用得非常广泛,目前很多电商公司、游戏公司、移动互联网公司大多都采用这种架构。LAMP指的是Linux、Apache、MySQL、PHP。下面记录了 LAMP 架构系统服务的搭建过
和LAMP不同的是LNMP中的N指的是Nginx(类似于Apache的一种web服务软件)其他都一样。目前这种环境应用的也是非常之多。Nginx设计的初衷是提供一种快速高效多并发的web服务软件。在静
公用DNS服务器名称 DNS 服务器 IP 地址114 DNS 114.114.114.114 114.114.115.115阿里 AliDNS 223.5.5.5 223.6.6.6百度 BaiduDNS 180.76.76.76DNSPod DNS+ 119.29.29.29 182.254.116.116CNNIC SDNS 1.2.4.8 210.2.4.8oneDNS 117.50.11.11 117.50.22.22DNS 派电信/移动/铁通 101.226.4.6 218.30.118.6DNS 派 联通 123.125.81.6 140.207.198.6Google DNS 8.8.8.8 8.8.4.4Google IPv6 DNS 2001:4860:4860::8888 2001:4860:4860::8844IBM Quad9 9.9.9.9OpenDNS 208.67.222.222 208.67.220.220V2EX DNS 199.91.73.222 178.79.131.110Verizon DNS 4.2.2.1 4.2.2.2中国台湾中华电信 HiNet DNS 168.95.192.1 168.95.1.1中科大DNS 202.141.162.123(中国电信) 202.38.93.153 (教育网)202.141.176.93 (中国移动)韩国KT DNS 168.126.63.1 168.126.63.2去广告DNS服务器名称 DNS 服务器 IP 地址FUN DNS 119.23.248.241Pure DNS 123.207.137.88 115.159.220.214CuteDns 120.77.212.84(南方) 101.236.28.23(北方)aixyz DNS 115.159.146.99(南方) 123.206.21.48(北方)BAI DNS 106.14.152.170不知名DNS 180.97.235.30 115.159.96.69123.207.137.88 123.206.21.48各地电信DNS名称 DNS 服务器 IP 地址安徽电信 DNS 61.132.163.68 202.102.213.68北京电信 DNS 219.141.136.10 219.141.140.10重庆电信 DNS 61.128.192.68 61.128.128.68福建电信 DNS 218.85.152.99 218.85.157.99甘肃电信 DNS 202.100.64.68 61.178.0.93广东电信 DNS 202.96.128.86 202.96.128.166202.96.134.33 202.96.128.68广西电信 DNS 202.103.225.68 202.103.224.68贵州电信 DNS 202.98.192.67 202.98.198.167河南电信 DNS 222.88.88.88 222.85.85.85黑龙江电信 219.147.198.230 219.147.198.242湖北电信 DNS 202.103.24.68 202.103.0.68湖南电信 DNS 222.246.129.80 59.51.78.211江苏电信 DNS 218.2.2.2 218.4.4.461.147.37.1 218.2.135.1江西电信 DNS 202.101.224.69 202.101.226.68内蒙古电信 219.148.162.31 222.74.39.50山东电信 DNS 219.146.1.66 219.147.1.66陕西电信 DNS 218.30.19.40 61.134.1.4上海电信 DNS 202.96.209.133 116.228.111.118202.96.209.5 108.168.255.118四川电信 DNS 61.139.2.69 218.6.200.139天津电信 DNS 219.150.32.132 219.146.0.132云南电信 DNS 222.172.200.68 61.166.150.123浙江电信 DNS 202.101.172.35 61.153.177.19661.153.81.75 60.191.244.5联通DNS服务器名称 DNS 服务器 IP 地址北京联通 DNS 123.123.123.123 123.123.123.124202.106.0.20 202.106.195.68重庆联通 DNS 221.5.203.98 221.7.92.98广东联通 DNS 210.21.196.6 221.5.88.88河北联通 DNS 202.99.160.68 202.99.166.4河南联通 DNS 202.102.224.68 202.102.227.68黑龙江联通 202.97.224.69 202.97.224.68吉林联通 DNS 202.98.0.68 202.98.5.68江苏联通 DNS 221.6.4.66 221.6.4.67内蒙古联通 202.99.224.68 202.99.224.8山东联通 DNS 202.102.128.68 202.102.152.3202.102.134.68 202.102.154.3山西联通 DNS 202.99.192.66 202.99.192.68陕西联通 DNS 221.11.1.67 221.11.1.68上海联通 DNS 210.22.70.3 210.22.84.3四川联通 DNS 119.6.6.6 124.161.87.155天津联通 DNS 202.99.104.68 202.99.96.68浙江联通 DNS 221.12.1.227 221.12.33.227辽宁联通 DNS 202.96.69.38 202.96.64.68移动DNS服务器名称 DNS 服务器 IP 地址江苏移动 DNS 221.131.143.69 112.4.0.55安徽移动 DNS 211.138.180.2 211.138.180.3山东移动 DNS 218.201.96.130 211.137.191.26四川移动 DNS 223.87.238.22
卸载安骑士:wget http://update.aegis.aliyun.com/download/uninstall.shchmod +x uninstall.sh./uninstall.shwget http://update.aegis.aliyun.com/download/quartz_uninstall.shchmod +x quartz_uninstall.sh./quartz_uninstall.sh删除残留:pkill aliyun-servicerm -fr /etc/init.d/agentwatch /usr/sbin/aliyun-servicerm -rf /usr/local/aegis*屏弊云盾IPiptables -I INPUT -s 140.205.201.0/28 -j DROPiptables -I INPUT -s 140.205.201.16/29 -j DROPiptables -I INPUT -s 140.205.201.32/28 -j DROPiptables -I INPUT -s 140.205.225.192/29 -j DROPiptables -I INPUT -s 140.205.225.200/30 -j DROPiptables -I INPUT -s 140.205.225.184/29 -j DROPiptables -I INPUT -s 140.205.225.183/32 -j DROPiptables -I INPUT -s 140.205.225.206/32 -j DROPiptables -I INPUT -s 140.205.225.205/32 -j DROPiptables -I INPUT -s 140.205.225.195/32 -j DROPiptables -I INPUT -s 140.205.225.204/32 -j DROP
以前小夜都是通过DD命令来测试硬盘性能,这次是一个比较准确的软件,以后评测数据都会使用这一数据,进行结果统计。安装:yum install hdparm #centosapt-get install hdparm #debian,ubuntu使用:hdparm -t /dev/xvda/dev/xvdb为硬盘符,可使用fdisk -l获取。
VPS使用必备软件之一,可以用来测试网络延迟,以及路由追踪。下载地址:百度网盘(国内速度较快) / 官方网站(国外速度较快)功能介绍:输入IP地址,或网站域名。点击 strart 即开始,一般情况下最尾部的值,就是ping值。Lost就是丢包,而中间的值,是所经路由器时的网络延迟。可以导出成html或txt文件。
每分钟自动记载uptime,并记录到log文件。crontab -e然后,在crontab中添加以下自动命令:* * * * * uptime>>/home/wwwlogs/load.log以上规则为每分钟自动记录。如果不行,可以手动执行一下。再给755权限chmod 755 /home/wwwlogs/load.log效果如下图:
直接干掉所有邮件协议端口,解除烦脑。iptables -A INPUT -p tcp -m multiport --dport 25,110,465:587,993:995 -j DROPiptables -A INPUT -p udp -m multiport --dport 25,110,465:587,993:995 -j DROPiptables -A OUTPUT -p tcp -m multiport --dport 25,110,465:587,993:995 -j DROPiptables -A OUTPUT -p udp -m multiport --dport 25,110,465:587,993:995 -j保存iptables设置。iptables-saveservice iptables save
主要讲2个基本的实际应用,主要涉及到禁ping(ipv4)以及禁止udp,即禁止有黑客利用服务器向外发包ddos攻击方面的内容。一、如果没有iptables禁止pingecho 1 > /proc/sys/net/ipv4/icmp_echo_igore_all #开启echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all #关闭二、利用iptables规则禁pingiptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP三、利用iptables规则,禁止服务器向外发包,防止DDOS向外攻击iptables -I OUTPUT -p udp --dport 53 -d 8.8.8.8 -j ACCEPT #允许UDP服务IPiptables -A OUTPUT -p udp -j DROP #禁止udp服务上述53端口和8888是DNS服务必须有的,如果不清楚本机的DNS设置,可执行以下命令得到IP:cat /etc/resolv.conf
微软的一个小工具集:https://technet.microsoft.com/en-us/sysinternals/pstools.aspx里面有很多特别的工具,都是windwos系统默认工具的加强版。PsExec - 可以控制远程机器执行程序,类似 Pc Anywhere,但是不用装任何客户端。PsFile - 查看远程机器上打开的文件PsGetSid - 查看远程机器上账号的SIDPsInfo - 可以查看本地和远程计算机的硬件配置和系统(必须是windows系统)PsKill - 杀死本地或远程计算机的进程PsList - 类似linux系统上的ps命令,可以查看本地和远程计算机的进程信息PsLoggedOn - 查看谁通过资源共享登录了目标机器(本地或远程)PsLogList - 查看本地或远程机器的事件日志PsPasswd - 修改本地或远程计算机上的账户的密码PsPing - TCP ping工具,得到更精确,更真实的网络延时信息PsService - 查看和控制本地或远程机器的服务PsShutdown - 重启或关闭本地或远程计算机PsSuspend - 暂停或恢复本地或远程计算机的进程其中强烈建议用上面的psping 代替系统自带的ping工具,TCP ping更能真实的反映当前的网络状况。
下载:http://cdn.ipip.net/17mon/besttrace.exe额外还有MAC版、IPHONE版、安卓版等,不多说,上图。官网下载:http://www.ipip.net/download.html
大家包括小夜,也习惯了使用top来查看linux系统的实时情况,今天介绍大家一个比较高级一点的软件,名字叫htop,看到的内容更加的详细,安装如下:yum install htop #centos系统apt-get install htop #debian或ubuntu系统如果源里没有,可以自行编译安装:wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gztar xvfz ncurses-5.9.tar.gzcd ncurses-5.9./configuremakemake installwget http://sourceforge.net/projects/htop/files/htop/0.9/htop-0.9.tar.gztar zxvf htop-0.9.tar.gzcd htop-0.9./configuremakemake install
朋友们经常都要在VPS或独服上面,购买额外的IP来使用,而老外的计算方法一般都是按/29 /28 /27 /26之类这样计算,有点小难懂。详细的计算方法,我就不讲了,以下标明为购买后IP地址(注:必须要减掉3个不可以使用)/30 4个总ip 1个可用 /29 8个总ip 5个可用 /28 16个总ip 13个可用 /27 32个总ip 29个可用 /26 64个总ip 61个可用 /24 256个总ip 253个可用 ..... /16 65536个总IP
一个最简单的配置脚本,应用之处很多,例如VPS增量备份,或者,SLB之间做文件同步等。配置文件压缩包下载:rsync服务器端配置 - rsync客户端配置一、首先是配置服务器端,例如IP:111.111.111.111下载 rsync-server.zip 文件,解压后,上传到/etc目录,需要设置4个地方:1.设置 /etc/rsyncd/rsyncd.conf 中的服务器端IP(第7行)为您VPS的IPaddress = 111.111.111.1112.设置 /etc/rsyncd/rsyncd.conf 中允许同步的客户端IP(第20行),多IP用空格隔开:hosts allow=222.222.222.2223.设置 /etc/rsyncd/rsyncd.conf 中的需要同步的目录(第35行)path = /home/wwwroot4.设置 /etc/rsyncd/rsyncd.secrets 中用户名及密码,并用命令给予600权限chmod 600 /etc/rsyncd/rsyncd.secrets二、设置服务器端IP、允许客户端IP以及用户名密码,设置后服务器端运行rsync,命令:/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf三、配置备份客户端,例如IP:222.222.222.222下载 rsync-root.zip 文件,解压后,上传至/root目录中:1.设置rsync密码/root/pass文件(无须用户名),与服务器端一至,并给予600权限,命令:chmod 600 /root/pass2.设置rsync路径/root/rs.sh,与服务器端一至,并给予可执行权限,命令:rsync -avzP --delete --password-file=/root/pass vpsmmuser@111.111.111.111::vpsmmhome /home/wwwroot#其中vpsmmuser为服务器端/etc/rsyncd/rsyncd.secrets中用户名#其中111.111.111.111为服务器端IP#其中vpsmmhome为/etc/rsyncd/rsyncd.conf中34行自定义命名#其中/home/wwwroot为需要同步的网站目录chmod +x /root/rs.sh四、可以用 crontab 功能,每1小时,或每天同步一次数据:crontab -e25 */1 * * * /root/rs.sh//每个小时的第25分钟自动运行一次25 04 */1 * * /root/rs.sh//每天的25分04时自动运行一次五、常见错误解答1.服务器端/etc/rsyncd/rsyncd.secrets和备份端/root/pass,均需要600权限2.可以手动执行/root/rs.sh,看是否能够同步成功3.切记,此同步是数据完全同步,会删除掉备份端有,而服务器端没有的文件4.此为增量备份,只同步修改过或没有的文件,原有文件不会下载,很节省时间和流量
介绍给大家一个软件,用来查看实时带宽,通用于包括阿里云在内的几乎所有Linux操作系统,首页我们要安装它。相关命令如下:#如果你是centos系统,执行:yum install iftop#如果你是debian/ubuntu系统,执行:apt-get install iftop观看一下提示,是否安装成功,或者,直接执行iftop,看是否运行来判断是否安装成功。如果安装不成功,可以使用以下命令,编译安装执行,通用于centos操作系统:yum -y install flex byacc libpcap ncurses ncurses-devel libpcap-develwget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gztar zxvf iftop-0.17.tar.gzcd iftop-0.17./configuremake && make install阿里云分内网和外网,所以,执行不同命令可以查看到不同网络的数据使用情况,相关命令:#使用ifconfig,查看所有网络配置,使用 -i 参数选择相关网络。ifconfig#阿里云默认的iftop,执行查看的是第一个,即内网的IP,以下二个命令效果相同iftopiftop -i eth0#如果查看外网带宽,则需要选择外网配置的eth,默认命令iftop -i eth1如果执行成功,会看到类似以下图片的效果,下面有详细说明:太复杂的我就不讲了,讲几个常用的:TX,发送流量;RX,接收流量;TOTAL,总流量;Cumm,运行iftop期间流量;peak,流量峰值;rates,分别代表2秒、10秒、40秒的平均流量。界面可使用快捷键:h帮助,n切换显示IP主机名,s是否显示本机信息,d是否显示远端信息,N切换端口服务名称,b切换是否时数流量图形条。
本文旨在帮助采用xenserver架构的vps,系统盘是10G,而额外还有不同大小份额的硬盘,不知道怎么处理的人,挂载到你目前的硬盘上,并同步增加你的硬盘大小。注:如果卷标名字不一样,即时替换就可以了。需要使用ROOT登陆SSH进行操作,使用PUTTY或XSHELL之类软件,或面板的VNC控制也可以。一、首先查看一下,当前空间情况:fdisk -l我买的14G的硬盘,系统盘8589M,空余6442M是我们今天要挂载的目标:二、查看一下当前已划分空间使用情况,总5.7G,使用1.8G,余3.7G:df -hal三、增加分区,并进行相关操作,并重启VPS:fdisk /dev/xvdb接下来按顺序输入以下内容,#后为说明:n #新建分区p #主分区3 #第3个分区回车 #默认即可回车 #默认即可t #指定分区格式8e #分区格式为LVMw #保存reboot #重启VPS四、再查看,就会发现新增加了一个刚才分区的内容:五、创建物理卷及加入组:pvcreate /dev/xvdb3vgextend VolGroup00 /dev/xvdb3六、查看物理卷情况,得到需要增加的空间容量:vgdisplay七、按照大小增加(略小于实际容量,例如实际5.97G,增加5.95G即可)lvresize -L +5.95G /dev/VolGroup00/LogVol00八、动态扩容分区大小:resize2fs /dev/VolGroup00/LogVol00九、再次查看空间容量,发现已经加上鸟:df -hal
最近在折腾一款论坛程序,需要fileinfo组件,而lnmp1.3默认没有支持。其实很简单,只要修改 include/upgrade_php.sh 这个文件把其中的:--disable-fileinfo全部替换:--enable-fileinfo再执行 ./upgrade.sh 选择4,升级php就行了。flarum伪静态部分配置(仅限军哥lnmp1.3版本)location / {try_files $uri $uri/ /index.php?$query_string;}location /api {try_files $uri $uri/ /api.php?$query_string;}location /admin {try_files $uri $uri/ /admin.php?$query_string;}location /flarum {deny all;return 404;}location ~ .php$ {fastcgi_split_path_info ^(.+.php)(/.+)$;fastcgi_pass unix:/tmp/php-cgi.sock;fastcgi_index index.php;include fastcgi.conf;}程序演示:https://forum.vpsmm.com/
现在腾讯提供免费的一年证书,地址:https://console.qcloud.com/sslnginx重定向 http 自动跳转 httpsserver{listen 80;server_name app.typecho.me;index index.html index.htm index.php;rewrite ^/(.*)$ https://plugins.typecho.me/$1 permanent;}配置ssl证书:server{listen 443;#listen [::]:80;server_name app.typecho.me;index index.html index.htm index.php;root /app;ssl on;ssl_certificate /ssl/app.typecho.me_cert.crt;ssl_certificate_key /ssl/app.typecho.me.key;include typecho.conf;#error_page 404 /404.html;include enable-php-pathinfo.conf;location ~ .*.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;}location ~ .*.(js|css)?${expires 12h;}location ~ /.{deny all;}access_log off;}安装完成。腾讯免费SSL证书+LNMP环境演示:https://app.typecho.me/
更新测试时间2016.03.08,lnmp1.3-beta最新版+typecho开发最新版。只要修改vhost下面的配置文件 enable-php.conf 为 enable-php-pathinfo.conf再引用 typecho.conf 伪静态文件,完美解决。不用下面的废劲方法了。===========分隔线============现在使用lnmp1.x版本,搭配typecho登陆后台,会出现404错误。小夜就不深究原因了,这里只说解决办法。1.enable-php.conf 文件,添加pathinfo2.conf引入location ~ [^/].php(/|$){try_files $uri =404;fastcgi_pass unix:/tmp/php-cgi.sock;fastcgi_index index.php;include fastcgi.conf;include pathinfo2.conf;}2.上传pathinfo2.conf文件(和原来默认版本不一样)set $real_script_name $fastcgi_script_name;if ($fastcgi_script_name ~ "(.+?.php)(/.*)") {set $real_script_name $1;set $path_info $2;}fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;fastcgi_param SCRIPT_NAME $real_script_name;fastcgi_param PATH_INFO $path_info;3.如果除首页外全部404,则为伪静态规则问题,请使用以下伪静态规则:location /{index index.html index.php;if (-f $request_filename/index.html){rewrite (.*) $1/index.html break;}if (-f $request_filename/index.php){rewrite (.*) $1/index.php;}if (!-f $request_filename){rewrite (.*) /index.php;}}以上问题,主要常见于lnmp1.3-beta版本,主要为typecho遇到。
一个简单的脚本,用来监控502的,如果遇到502,自动重启PHP进程。适用于LNMP环境。以下文件,存放于 /root 或其它目录:#!/bin/bashMY_URL="http://www.vpsmm.com/"RESULT=`curl -I $MY_URL|grep "HTTP/1.1 502"`if [ -n "$RESULT" ]; then/etc/init.d/php-fpm restartfi给予可执行权限:chmod +x /root/php.sh通过 crontab 设置自动运行:crontab -e* * * * * /root/php.sh
一、LNMP高级应用之nginx最简单反向代理server{listen 80;server_name vpsmm.com;location / {proxy_pass http://cache.vpsmm.com/;proxy_redirect off;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}二、最简单的前端全缓存+反向代理脚本mkdir /home/cache/path -p #新建2个目录,放置缓存文件mkdir /home/cache/temp -p修改 /usr/local/nginx/conf/nginx.conf 新增以下代码,主要是缓存相关设置,请放置于 http{ ##这里 } 中,一般加在 log_format 上面或下面均可:client_body_buffer_size 512k;proxy_connect_timeout 5;proxy_read_timeout 60;proxy_send_timeout 5;proxy_buffer_size 16k;proxy_buffers 4 64k;proxy_busy_buffers_size 128k;proxy_temp_file_write_size 128k;proxy_temp_path /home/cache/temp;proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache_one:500m inactive=7d max_size=30g;#500m是内存占用,7d是7天无访问删除,30g是缓存占具硬盘空间以下为虚拟主机配置文件,可另存成 .conf 放置于 vhost 下面:server{listen 80;server_name vpsmm.com; #主机名location / {proxy_cache cache_one;proxy_cache_valid 200 304 3d; #正常状态缓存时间3天proxy_cache_key $host$uri$is_args$args;proxy_pass http://cache.vpsmm.com/; #反代的网站proxy_redirect off;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;expires 10d; #默认10天缓存access_log /home/wwwlogs/vpsmm.log access; #日志文件}}点击几下网站,df -sh 命令,查看 /home/cache 目录大小,即可测试是否缓存成功。此脚本为前端全缓存,后端动态更新后,前端不会自动修改。可手动清理cache目录下文件。这个方法,可以用纯静态的形式来防CC,如果你的动态博客,受到CC攻击,可以尝试一下。三、LNMP简单的一些防CC的办法观看生成的.log日志文件,判断来路,直接301百度:if ($http_referer ~* mi5.gov ) {rewrite ^(.*)$ http://www.baidu.com/ permanent;}观看生成的.log日志文件,判断浏览器特征码,直接301百度:if ($http_user_agent ~* firefox4.0 ) {rewrite ^(.*)$ http://www.baidu.com/ permanent;}根据特征码,直接查找.log文件,并iptables封死相应IP:cat com.log | grep 'Mozilla/5.0' | awk '{print "iptables -I INPUT -p tcp --dport 80 -s ", $1, "-j DROP"}'| sort -n | uniq | shif ($http_user_agent ~* 142.54.161.3 ) {rewrite ^(.*)$ http://www.baidu.com/ permanent;}