Сколько времени вентиляция отсутствовала? Если время между ним, понижение и когда Вы открыли дверь, дольше, чем, Вы уйдете, температура уже нашла, что это макс., и серверы могут жить ночь.
Попытайтесь сократить тепло, где Вы можете так или иначе:
Премия: найдите случайными низкооплачиваемым образом фаворит, предложите пиццу, сверхурочное время и сон назад для пребывания с открытой дверью.
Убедитесь, что у вас есть shadow и passalgo = sha512 на машине, установите корневой проход на любой пароль, который вы хотите на этой машине, возьмите его из / etc / shadow и поместите в кикстарт. Это не рекомендуется для производственного использования.
Чтобы сделать это программно, используйте библиотеку шифрования выбранного вами языка, которая генерирует файл кикстарта:
RUBY:
'password'.crypt('$6$' + (Base64.encode64(6.times.map{ Random.rand(256).chr }.join)).strip)
PHP:
crypt ('password', '$6$' . base64_encode (openssl_random_pseudo_bytes(6)));
Perl:
crypt ('password', '$6$' . encode_base64 (join '' => map chr (rand (256)), 0..5))
] Python:
crypt.crypt('password', '$6$' + base64.b64encode(os.urandom(6)))
Настоятельно рекомендуется каждый раз использовать случайную соль, как я сделал здесь, особенно если вы используете один и тот же пароль на всех серверах.
РЕДАКТИРОВАТЬ : Python 3:
crypt.crypt("password", crypt.mksalt())
Заменяет вызов os.random
специфическим для крипты mksalt
.
См. Стандартная библиотека Python: crypt : crypt.mksalt ()
: «Возвращает случайно сгенерированную соль указанного метода. Если метод не указан, самый надежный метод доступен как возвращенный методами () используется "
РЕДАКТИРОВАТЬ :
1)« $ 6 $ »для SHA512. Вам нужно будет заменить его на тип шифрования по вашему выбору.
2) Вы также можете преобразовать любой из них в один лайнер, чтобы сделать это из bash.
EDIT (чтобы получить полный ответ , спасибо miken32 и dawud ):
3) Crypt BSD - это другая реализация по сравнению с GNU, поэтому они несовместимы. Если вы хотите использовать это в системах BSD (например, OSX), вы можете использовать версию PHP (с версией PHP> 5.3.0), поскольку она реализует свою собственную функцию crypt () .
Другая альтернатива на Mac следует использовать passlib :
python -c 'import getpass; import passlib.hash; h=passlib.hash.sha512_crypt.hash(getpass.getpass()); print(h if (passlib.hash.sha512_crypt.verify(getpass.getpass("Confirm:"), h)) else "")'
или, с номером по умолчанию glibc. раундов (5000):
python -c 'import getpass; import passlib.hash; h=passlib.hash.sha512_crypt.using(rounds=5000).hash(getpass.getpass()); print(h if (passlib.hash.sha512_crypt.verify(getpass.getpass("Confirm:"), h)) else "")'
Способ создания хешированного пароля описан здесь .
$ python -c 'import crypt; print(crypt.crypt("My Password", "$6$My salt"))'
Причина, по которой он у вас не работает, заключается в том, что вы используете Mac для генерации хеша .
Реализация crypt
отличается от реализации GNU / Linux.
Из справочной страницы crypt (3)
:
Glibc notes
The glibc2 version of this function supports additional encryption
algorithms.
If salt is a character string starting with the characters "$id$" fol-
lowed by a string terminated by "$":
$id$salt$encrypted
then instead of using the DES machine, id identifies the encryption
method used and this then determines how the rest of the password
string is interpreted. The following values of id are supported:
ID | Method
---------------------------------------------------------
1 | MD5
2a | Blowfish (not in mainline glibc; added in some
| Linux distributions)
5 | SHA-256 (since glibc 2.7)
6 | SHA-512 (since glibc 2.7)
So $5$salt$encrypted is an SHA-256 encoded password and
$6$salt$encrypted is an SHA-512 encoded one.
"salt" stands for the up to 16 characters following "$id$" in the salt.
The encrypted part of the password string is the actual computed pass-
word. The size of this string is fixed:
MD5 | 22 characters
SHA-256 | 43 characters
SHA-512 | 86 characters
The characters in "salt" and "encrypted" are drawn from the set
[a-zA-Z0-9./]. In the MD5 and SHA implementations the entire key is
significant (instead of only the first 8 bytes in DES).
Расширение $ id $
не поддерживает существует в OSX crypt
Для SHA512 вам необходимо сгенерировать хеш на машине GNU / Linux.
приведенный выше пример Python является неполным:
crypt.crypt('password', '$6$' + base64.b64encode(os.urandom(6)))
Рабочий однострочник будет выглядеть следующим образом:
python -c 'import crypt,base64,os; print(crypt.crypt("password", "$6$" + base64.b64encode(os.urandom(6))))'
В Python 3
python -c 'import crypt; print(crypt.crypt("password", crypt.mksalt()))'
amaxwebhu amatsha indawo apho unokufumana khona ngakumbi ekwenzeni iphasiwedi ekhawulezileyo yokhetho lokukhaba: --iscrypted
:
http: //pykickstart.readthedocs. io / en / latest / kickstart-docs.html # rootpw
python -c 'ukungenisa i-crypt; shicilela (crypt.crypt ("Iphasiwedi yam", "$ 6 $ Ityuwa Yam"))
Oku kuyakuvelisa sha512 crypt yephasiwedi yakho usebenzisa ityiwa oyinikiweyo.