• Online Tools
  • - Calculators
    • Character Count
  • - Download
    • TikTok Download
    • DouYin Download
  • - Web Tools
    • BASE64
    • Base64 to Image
    • Image to Base64
    • URL Encoding
    • JavaScript
    • Timestamp
    • Unicode Converter
    • JSON Format
    • Modify Extension
    • Make List
    • CSS Optimizer
  • - Encryption Tools
    • MD5 Encryption
    • Random Generator
  • - Image Tools
    • Image Compression
    • QR Code Generator
    • QR Code Reader
    • Wallpaper Preview
  • - Info Sheets
    • Blood Type Heredity
    • Clothing Sizes
  • [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

Other Tools
  • Character Count TikTok Download DouYin Download BASE64 Base64 to Image Image to Base64 URL Encoding JavaScript Timestamp Unicode Converter JSON Format Modify Extension Make List CSS Optimizer MD5 Encryption Random Generator Image Compression QR Code Generator QR Code Reader Wallpaper Preview Blood Type Heredity Clothing Sizes
  • 英国を代表する作曲家ブリテンが世界平和を願って作った『戦争レクイエム』【クラシック今日は何の日?】
    2024-05-29

    <司書のコレ絶対読んで>「王さまと九人のきょうだい」君島久子訳、赤羽末吉絵
    2024-05-29

    民藝・イズ・ビューティフル。 日本文化と黒人文化が融合する「アフロ民藝」とは?
    2024-05-30

    ドローンサッカーで世界2位 大阪・星翔高校チーム 「世界でも通用することがわかった」
    2024-05-30

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

    小学館も来週に報告書公表
    2024-05-31

    幸田文の名言「台所に立てば、…」【本と名言365】
    2024-05-30

    三姉妹が温泉旅行で取っ組み合いの大げんか うっとうしくてめんどうくさい家族愛描く「お母さんが一緒」
    2024-06-02

    <今週の本棚・次回の予定>6月8日の毎日新聞書評欄は『新装版 ペルーからきた私の娘』ほか
    2024-06-03

    アレクサンダー・カルダー個展「カルダー:そよぐ、感じる、日本」が開催
    2024-06-04

    知ってる? 「登録博物館等マーク」
    2024-06-05

    美術評論家連盟が「ガザ戦争に対する意⾒表明」を公開
    2024-06-04

    ペース・ギャラリーが9月にグランドオープン。7月には特別内覧会を開催へ
    2024-06-04

    「ロエベ ファンデーション クラフト プライズ 2024」の大賞が発表。等身大のセラミック彫刻を制作したアンドレス・アンサが受賞
    2024-06-05

    「UESHIMA MUSEUM」が開館。屈指の現代美術コレクションを一般公開
    2024-06-05

    性被害者支援の法人設立 スマイル社
    2024-06-04

    田名網敬一の巨大インスタレーションが、世界初大規模回顧展「田名網敬一 記憶の冒険」に登場。国立新美術館で8月7日から
    2024-06-06

    藤井、棋聖戦5連覇へ白星発進
    2024-06-06

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

    ブリン・バン・バン・ボンが1位 ビルボード、上半期人気曲
    2024-06-06

    ©  Dopu Box
    💛