P.B. Posted October 11, 2015 Posted October 11, 2015 hi I got a problem with metasploit [-] Failed to connect to the database: PG::InsufficientPrivilege: ERROR: permission denied for relation workspaces: SELECT "workspaces".* FROM "workspaces" WHERE "workspaces"."name" = 'default' ORDER BY "workspaces"."id" ASC LIMIT 1 how can i fix this please Quote
cooper Posted October 12, 2015 Posted October 12, 2015 How did you get to this? It would seem that your Postgres install is running, but the account you use to access it doesn't have sufficient rights to the Metasploit schema. Your current state is this: - The database is running. - The account you use to access it is valid and the password you use for it is correct. - The schema you're accessing is available to you/the current account. - The "workspaces" table exists within the schema you're accessing You could log in as the postgres user and try "grant select on workspaces to <loginname>" but I suspect this will only fix it for the one table and more tables will be needing this treatment. What, if anything, did you do to get to this point? Quote
rfc Posted November 24, 2015 Posted November 24, 2015 I was running into the same issue and it turned out the database was already owned by the msf user. Changing the msf database ownership to user msfgit (like in the metasploitminute video) resulted in the permission error for relation workspaces that you are getting. I wanted to avoid trying to change ownership for everything and missing something but I was able to fix it two different ways: use the msf user with the existing msf database or create a new database for user msfgit. Option 1 - Use Existing Database With User msf 1. Change the msf database ownership back to the msf user if needed and optionally set the msf user password if you don't know it: su - postgres psql ALTER DATABASE msf OWNER TO msf; ALTER USER msf WITH PASSWORD 'msf'; \q exit Update database.yml: production adapter: postgresql database: msf username: msf password: msf host: 127.0.0.1 port: 5432 pool: 75 timeout: 5 Option 2 - Use New Database With New User Create msfgit database for user msfgit: su - postgres createuser msfgit -P -S -R -D createdb -O msfgit msfgit Update database.yml: production adapter: postgresql database: msfgit username: msfgit password: msf host: 127.0.0.1 port: 5432 pool: 75 timeout: 5 Maybe you are having a different issue but hopefully that helps. Quote
digip Posted November 24, 2015 Posted November 24, 2015 (edited) If your using Kali 2.0 apt-get update && apt-get upgrade Then try: service postgresql start service metasploit start service metasploit stop If the above are ok, then do: msfd init msfd will initialize the database for the first time if you haven't ever used metasploit yet. Then try msfconsole and you should be fine. Personally I'd go with Kali since metasploit is pre-installed. community edition was not shipped by default with 2.0 though, but you can register and install it afterwards on your own. https://community.rapid7.com/community/metasploit/blog/2015/08/12/metasploit-on-kali-linux-20 https://www.offensive-security.com/metasploit-unleashed/msf-community-edition/ Edited November 24, 2015 by digip Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.