• 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
    • Image EXIF
  • - 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 Image EXIF Blood Type Heredity Clothing Sizes
  • MURAKAMI × Liquem 夢のコラボアクセが再登場☆|長山智美 デザイン狩人
    2024-05-30

    住所要件の指摘受け自主的に転入 東京・足立区の20代選管委員・古野香織さん
    2024-05-30

    “家形埴輪”大集合、総選挙も 「住宅展示場の気分で」、奈良
    2024-06-01

    【光る君へ】平安時代、強烈なエピソードで知られた2人の受領とは
    2024-06-01

    吉田南さん、バイオリン部門6位 エリザベート音楽コン、奈良出身
    2024-06-01

    【大河ドラマ「光る君へ」本日第22話】紫式部と清少納言は「顔を合わせていなかった」?
    2024-06-01

    小学館「作家の意向第一に協議」 映像化指針、ドラマ原作者死去で
    2024-06-03

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

    写真家たちは強大な権力の抑圧にどう抗ったのか。バルト三国の写真家に焦点を当てる展覧会をレポート
    2024-06-04

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

    GROUP「島をつくる | Planning Another Island」(マイナビアートスクエア)開幕レポート。高層ビルのなかで建築をコンポストする
    2024-06-05

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

    東京都写真美術館で「今森光彦 にっぽんの里山」が開催へ
    2024-06-04

    多摩美術大学がAIやサーキュラーなど5つの最先端のテーマを研究するプラットフォームをスタート
    2024-06-04

    PARCELで「Not Quite」開催。「~でなくもない」作家が集結
    2024-06-04

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

    夜の美術館を楽しめる「サマーナイトミュージアム2024」が開催。東京都現代美術館、東京都庭園美術館などで入場料割引も
    2024-06-04

    第55回星雲賞・自由部門に「巨大ロボット展」 日本SFファングループ連合会議
    2024-06-05

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

    向田邦子の名言「…これが私の料理のお稽古なのです。」【本と名言365】
    2024-06-07

    ©  Dopu Box
    💛