怎样使用Composer

2018年9月12日 由 Amon 没有评论 »

【介绍】

Composer 是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。

官网:https://getcomposer.org/root

参考:https://www.phpcomposer.com/

【安装】

参考:https://docs.phpcomposer.com/00-intro.html#Installation-*nix

你可以将composer.phar文件放在任何地方。但是如果你把它放在系统的 PATH 目录中,你就能在全局访问它。 在类Unix系统中,可以在使用时不加 php 前缀。

你可以执行这些命令让 composer 在你的系统中进行全局调用:

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

注意: 如果上诉命令因为权限执行失败, 请使用 sudo 再次尝试运行 mv 那行命令。

现在只需要运行 composer 命令就可以使用 Composer 而不需要输入 php composer.phar。

【报错】

报错:Composer install Do not run Composer as root/super user!

参考:https://segmentfault.com/q/1010000007360216

防止一些第三方代码,拥有超级管理员的权限来执行一些脚本。

标黄只是警示,其实不影响操作。不用在意这个提示,稍微等一下,其实是会进行下载和安装的。

怎样下载电子书

2018年9月12日 由 Amon 没有评论 »

【无偿】

参考:http://www.panduoduo.net/
参考:http://www.weiyoou.net/
参考:http://www.wwaaffxx.com/
参考:https://www.xiaohx.org/
参考:http://www.downcc.com/soft/list_181_1.html
参考:https://www.panc.cc/

【有偿】

参考:http://www.tushugu.com/

怎样发送网络传真

2018年9月12日 由 Amon 没有评论 »

参考:https://www.zhihu.com/question/19723216
参考:https://blog.csdn.net/shangruo/article/details/43825003
参考:http://www.gtamama.com/simple/?t3810.html

官网:https://faxzero.com/

1. 在Sender Information中填入你的姓名、公司、电子邮件;在Receiver Information中填入你要传入姓名、公司名称、传真号码。
2. 在Fax Information中,选择你要上传的文件,可以是Word文档,也可以是PDF文件,可以添加多个。
3. 也可以不添加文件,而是直接在“Enter Text to Fax”文本框内写上你要传真的话
4. 填写一个验证码后,点击”send free fax now”
5. 你即将收到一封确认邮件,点击确认链接后,传真即进入发送队列,也有一个链接追踪发送状态。
6. 如果发送成功,将以邮件形式通知。

Dear Buddy,

Your fax to Kahn at 6666663333 has been sent successfully!
Successful delivery of your fax was confirmed at 4:42 AM Eastern Daylight Time on September 12th, 2018
Your fax included 1 page of coversheet with your text and 1 page of attached documents.

Thank you,
FaxZero.com

缺点:如果是免费的,将使用faxzero家的封套,不能使用自定义封套。

官网:https://www.pamfax.biz/zh-hans/

PamFax是支持自己上传cover page的。但是只支持docx的格式。
PamFax会强制要求输入text作为cover page message。
因为如果用自己的cover page, 所写文字是不会加到cover page上的。
之后我们再上传真正需要传真的内容就可以了。
这样,我们既可以选择我们指定的cover page,同时我们的cover page也会作为第一页传输过去。

怎样配置DDoS deflate

2018年9月11日 由 Amon 没有评论 »

参考:https://www.cnblogs.com/xuepython/p/6780789.html
参考:http://www.yishimei123.com/network/28.html

下载:http://www.inetbase.com/scripts/ddos/

DDoS deflate 工作原理

每分钟检测一次IP连接状况,当某些IP连接超过配置脚本限制的连接数,程序会自动禁止这些IP一段时间,以达到防御攻击的目的

DDoS deflate官方网站:http://deflate.medialayer.com/

Installation 安装

wget http://www.inetbase.com/scripts/ddos/install.sh

chmod 0700 install.sh

./install.sh

Uninstallation 卸载

wget http://www.inetbase.com/scripts/ddos/uninstall.ddos

chmod 0700 uninstall.ddos

./uninstall.ddos

检查是否遭到ddos攻击命令

netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -n

DDoS deflate的默认配置位于/usr/local/ddos/ddos.conf ,内容如下:

##### Paths of the script and other files

PROGDIR=”/usr/local/ddos”

PROG=”/usr/local/ddos/ddos.sh”

IGNORE_IP_LIST=”/usr/local/ddos/ignore.ip.list” //IP地址白名单

CRON=”/etc/cron.d/ddos.cron” //定时执行程序

APF=”/etc/apf/apf”

IPT=”/sbin/iptables”

##### frequency in minutes for running the script

##### Caution: Every time this setting is changed, run the script with –cron

##### option so that the new frequency takes effect

FREQ=1 //检查时间间隔,默认1分钟

##### How many connections define a bad IP? Indicate that below.

NO_OF_CONNECTIONS=150 //最大连接数,超过这个数IP就会被屏蔽,一般默认即可

##### APF_BAN=1 (Make sure your APF version is atleast 0.96)

##### APF_BAN=0 (Uses iptables for banning ips instead of APF)

APF_BAN=1 //使用APF还是iptables。推荐使用iptables,将APF_BAN的值改为0即可。

##### KILL=0 (Bad IPs are’nt banned, good for interactive execution of script)

##### KILL=1 (Recommended setting)

KILL=1 //是否屏蔽IP,默认即可

##### An email is sent to the following address when an IP is banned.

##### Blank would suppress sending of mails

EMAIL_TO=”root” //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可

##### Number of seconds the banned ip should remain in blacklist.

BAN_PERIOD=600 //禁用IP时间,默认600秒,可根据情况调整

试用了一会,感觉还不错,比我以前用的分析nginx日志封IP的脚本要好些,假如几个虚拟主机使用不同的网站日志,就必须运行几个分析日志的脚本,

这个脚本就用一个就可以把整个服务器保护起来了。但这个也存在一些问题,刚开始的时候把mysql服务器给封掉了,搞的我手忙脚乱的解封,

然后把mysql服务器IP添加白名单,谁知过会他过了段时间又把白名单删除了,又给mysql服务器封了,不得以卸载了一次。

研究了一下代码才发现,他禁止的IP也添加到白名单里,然后解封的时候通过tmp目录里的unban.xxxxx文件将白名单里禁止的IP再删除,

这样这个IP就不再受保护。所以我把mysql服务器IP添加白名单之后程序根据这个BAN_PERIOD=600 参数在10分钟后删除,所以就出现了你恢复他继续封的怪圈,白名单设置文件应该和禁止解禁这个IP记录文件分开就好了。

使用心得:

安装后第一时间要将白名单设置好,最好观察一段时间看是不是正常,以免一些和服务器需要保持连接的IP被封,比如mysql服务器,rsync备份服务器等等,这些机器往往都需要和网站服务器保持大量连接

怎样部署firewalld

2018年9月11日 由 Amon 没有评论 »

参考:https://blog.csdn.net/u011846257/article/details/54707864
参考:https://blog.csdn.net/cool_summer_moon/article/details/78744009
参考:http://www.itlnmp.com/401.html
参考:https://blog.csdn.net/Tiger_lin1/article/details/74905433
参考:http://www.cnblogs.com/archoncap/p/5402983.html

【基本操作】

启动:

systemctl start firewalld

停止:

systemctl stop firewalld

重启:

systemctl restart firewalld.service 

状态:

systemctl status firewalld

禁用:

systemctl disable firewalld

【端口配置】

开启80端口:

firewall-cmd --zone=public --add-port=80/tcp --permanent

命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

修改/etc/firewalld/zones/public.xml文件,配置完毕后需要重新载入防火墙。

【禁止IP】

禁止单个IP:

firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='123.123.123.123' reject"

【重新载入】

firewall-cmd --reload

2、配置firewalld

查看版本:$ firewall-cmd –version

查看帮助:$ firewall-cmd –help

查看设置:

显示状态:$ firewall-cmd –state

查看区域信息: $ firewall-cmd –get-active-zones

查看指定接口所属区域:$ firewall-cmd –get-zone-of-interface=eth0

拒绝所有包:# firewall-cmd –panic-on

取消拒绝状态:# firewall-cmd –panic-off

查看是否拒绝:$ firewall-cmd –query-panic

更新防火墙规则:# firewall-cmd –reload

# firewall-cmd –complete-reload

两者的区别就是第一个无需断开连接,就是firewalld特性之一动态添加规则,第二个需要断开连接,类似重启服务

将接口添加到区域,默认接口都在public

# firewall-cmd –zone=public –add-interface=eth0

永久生效再加上 –permanent 然后reload防火墙

设置默认接口区域

# firewall-cmd –set-default-zone=public

立即生效无需重启

打开端口(貌似这个才最常用)

查看所有打开的端口:

# firewall-cmd –zone=dmz –list-ports

加入一个端口到区域:

# firewall-cmd –zone=dmz –add-port=8080/tcp

若要永久生效方法同上

打开一个服务,类似于将端口可视化,服务需要在配置文件中添加,/etc/firewalld 目录下有services文件夹,这个不详细说了,详情参考文档

# firewall-cmd –zone=work –add-service=smtp

移除服务

# firewall-cmd –zone=work –remove-service=smtp

重新载入以生效