それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

ubuntu で apt インストールした mariadb(mysql) のroot パスワードがわからないので初期設定を探した

ubuntu 20.04 で mariadb-server

mariadb-server をいれたけど、デフォルトのユーザーパスワードがわからない!

mysql をインストールしたときは、ユーザーパスワードの生成プロンプトが出てきたのに、最近のapt はプロンプト出さない傾向があるんですよ、とくにserver版のやつ

インストール済みのmariadb に接続する

uid 1 で、 mysql ユーザーもroot でログインすれば、パスワードがいらない。

sudo mysql -u root 

試してみた

### ubuntu 一般ユーザー→だめ
ubuntu@primary:/var/www$ mysql
ERROR 1698 (28000): Access denied for user 'ubuntu'@'localhost'

### ubuntu 一般ユーザーが mysql ユーザー root として → だめ
ubuntu@primary:/var/www$ mysql -u root
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
### 上記の -p でパスワードプロンプト、、、パスワードが分からない。
ubuntu@primary:/var/www$ mysql -u root -p
Enter password:
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
### sudo でやってみても、パスワードがないので詰まる。 未入力の状態でEnter → つながる!
ubuntu@primary:/var/www$ sudo mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 44
Server version: 10.1.44-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

というわけで、 デフォルトはパスワード=なしでログイン可能ですよね。これってある意味やばいので注意が必要です。ただし、sudo 出来ない限りは大丈夫。 sudo ユーザーを増やしている場合は注意が必要ですね。

インストールが終わったら

初期化とユーザー登録と権限設定ですね。

MySQLの基本的コマンド(ユーザ・DB・権限)の設定削除作成の早見表 - それマグで!

ランダムなひらがな文字列を生成する-ruby でひみつの質問

ひみつの質問の回答をジェネレーターで作る

(1..10).each do
  puts (1..20).map{|e| (0x3042+Random.new.rand(0..82)).chr(Encoding::UTF_8)}.join
end

実行サンプル

ランダムな文字列を生成するのである。

/usr/bin/ruby himitu.rb
ふぉゔゃまゅめゅいごなこきむてぎなざさへ
ぽぽはとごだんむごよぇねとほうそわをゎつ
ねぽねなやしいづびぽぉばぐひごろへでおよ
がづつぷほぼゑたやかゆぺえへまよもいおぇ
りねっせぶぢけぺねあとほごせよんうゐだひ
ろざゆぃくばへごつちきゎそぱたついさげへ
ずじへめやむぺゐふぃまえしづめゃおゅなし
ふもぺょけにゃぜつかぢきいぎけのすむぉで
りこぐぶやをのうぐぱにずぬえぞはめぶゑち
もとをぷゅぱひよぱぢずゃぽんさけまぼしけ

仕組み

UTF-8 で 0x3042 が’あ’

0x3042 + ランダムな数字

数字.chr( Encoding::UTF_8 ) で、文字コードの数字を、文字に変換

あとはこれを必要文字数文繰り返す。

バリデーションで弾かれる可能性がある。

'ゔ', 'ゕ', 'ゖ' の3つの文字は、バリデーションで「かな」ではないと弾かれる可能性が高い。

世間に出回る、ひらがなチェック正規表現"regex": /^[ぁ-んー\s]+$/ になっているので 、’んー’以降に存在する 'ゔ', 'ゕ', 'ゖ'はひらがなとして認識されないかもしれない。

関連資料

秘密の質問ジェネレータを、pythonでぱぱっと - それマグで!

ssh の秘密鍵は何ビットやFingerprintのプロパティ情報を見る

SSH秘密鍵が何ビットだったか忘れた

随分前に作った秘密鍵なので、これが1024 / 2048 なのかすっかり忘れていました。

ssh-keygen で秘密鍵の情報を確認

秘密鍵の情報をみるには、ssh-keygenコマンドでやります。

ssh-keygen -l -f ~/.ssh/id_rsa

このコマンドを使えば、ビット数やRSAキーかどうか、Finterprintなどが表示できます。

実行例

takuya@~$ssh-keygen -l -f ~/.ssh/id_rsa
2048 SHA256:ikqYC8kkcxFABO/1+uEDhlZqm9Czt takuya@host (RSA)

これで、秘密鍵の指紋(Finterprint)が確認でき、キーの名前や、バイト数(上記の例では2048) を調べることが出来ます。

参考資料

How To: Inspect SSH Key Fingerprints