I won’t bore you with the details, so let’s just say that for some reason I don’t have the owncloud admin password anymore.
I have spend lots of time on owncloud forum and found few more solution. In my point of view the below one is very simple and effective.
- Get the passwordsalt
server owncloud # grep passwordsalt config/config.php 'passwordsalt' => 'ZnuaO2o4s3Qydg5xvR4gk7yZQn7v.L',
- Prepare the “hack”
server owncloud # cd /tmp/ server tmp # wget -c "http://cvsweb.openwall.com/cgi/cvsweb.cgi/~checkout~/projects/phpass/PasswordHash.php" server tmp # wget -c "http://cvsweb.openwall.com/cgi/cvsweb.cgi/~checkout~/projects/phpass/test.php" server tmp # sed -e "s/$t_hasher = new PasswordHash(8, FALSE);/$t_hasher = new PasswordHash(8, CRYPT_BLOWFISH!=1);/g" -i test.php server tmp # sed -e "s/$correct = 'test12345'/$correct = 'admin123'.'ZnuaO2o4s3Qydg5xvR4gk7yZQn7v.L';/g" -i test.php
- Run the test.php file
server tmp # php -f test.php Hash: $2a$08$sIE2IL4xZwADAqpdGeLY7.QOYBC01x7U3IKE/YS6XZ1n.TVd1jnTS Check correct: '1' (should be '1') Check wrong: '' (should be '0' or '') Hash: $P$BdVJYUfc8uplEowbiO3WWPRKXLLLY.. Check correct: '1' (should be '1') Check wrong: '' (should be '0' or '') Hash: $P$9IQRaTwmfeRo7ud9Fh4E2PdI0S3r.L0 Check correct: '' (should be '1') Check wrong: '' (should be '0' or '') Some tests have FAILED
- Update the new password to admin user via MySQL query
root@localhost [(none)]> use owncloud; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed root@localhost [owncloud]> update oc_users set password="$2a$08$sIE2IL4xZwADAqpdGeLY7.QOYBC01x7U3IKE/YS6XZ1n.TVd1jnTS" where uid="admin"; Query OK, 0 rows affected (0.13 sec) Rows matched: 1 Changed: 0 Warnings: 0 root@localhost [owncloud]>
- Now, you have successfully reset your owncloud password, just navigate on your owncloud installation url on browser and login into your admin account using your new password (in my case new password is admin123)