大多數人在kali下初次使用metasploit工具搜索模塊時都會看到“沒有連接數據庫,使用慢搜索”,這對於有強迫症的人來說不能讓他存在啊。最初我也遇到了,去百度一下,發現很多方法不經過程讓人頭暈,操作一頓還不見效。
其實主要問題在於用戶初次使用時並沒有創建一個database,沒有這個database.yml你就沒得連啊。所以需要我們先創建一個,能百度到一些自己create的方法,但不方便(個人覺得),推薦兩種簡單的方法:
方法一:
第一步當然還是啓動postgresql數據庫服務.
start postgresql start
第二步,初始化msf的數據庫,在/usr/share/metasploit-framework/config下自動生成一個database.yml文件
msfdb init
這一過程中會讓你輸入口令,而且有點快,這可以忽略,會爲你自動生成一個口令。
執行者兩步之後,打開msf,查看db_status,你已經能看到這樣一條消息了:
[*]postgresql connected to msf
方法二:
其實跟方法一的原理一樣,只是改手動操作了,最初在/usr/share/metasploit-framework/config下有這樣兩個.yml文件:database.yml.example和database.yml.travis,在database.yml.example中會有一些關鍵字段如
adapter:
database:
username:
password:______________________________(空的)
這其實就跟其後綴名一樣,是一個數據庫文件的樣本,在database.yml.travis文件中有詳細的說明,就是你想自定義一個數據庫文件的話可以執行
cp config/database.yml.example config/database.yml
(具體形式取決於你的當前位置),就是複製database.yml.example中的內容到database.yml中,然後自己改password。
注意:下一次啓動系統是也要先開啓postgresql服務,啓動metasploit是纔會自動連接上
總結:
原理就是方法二中所說的需要一個database.yml的文件,具體操作還是推薦方法一。