MetaSploit не подключается к базе данных на OSX после установки Metasploit на отдельную учетную запись
Прежде чем начать, я хотел бы сообщить вам, что у меня есть MacBook Pro (версия 10.13), а не Linux или Windows.
В течение последних полутора лет у меня на компьютере был установлен metasploit. У него не было абсолютно никаких проблем, и я использовал его довольно часто. У меня была установлена только инфраструктура metasploit в моей личной учетной записи, и недавно я решил установить ее на свою учетную запись студента (на том же компьютере), поэтому я скачал пакет (.pkg) для инфраструктуры metasploit и установил его. Все это работало безупречно, и я смог запустить msfconsole, я проверил с помощью db_status, и он сказал, что он подключен. Все идеально. Но потом я вошел в личный кабинет, попытался запустить msfconsole, и он не работал, я не помню подробно, но он спросил меня
LOG: система базы данных выключена Если ваша база данных повреждена, вы бы ее повторно инициализировали?:
В любом случае, я сейчас в другой ситуации. Я полностью удалил Metasploit & PostgreSQL с обеих своих учетных записей, а затем установил их обратно ТОЛЬКО на личную учетную запись. Я установил метасплоит; все гладко. Я иду, чтобы запустить msfconsole, а затем это вывод:
Aryamans-MacBook-Pro:~ admin$ msfconsole
[-] Failed to connect to the database: FATAL: password authentication
failed for user "msf"
[*] Starting the Metasploit FrameworK console.../
У меня установлен PostgreSQL; Последняя версия. И когда я набираю db_status в терминале, это то, что я получаю:
msf > db_status
[*] postgresql selected, no connection
Это было проблемой в течение приблизительно 4 дней, и я был бы очень рад, если есть решение для этого.
Не стесняйтесь задавать мне любые вопросы о чем-либо еще в деталях, я предоставлю вам информацию.
3 ответа
Я только что узнал, как ее решить, это была просто проблема с базой данных, поэтому все, что нужно было сделать, это воссоздать базу данных, которую использует Metasploit Framework, используя Metasploit. Вот команды:
msfdb delete
msfdb init
msfconsole
Вы должны перейти в вашу папку следующим образом:
cd /opt/metasploit-framework/bin
ls
./msfupdate
./msfdb
Управление базой данных Metasploit Framework
msfdb init # initialize the database
msfdb reinit # delete and reinitialize the database
msfdb delete # delete database and stop using it**strong text**
msfdb status # check database status
msfdb start # start the database
msfdb stop # stop the database
msfdb restart # restart the database
./msfdb init
Found database config at /Users/ME/.msf4/database.yml, do you want to overwrite it?: yes
Готово!
1. Менеджер пакетов Homebrew включает списки launchctl для автоматического запуска. Для получения дополнительной информации запустите brew info postgres.
Начать вручную:
pg_ctl -D / usr / local / var / postgres start
Остановить вручную:
pg_ctl -D / usr / local / var / postgres stop
Начать автоматически:
Msgstr "Чтобы запустить, запустите postgresql сейчас и перезапустите при входе в систему:"
brew services start postgresql
2.Инициализация базы данных Metasploit PostgreSQL. После запуска и запуска PostgreSQL нам нужно создать и инициализировать базу данных msf.
msfdb init
Иногда у вас могут возникнуть проблемы с базой данных msf, потому что вы предварительно настроили. Я рекомендую вам выполнить следующие шаги, если предыдущие не работают.
msfdb удалить
msfdb init
msfconsole
Удачи!!