• 線上工具
  • - 計算器
    • 字元計數
  • - 下載
    • TikTok 下載
    • 抖音下載
  • - 網路工具
    • BASE64
    • Base64 轉圖片
    • 圖片轉 Base64
    • URL 編碼
    • JavaScript
    • 時間戳
    • Unicode 轉換器
    • JSON 格式化
    • 修改副檔名
    • 製作列表
    • CSS 優化器
  • - 加密工具
    • MD5 加密
    • 隨機生成器
  • - 圖像工具
    • 圖像壓縮
    • QR 碼生成器
    • QR 碼識別器
    • 壁紙預覽
    • 圖片 EXIF
  • - 資訊表
    • 血型遺傳
    • 服裝尺寸
    • app.tool_clock
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
Linux用MySQL/MariaDBセキュリティベストプラクティス12件について
2021-12-31

MySQLは世界で最も流行しているオープンソースデータベースシステムであり、MariaDB(MySQLブランチ)は世界で最も成長しているオープンソースデータベースシステムである。MySQLサーバをインストールした後、デフォルトの構成では安全ではありません。データベースのセキュリティを確保することは、通常、汎用データベース管理の基本的なタスクの1つです。

これは、攻撃者がシステムの任意の部分の脆弱性をスキャンし、データベースが過去に重点ターゲット領域だったため、Linuxサーバ全体のセキュリティを強化し、向上させるのに役立ちます。一般的な例はMySQLデータベースのrootパスワードの強制解読です。

このガイドでは、開発者に役立つMySQL/MariaDBのLinuxのベストセキュリティの実践について説明します。

1.MySQLを安全にインストールする

MySQLサーバをインストールした後、データベース・サーバを保護するための最初の推奨手順です。このスクリプトを使用すると、MySQLサーバのセキュリティを向上させることができます。

・インストール中にrootアカウントのパスワードを設定していない場合は、すぐに設定します。

・ローカルホスト外部からアクセス可能なrootアカウントを削除することにより、リモートrootユーザーログインを無効にする

・匿名のユーザー・アカウントとテスト・データベースを削除します。デフォルトでは、すべてのユーザー、さらには匿名のユーザーがこれらのアカウントとテスト・データベースにアクセスできます。

# mysql_secure_installation

MySQLの安全なインストール状況インタフェース

2.データベース・サーバをLoopbackアドレスにバインドする

この構成ではリモートマシンからのアクセスが制限され、MySQLサーバはローカルホストからの接続のみを受け入れるように通知されます。プライマリプロファイルで設定できます。

# vi /etc/my.cnf                       [RHEL/CentOS]    
# vi /etc/mysql/my.conf                    [Debian/Ubuntu] 
OR
# vi /etc/mysql/mysql.conf.d/mysqld.cnf    [Debian/Ubuntu]

[mysqld]セクションに次の行を追加します。

bind-address = 127.0.0.1
3.MySQLのLOCAL INFILEを無効にする

セキュリティの強化の一部としてlocal_を無効にする必要があります。Infileは、[mysqld]セクションでMySQLから最下位ファイルシステムにアクセスしないように、次のコマンドを使用します。

local-infile=0
4.MySQLのデフォルトポートの変更

ポート変数を設定してTCP/IP接続を傍受するMySQLポート番号。デフォルトのポート番号は3306ですが、[mysqld]で変更できます。

Port=5000
5.MySQLログの有効化

ログは、サービスの実行中に何が起こったかを知る最善の方法の一つであり、攻撃を受けたときにログから侵入に関連する行為を簡単に見ることができます。下の変数をプロファイル[mysqld]セクションに追加することでmysqlログ機能をオンにできます。

log=/var/log/mysql.log
6.適切なMySQLファイルへのアクセス権の設定

すべてのmysqlサービスファイルとデータパスに適切なアクセス権が設定されていることを確認します。ファイル/etc/my.confはrootユーザーのみが変更でき、他のユーザーがデータベース・サービスの構成を変更することを阻止できます。

# chmod 644 /etc/my.cnf
7.MySQL shell履歴の削除

MySQL shellで実行したすべてのコマンドはmysqlクライアントによって履歴ファイルに保存されます:~/.mysql_history。これは、shellで入力したすべてのユーザー名とパスワードが履歴ファイルに記録されるため、作成したユーザーアカウントに対して危険です。

# cat /dev/null > ~/.mysql_history
8.コマンドラインでMySQLコマンドを実行しない

ご存じのように、端末に入力したすべてのコマンドは、使用しているshell(bashのshell履歴ファイルが~/.bash_historyに置かれているなど)に応じて履歴ファイルに格納されます。攻撃者がこの履歴ファイルにアクセスすると、そこに記録されているパスワードが簡単に表示されます。

コマンドラインにパスワードを入力することは非常に推奨されません。以下のようにします。

# mysql -u root -ppassword_

パスワードでMySQLに接続

コマンドライン履歴ファイルの最後の部分を表示すると、前に入力したパスワードが表示されます。

# history

コマンドライン入力履歴の表示

MySQLへの接続を推奨する方法は

# mysql -u root -p
Enter password:
9.特定のアプリケーションのデータベース・ユーザーの定義

サーバ上で実行されるアプリケーションごとに、アプリケーションに関連するデータベース・ユーザーを1人だけ設定します。たとえば、wordpressのWebサイトがあり、次のようにwordpressのデータベース・ユーザーを作成します。

# mysql -u root -p
MariaDB [(none)]> CREATE DATABASE osclass_db;
MariaDB [(none)]> CREATE USER 'osclassdmin'@'localhost' IDENTIFIED BY 'osclass@dmin%!2';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON osclass_db.* TO 'osclassdmin'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

また、使用されなくなったデータベース・ユーザーについては削除することを覚えておいてください。

10.追加のセキュリティプラグインとライブラリの使用

MySQLには、クライアントがMySQLサーバに接続されていることを検証するリクエスト、パスワードチェック、機密情報のセキュリティストレージなど、多くのセキュリティプラグインが含まれています。これらは無料バージョンで提供されています。

詳細はこちら:https://dev.mysql.com/doc/refman/5.7/en/security-plugins.html

11.MySQLパスワードを定期的に変更する

パスワードの定期的な変更は、一般的な情報/アプリケーション/システムセキュリティの推奨事項です。パスワードをどのくらい変更するかは、あなたの内部のセキュリティポリシーによって決まります。定期的にパスワードを変更すると、長期的にあなたの「覗き見者」を追跡することを阻止し、あなたのパスワードを取得し、MySQLサーバーにログインすることができます。

MariaDB [(none)]> USE mysql;MariaDB [(none)]> UPDATE user SET password=PASSWORD('YourPasswordHere') WHERE User='root' AND Host = 'localhost';MariaDB [(none)]> FLUSH PRIVILEGES;
12.MySQL Serverパッケージを定期的に更新する

mysql/mariadbパッケージを定期的に公式倉庫から更新して、最新のセキュリティ更新とエラー改善を取得することを強くお勧めします。通常、オペレーティングシステムのデフォルトのパッケージは時代遅れです。

# yum update
# apt update

mysql/mariadb serverを変更した後、サービスを再起動します。

# systemctl restart mariadb     #RHEL/CentOS
# systemctl restart mysql       #Debian/Ubuntu

以上、Linux用のMySQL/MariaDBセキュリティベストプラクティス12件について、皆さんにお伝えした内容をすべて共有し、お手伝いしたいと思います。興味のある方は引き続き当駅の他の関連テーマを参照することができます。不足点があれば、伝言を歓迎します。友达の本駅に対する支持に感谢します!


ソース元URL:https://dopubox.com/article/p/db1505a808f9c1dc

其他工具
  • 字元計數 TikTok 下載 抖音下載 BASE64 Base64 轉圖片 圖片轉 Base64 URL 編碼 JavaScript 時間戳 Unicode 轉換器 JSON 格式化 修改副檔名 製作列表 CSS 優化器 MD5 加密 隨機生成器 圖像壓縮 QR 碼生成器 QR 碼識別器 壁紙預覽 圖片 EXIF 血型遺傳 服裝尺寸 app.tool_clock
  • テレビ東京、不適切表現で謝罪 「激録・警察密着24時!!」
    2024-05-29

    “ひばり”の愛称にふさわしい美しいメロディ。ハイドンの『弦楽四重奏曲第67番』【クラシック今日は何の日?】
    2024-05-30

    古本屋を巡り、顧みられなくなった作品、作家を生き返らせた九大大学院教授没後20年 教え子や研究仲間を支える「清新な光景」
    2024-05-30

    授業中の生徒や住民が弾道ミサイル飛来を想定した避難訓練 福島・須賀川桐陽高
    2024-05-31

    藤井聡太八冠が勝ち、最終局へ 将棋叡王戦で2勝2敗
    2024-05-31

    デザインジャーナリストによる新しいデザイン誌の登場です!
    2024-06-01

    現代詩の「中原中也賞」、俳句で培われた言語感覚…「新たな音やリズム」ジャンルを往来し追求
    2024-06-02

    死後に再評価が進んだ作曲家の筆頭、ビゼー。その裏には友人の存在が【クラシック今日は何の日?】
    2024-06-02

    中国でドラえもん映画が興行首位 国際こどもの日に12億円
    2024-06-03

    香川県・直島に開館する新たな美術館の正式名称が「直島新美術館」に決定
    2024-06-03

    IT国家の最先端研究を知って 奈良・宇陀市がエストニアへの短期留学事業
    2024-06-04

    稀代のピアニスト、マルタ・アルゲリッチの伝説の始まりはこの1曲から【クラシック今日は何の日?】
    2024-06-04

    2025年春に「直島新美術館」が誕生。既存の活動から新しい価値創造を目指す
    2024-06-04

    横山奈美の個展「広い空に / Big Sky Mind」がN&A Art SITEで開催へ
    2024-06-05

    田名網敬一「TANAAMI!! AKATSUKA!! / 45 rpm」展、集英社マンガアートヘリテージ トーキョーギャラリーで開催
    2024-06-04

    古今東西 かしゆか商店【つづら】
    2024-06-05

    写真家の吉田ルイ子さん死去
    2024-06-06

    「江戸期より後の遺構」 世界遺産目指す佐渡の金山、一部除外勧告
    2024-06-06

    もしあの時に戻れたら…歌人・穂村弘が話題書『迷子手帳』で明かす、今も忘れられない「失敗」
    2024-06-07

    umami.is をおすすめする理由
    2025-07-04

    ©  Dopu Box
    💛