銀の光と碧い空

クラウドなインフラとC#なアプリ開発の狭間にいるエンジニアの日々

Fiddler on Linux beta が出たのでFedoraで使ってみた

Fiddler on Linuxのベータ版がリリースされたようです。HTTP通信に特化している分使い易くなっているのが個人的に好きです。

www.telerik.com

実はアルファ版が以前に出ていたようでした。

Fiddler for Linux Updated

というわけで早速Fedora 24に入れてみました。まずはmonoが必須です。Updatesリポジトリにあるはずです。

$ cat /etc/fedora-release
Fedora release 24 (Twenty Four)
$ sudo dnf install mono
$ mono --version
Mono JIT compiler version 4.2.4 (tarball Thu Jun 23 18:49:17 UTC 2016)

Getting Startedの手順に/usr/lib/mono//mozroots --import --syncってあるんですがこんなパスはなくて、しかもmozrootsはdeprecatedって言われるのでcert-syncを使います。

$ cert-sync /etc/pki/tls/certs/ca-bundle.crt

あとは、fiddler for linux のzipをダウンロードして、解凍して、mono Fiddler.exeで実行します。無事実行できました。

f:id:tanaka733:20170112150144p:plain

なのですが、割とすぐにエラーが出て、Windowが消えてしまいました。

$ mono Fiddler.exe
can not parse as value of type 'i':
  ""
  ^^
can not parse as value of type 'i':
  ""
  ^^

この後、ブラウザでWebページが見れなくなりました。回避策としてはもう一度Fiddlerを起動して正常終了させることです。恐らくFiddlerはプロキシとして動作するので、プロキシサーバーを設定して解除しないうちにプロキシが死んだのが原因な気がします。

Feedbackはこのフォーラムにするようです。ほとんどスレッドが立っていないのが気になりますが。

www.telerik.com

.NET Core on Linux で systemd scriptでプロセス管理する (手抜き版)

ASP.NET Core でLinuxでホストする場合、以前の公式ドキュメントではsupervisorを使う方法が紹介されていました。ただ、CentOSやRHELだとEPELリポジトリにあるしなあと思っていたら、いつの間にか公式ドキュメントがsystemdを利用したサンプルに変わっていました。せっかくなので手順を一通りなぞってみます。

Publish to a Linux Production Environment | Microsoft Docs

手抜きポイント

  • リバースプロキシは設定しない (適当なポートでローカルからアクセスして動作確認)
  • firewalldも設定しない (これは独立して設定できる)
  • SELinuxまわりは追加の設定しない (詳細は最後に)

SELinuxは追加の設定をしないというだけで、enforcingの状態です*1

# sestatus 
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      28

*1:とりあえずSELinux 無効化というのはそろそろなしじゃないかなあというのが正直な気持ちの今日この頃です

続きを読む

ASP.NET Core MVC で static fileを認証ユーザーのみに公開する

ASP.NET Core MVCでstatic fileを公開する場合、基本的には用意されている Static File Middlewareを使うと便利です。以下のドキュメントに詳しく書いてあります。

Working with Static Files | Microsoft Docs

が、このMiddlewareを使うとファイルは認証なしでアクセス可能になるため、認証付きユーザーのみアクセス可能にしたい場合はちょっと手間をかける必要があります。

続きを読む