2017年12月

[更新]assl.space:又一个AlphaSSL 免费泛域名证书申请网站

更新:2018.01.04:增加英文站点。

  • 忠告!!!

写在前面:
为什么这次要来个忠告呢?因为总有傻X在啊! 当然,不是要骂人,咱都是好孩子嘛!
经过多次观察,免费放出这个泛域名SSL证书的地方大多都关闭了,就是因为有些人,撸撸撸撸...不带脑子的撸呗。曾经有大佬开放申请了几天,居然有傻X同一个域名一天内就申请了9张证书.... 听到这,真的就很无语了,你说你多拿几个不同的域名申请下,确实有需要使用也还说得过去,但是你一个域名就申请那么多,有啥用啊?尼玛一张证书有效期就一年,难道你申请9张,就会给你合在一起算时间?带上脑子想想吧!
好了吐槽一下下了啦,好孩子乖巧状!
说明:证书有效期一年,免费一年,到期后重新签发,替换原有证书即可(虽然不知道一年后还有么?)!当然如果你是比较正式的使用,建议正规购买,毕竟现在SSL证书也不贵了,单域名也就几十块钱而已!再者说,如果是一个公司的话,还差那点钱吗?
还是那句话,有需要再撸吧,不要搞得寸草不生!!!

  • 申请地址

申请地址:assl.space
新增英文站点:en.assl.space

  • 准备工作

至于如何生成证书请求文件CSR、关闭域名whois保护或者创建admin@xxx.com格式的邮箱帐号,这些基本工作,这里就不再详细赘述了。具体可以参考之前的文章:[更新] しら SSL 免费 AlphaSSL 野卡(通配符、泛域名证书)Wildcard SSL 申请

  • 申请步骤

先说一下,这个网站的模版,和最初国外大佬放出的申请站模版几乎一致,只是文字是俄语了,请先自带翻译。(博主在下面教程截图中也附带了部分文字说,再看不懂那就真没辙了!)
教程中需要用到的邮箱,建议都使用国外邮箱!
一、打开网站:assl.space 按照截图填写接收SSL证书的邮箱以及CSR等信息
20171231223333.jpg

二、点击确认申请后并检查域名是否正确
20171231233524.jpg

三、等待自动刷新获取域名whois邮箱,并选择接收邮箱,建议使用whois邮箱接收订单、验证链接
20171231225140.jpg

四、等待订单提交完成,出现以下类似界面即申请成功
20171231225447.jpg

  • 收取验证邮件、获得证书

先进入你的whois邮箱或者admin@xxx.com等格式的邮箱帐号,查看接收到的订单邮件,点击里面的连接进行验证确认!
订单确认完成后,稍等一会儿你设置的接收SSL证书的邮箱就会收到包含证书的邮件了!
具体操作方法,请参考前面的文章!

  • 结个尾?

也没什么好说的了,就是这样吧,不要什么都搞得寸草不生的样子,还是根据实际需求来吧!本身就是别人免费放出的,如果都这么撸到费了,以后还会有吗?且用且珍惜吧!

Linux下shell脚本:自动每日备份网站文件和数据库上传FTP空间

  • 前言

服务器、vps,难免会遇到各种问题,丢失数据,则必然痛心疾首啊!!!
数据无价,so建议养成定期备份的习惯!而且,要多备份几份,本地、网盘、FTP空间等,都多保存几份!
这里,就为大家带来一个linux下,利用lftp作为上传方式的shell脚本,配合系统crontab定时计划任务实现每天自动备份网站数据,并上传到FTP空间!

  • 备份脚本

脚本内容如下:

!/bin/bash

建议使用root账户登录执行本脚本

赋予脚本执行权限 chmod +x BackupToFtp.sh

修改相关账户和路径配置

开始

MYSQL_USER=root #mysql用户名
MYSQL_PASS=123456 #mysql密码
FTP_USER=ftpuser #ftp用户名
FTP_PASS=123456 #ftp密码
FTP_IP=123.123.123.123 #ftp地址
FTP_backup=backup #ftp上存放备份文件的目录,请提前自己在ftp空间上创建
WEB_DATA=/home/www #要备份的网站数据目录
MYSQL_PATH=/usr/local/mysql #MYSQL安装路径
DBNAME=dbname #要备份的数据库名称
LOCALbackup_path=/home/backup #本地备份文件存放路径

结束

安装FTP LFTP命令工具

echo "#---------------------------------------------------------------------#"
echo "正在ftp lftp客户端工具...."
echo "默认适用CentOS,Debian等系统请先修改本脚本相应位置命令"
echo "若已经安装,请忽略即可"
echo "installing Ftp Lftp...."
echo "#---------------------------------------------------------------------#"
yum install -y ftp lftp

apt-get install-y ftp lftp

设置数据库备份文件的名字和旧数据库备份文件的名字(旧:默认为5天前的)

DataBakName=Data_$(date +"%Y%m%d").tar.gz
OldData=Data_$(date -d -5day +"%Y%m%d").tar.gz

设置网站数据备份文件的名字和旧网站数据备份文件的名字(旧:默认为5天前的)

WebBakName=Web_$(date +%Y%m%d).tar.gz
OldWeb=Web_$(date -d -5day +"%Y%m%d").tar.gz

删除本地5天前的备份数据

echo "#---------------------------------------------------------------------#"
echo "自动删除本地5天前的备份数据文件...."
echo "Auto delete local backup data files 5 days ago...."
rm -rf $LOCALbackup_path/Data_$(date -d -5day +"%Y%m%d").tar.gz $LOCALbackup_path/Web_$(date -d -5day +"%Y%m%d").tar.gz
cd $LOCALbackup_path

导出需要备份的数据库为数据库SQL格式

echo "#---------------------------------------------------------------------#"
echo "正在导出需要备份的 $DBNAME 数据库sql备份文件...."
echo "Exporting you set database:$DBNAME to SQL file...."
$MYSQL_PATH/bin/mysqldump -u$MYSQL_USER -p$MYSQL_PASS $DBNAME > $LOCALbackup_path/$DBNAME.sql

压缩数据库文件并删除sql文件

echo "正在压缩打包数据库sql备份文件...."
echo "Tar the Database SQL file to tar.gz And delete SQL file...."
tar zvcf $LOCALbackup_path/$DataBakName $LOCALbackup_path/*.sql
rm -rf $LOCALbackup_path/*.sql

压缩网站数据

echo "#---------------------------------------------------------------------#"
echo "正在压缩打包网站程序文件...."
echo "Tar the WebData file to tar.gz...."

tar zvcf $LOCALbackup_path/$WebBakName $WEB_DATA

cd $WEB_DATA
tar zvcf $LOCALbackup_path/$WebBakName *

上传到FTP空间

echo "#---------------------------------------------------------------------#"
echo "数据打包完成,开始登录FTP空间...."
echo "Start to login to FTP...."

先进入备份文件路径

cd $LOCALbackup_path

默认方式:镜像同步,与下面的单个方式任选其一

------------------------------------------------------------------

lftp -u $FTP_USER,$FTP_PASS -e "mirror -R --only-newer $LOCALbackup_path $FTP_backup" $FTP_IP << EOF
bye
EOF

------------------------------------------------------------------

单个文件上传方式,请取消横线内的注释符#并注释掉前面的默认方式

------------------------------------------------------------------

lftp -u $FTP_USER,$FTP_PASS $FTP_IP << EOF

lftp << EOF

open ftp://$FTP_USER:$FTP_PASS@$FTP_IP

cd $FTP_backup

echo "正在上传数据库备份文件...."

echo "Uploading Database file...."

put $DataBakName

echo "正在上传网站程序备份文件...."

echo "Uploading WebData file...."

put $WebBakName

bye

EOF

------------------------------------------------------------------

echo "#---------------------------------------------------------------------#"
echo "上传所有备份文件完成..."
echo "Upload all backup files complete..."
echo "请登录FTP空间查看!"
echo "Please login to the FTP check!"
echo "#---------------------------------------------------------------------#"
脚本内容结束
emmm...请原谅博主英语比较差,大部分都是机翻过来的,懒得校正了!
20171229224346.jpg

  • 自动备份

配合系统crontab定时计划任务实现每天自动备份
命令:crontab -e
添加定时计划内容:00 00 * /BackupToFtp.sh
(其中00 00为时间,格式:分/小时,可自行修改,例如:30 23,就是每天23.30运行这个脚本,/BackupToFtp.sh为脚本文件存放路径)

  • 结束语

结束语就是,没有结束语!希望能帮到有需要的人吧!就是这样!

CentOS系统的VPS首次如何分区并挂载数据盘

  • 一、写在前面

请先远程SSH登录上Centos服务器后,进行如下操作
提醒:本文主要讲如何挂载一个未使用的数据盘,挂载操作会清空数据,请确认挂载盘无数据或者未使用
如果你需要挂载已经分区有数据的硬盘,请直接看磁盘挂载部分

  • 二、查看并列出所有磁盘

命令: ll /dev/disk/by-path
提示:如果无法确认数据盘设备名称,请使用df -Th命令来确认系统盘的名称,从而排除挂错盘的情况。
20171228201715.jpg
查看你的 vps 的数据盘,命令:
fdisk -l
一般 vps 的系统盘名称是 /dev/vda 或者 /dev/sda(主要是 vps 环境不同),数据盘名称是 /dev/vdb 或者 /dev/sdb,如果你的 vps 有两块或者多块数据盘,那么名称就是 vdc、vdd... 依次类推

  • 三、创建磁盘分区

命令: fdisk /dev/vdb #注意设备名称/dev/vda根据你的VPS实际情况更换
20171228213923.jpg
分区后的磁盘应该是 / dev/vdb1(为方便新手,默认我们只分一个区,磁盘分多个区则是 vdb1 vdb2...),所以在后面的挂载和卸载、格式化命令中注意下分区名称到底是 vdb1、sdb1、vdc1、vdd1 等。

  • 四、格式化磁盘分区

命令: mkfs.ext4 /dev/vdb1 #磁盘格式请根据你的需求自行选择ext3、ext4
20171228214134.jpg

  • 五、挂载分区

磁盘的挂载、卸载命令:mount、umount
挂载之前请确定你需要挂载磁盘的目录,没有可以使用命令:mkdir 创建
创建挂载目录:mkdir /data #这里我们就在根目录下创建data目录来挂载
挂载磁盘分区:mount /dev/vdb1 /data #/data为磁盘要挂载的目录
卸载磁盘分区:umount /dev/vdb1

  • 六、查看分区挂载

查看分区挂载命令:df
加上参数-Th可以看到分区格式等详细信息:df-Th
20171228215404.jpg

  • 七、写入fstab

挂载磁盘已经完成,但是如果直接重启系统,下次又得使用mount命令重新挂载了!
所以,需要将挂载信息写入fstab,让系统开机自动挂载!
命令: echo "/dev/vdb1 /data ext4 defaults 0 0" >> /etc/fstab
查看fstab是否写入成功:
cat /etc/fstab
20171228220113.jpg

  • 写在最后

同样,老手飘过,新手操作有风险,操作需谨慎!

WDCP建站系统将网站数据转移到数据盘

  • 错误情况

在使用vps服务器建站的时候,相信一定有很多人使用WDCP(Wdlinux Control Panel:http://www.wdlinux.cn/wdcp/)来作为建站系统,可以方便的搭建建站需要的环境(这里就不多叙述如何安装等问题了)!
但是在使用过程中就会出现一些问题,这里要说的是数据(系统)问题:系统异常无法启动(只能重装),导致数据丢失(网站数据都在系统盘)!!!
至于为什么会出现这样的问题呢???
先讲讲主要原因:
一、大部分国内vps服务器提供商,都提供了已经集成WDCP环境的vps系统模版,众所周知WDCP默认所有环境文件以及网站数据文件都放在 /www 目录下的,而这样的就导致所有数据都放在系统盘上面,进而导致数据丢失!
二、部分新手使用vps建站,而根本不会去在乎数据到底放在那个盘上面!并且有的新手根本就不知道自己买的vps还有数据盘一说(根本就没有挂载数据盘)。
PS:别问我为什么知道,很早之前博主就犯过傻!

  • 解决办法

一、挂载数据盘
首先先查看,你的vps的数据盘,命令:
fdisk -l
一般vps的系统盘名称是/dev/vda或者/dev/sda(主要是vps环境不同),数据盘名称是/dev/vdb或者/dev/sdb,如果你的vps有两块或者多块数据盘,那么名称就是vdc、vdd...依次类推
20171228200157.jpg
将数据盘挂载到一个目录(用于转移www目录下的数据),挂载之前磁盘需要分区格式化,这里请参考另外一篇文章:CentOS 系统的 VPS 首次如何分区并挂载数据盘
分区后的磁盘应该是/dev/vdb1(默认我们只分一个区,磁盘分多个区则是vdb1 vdb2...),所以在后面的挂载和卸载命令中注意下分区名称到底是vdb1、sdb1、vdc1、vdd1等。
这里我们先在根目录下创建一个目录wwwbak:
mkdir /wwwbak
挂载磁盘分区到/wwwbak目录:
mount /dev/vdb1 /wwwbak
二、停止服务
停止mysql apache nginx ftp wdcp管理面板 等服务:
**service mysqld stop
service pureftpd stop
service httpd stop
service nginxd stop
service wdapache stop**
三、转移数据到数据盘
将原本/www目录下的所有数据转移到/wwwbak,前面已经将数据盘分区格式化后挂载到了/wwwbak目录下,这也就是将数据都转移到了数据盘上面了!
命令:
mv -i /www/* /data #使用此命令后,命令行界面就会卡住不动,数据已经开始转移,完成后即可操作
或者
mv -i /www/* /data & #使用此命令后,会将转移数据的操作挂在后台运行,命令行界面依然可以操作,这就需要使用命令ps -aux查看mv -i这个进程,等停止了再操作后面的步骤。所以建议新手使用前面一个命令!
四、卸载数据盘分区的挂载
等待数据转移结束后,将已经挂载到wwwbak目录的数据盘分区/dev/vdb1卸载掉,命令:
umount /dev/vdb1
五、挂载数据盘到/www目录
为什么呢?前面也已经说了,默认wdcp的所有文件都在/www目录下,如果更换为别的目录名称,那么wdcp环境等都将无法运行,这里其实就是将数据盘挂载到了www目录下,不管以后你再添加站点什么的,所有数据都是保存在了数据盘上面!就不怕系统损坏而丢失数据了!
命令:
mount /dev/vdb1 /www
这个时候/wwwbak目录就没有什么用了,可以删除了
并将挂载信息写入fstab,让系统开启自动挂载,命令:
echo "/dev/vdb1 /www ext4 defaults 0 0" >> /etc/fstab
注意,其中ext4是磁盘分区的格式,根据你的实际操作来决定,具体可以参考另外一篇磁盘挂载的文章!CentOS 系统的 VPS 首次如何分区并挂载数据盘
六、重启服务
重启服务,并查看网站以及WDCP管理面板是否正常运行
**service mysqld start
service pureftpd start
service httpd start
service nginxd start
service wdapache start**

  • 结束语

至此,我们就将WDCP系统和网站数据都转移到了数据盘上了!即便系统出现异常无法启动等问题,也不用担心网站数据会丢失了!
如果你是老手,就可以忽略本文了!当然如果你是自己手动安装wdcp环境,博主也建议你先将数据盘挂载到/www目录,再来手动安装wdcp建站系统!
还有就是,操作有风险,新手在操作前,注意将网站文件和数据库都先备份到本地!
.

Linux下ssh登录报错:Permission denied, please try again的解决方法

  • 问题描述

1.当你在linux下ssh远程登录另外一台服务器时,如果是 root 用户,即便正确输入了密码,也会出现类似如下错误信息:
Permission denied, please try again.
SSH 服务器拒绝了密码,请再试一次。
但非root用户可以正常登录,而且root用户通过本地管理终端登录也正常。
20171225222343.jpg
2.linux下远程登录其他服务器方法:
ssh root@123.123.123.123 -p 1234 #root为登录用户,要远程登录的服务器IP 123.123.123.123,-p后面为ssh远程端口,如默认22则无需添加

  • 问题原因

问题原因:
一、账户或者密码输入错误
二、要远程登录的服务器SSH 服务配置了禁止root用户登录策略。

  • 解决办法

说明:相关策略可以提高服务器的安全性。请自行基于安全性和易用性权衡后,再确定是否需要修改相关配置。
解决方法:
一、检查并使用正确的账户密码登录
二、开启root账户ssh登录权限
1.本地登录服务器
查看ssh配置文件:/etc/ssh/sshd_config(以CentOS6.9为例)
cat /etc/ssh/sshd_config
检查ssh配置文件中是否包含以下内容:
PermitRootLogin no
2.修改ssh配置文件
vi /etc/ssh/sshd_config
将PermitRootLogin no参数修改为 PermitRootLogin yes 或者整个删除或注释(在最开头添加 # 号)整行配置。
3.保存文件,并重启ssh服务
重启ssh服务命令(以CentOS6.9为例):
service sshd restart
4.参数说明
A.未配置该参数,或者将参数值配置为 yes (默认情况),都允许 root 用户登录。只有显示的设置为 no 时,才会阻断 root 用户登录。
B.该参数只会影响用户的SSH登录,不影响用户通过本地管理终端等其它方式登录系统。
C.操作有风险,在修改之前建议进行文件备份。

.


Warning: in_array() expects parameter 2 to be array, null given in /www/users/HK1590886/WEB/usr/plugins/TopLamuLeimu/Plugin.php on line 85