スポンサーリンク
スポンサーリンク

Asp.Net Core ベースのWebシステム(VPS)

.NET CoreASP.NET CoreC#JavaScriptjsonLinux・ShellNginxOpenSSLSITEGUADSQL Serverインターネットセキュリティ対策データベース

インターネットに公開できるレベルの堅牢なWEBサーバを、Asp.Net Coreベースで構築した。
インフラ回りのポイントを纏めたので、Asp.Net Coreを使う人には、是非、参考にしてほしい。

ソースコードや資料も公開している。Garfie2021/UnikktlePublic (github.com)

ポイント

  • OSにはCentOSを採用。
  • Linux系OSで、無料でもEnterpriseシステムで通用するOSはCentOSくらい。
  • Asp.Net Core は Windowsでも実行可能だが、インターネットに公開するWebサーバに、Windows OS を採用することは無い。
  • Linux系OSを最小構成(coreのみ)でインストールするのが望ましい。
  • Webサーバーには Asp.Net Core を採用。
  • PHP系、NodeJS系、Java系よりも高速に動作し、統合開発環境の使い勝手も良く生産性が高い。
  • ASP.NET Core は .NET Core の一機能。
  • リバースプロキシサーバーにはNginxを採用。
  • ApacheよりもNginxの方が高速に動作する。
  • SSL証明書の認証局には Let’s Encrypt を採用。
  • 無料な上に、証明書の更新をバッチ実行できることで、証明書を更新する手間がかからない。
  • WAF(Web Application Firewall)には、SiteGuard Server Edition を採用。
  • サクラインターネットのサーバーホスティングサービスは無料で提供している。
  • Webアプリのメール送信にはSendGridを採用。
  • 無料枠で1日100件程度のメール送信が可能。
  • データベースには SQLServer 2017 for Linux を採用。
  • SQLServerのテーブル圧縮機能は、CPU負荷が2%~3%程度上がるのみで、スループットを低下させずに、データファイルのサイズを10分の1まで圧縮できる。これによって少ないSSDで運用可能になる。
  • MySQLのテーブル圧縮機能は、データファイルのサイズを2分の1までしか圧縮できなかった。WebサーバのSSHポートとSQLServerポートは、ポート番号をデフォルト以外に変更し、イントラのIPからのみ接続可能にファイアウォールを設定し、更にイントラ側のIPを動的にすることで、セキュアにイントラ内のバッチ処理とVPSのWebサーバを連携できる。

  

コメント

タイトルとURLをコピーしました