If you ever had a problem with your Synology DiskStation, you might have stumbled upon the emergency telnet access or even the serial port on the PCB.
Or maybe you just wanted to set it (or XPEnology) up and needed the root
password to configure a static IP in order to access the web based setup.
But what is the password?
Luckily, Gui Ambros took a look at the GPL’ed source code and made a small C snippet to generate that password.
It is based on the current day and month.
The structure is like this:
- Current month in hexadecimal, lower case (Jan:
1
, Feb:2
, … , Oct:a
, Nov:b
, Dec:c
) - Current month in decimal, 2 characters, zero padded (
01
,02
, …,11
,12
) - Minus (
-
) - Current day of the month in hex, 2 characters, zero padded, lower case (
01
,02
, …, 10:0a
, …, 30:1e
, 31:1f
) - Greatest common divisor between month and day, 2 characters, zero padded (
01
, …,12
)
Here is a small Python snippet to calculate today’s password:
from datetime import date
import fractions
today = date.today()
m = today.month
d = today.day
print("%x%02d-%02x%02d" % (m, m, d, fractions.gcd(d, m)))
And if you look at the source code of this page, you’ll find the JavaScript which calculates the code displayed above.
101-0101
. After a bootup, the time might be reset to 1 January 1970.By the way: This password doesn’t work for SSH after you’ve setup your Synology. After the setup, the root
password is that of your admin
user.