WebForms UnobtrusiveValidationMode には、'jquery' の ScriptResourceMapping が必要です。2015年11月12日 13時43分

ASP.netでValidtorを設置したら、


「WebForms UnobtrusiveValidationMode には、'jquery' の ScriptResourceMapping が必要です。」


というエラーが出た。

色々解決方法はあるようだが、手っ取り早いのは、Web.configに

<appSettings>
<add key="ValidationSettings:UnobtrusiveValidationMode" value="None"/>
</appSettings>

を追加すること。弊害もあるのだろうが、とりあえずテストの段階ではこれでいいことにする。

.Net Framework データ プロバイダーが見つかりません。2015年11月10日 19時18分

Visual Studio からMicrosoft SQL Server 2008に接続しようと、
ツール(T)→データベースに接続(S)から設定を行った。

接続テストも成功し、「OK」ボタンで設定を保存しようとすると

「要求された.Net Framework データ プロバイダーが見つかりません。これは、インストールされていない可能性があります。」

というエラーが表示されキャンセルされてしまう。

.Net Frameworkをインストールし直すなどいろいろやってみたが、
一向に解決しない。

英語で「visual studio .net Framework data provider find」で検索し、
やっと見つけた解決方法は以下の通り

C:\Windows\Microsoft.NET\Framework\v???\Config\machine.config 又は
C:\Windows\Microsoft.NET\Framework64\v???\Config\machine.configをメモ帳で開く(???はバージョン)



<DbProviderFactories>と</DbProviderFactories>に囲まれた項目を探す



そのすぐ下にある <DbProviderFactories />を消し、上書き保存する。ソリューションを開きなおす。


つまりは <DbProviderFactories />が余分らしい。

Eメール送信で「 blocked using FBLW15」2014年10月13日 15時28分

自社のSMTPサーバーから特定のアドレスにメールを送ろうとした際に、

「Service unavailable; Client host [自社サーバーIP] blocked using FBLW15; To request removal from this list please forward this message to delist@messaging.microsoft.com 」

というエラーメッセージが出てメールが送信できない。

マイクロソフトのスパムメールブラックリストに自社のIPアドレスが載ってしまっているらしいので、言われているとおりリストからの削除をメールで依頼してみた。

あまり期待はしていなかったのだが、すぐに返事が来た。どうやらマイクロソフトではなくサードパーティー製の「Spamhaus」に登録されているらしい。

Spamhausのホームページに行き、実際に登録されているかどうかの確認をしてみる。Spamhausには「SBL」「PBL」「XBL」の3種類のリストがあり、「PBL」に自社アドレスが登録されているのが確認できた。ただこの「PBL」自体はブラックリストというわけではなく、動的なアドレスはかなり登録されているらしい。

さて、メールが送れない問題の解決方法だが、どうやら2種類あるよう。一つ目は、SMTP認証を有効にすること。自社SMTPサーバーはLAN内にIISを使って構築してあるためこの方法で対応することは一応可能ではある。ただ、各クライアントのメーラーでSMTP認証の機能を有効にする作業が若干手間ではある。

二つめの方法は、Spamhausに直接PBLからの除外依頼をする方法。自社のIPアドレスが固定であればHP上のフォームから依頼が可能。ただしその際にはメールアドレスが必要となる(フリーのメールアドレスは不可)。

今回はメールユーザーの仕事に差しさわりがないように2番目でやってみた。案外簡単で、約30分後にはリストから自社IPが削除されていた。

ちなみにこの現象は、メール受信者がOffice365等のマイクロソフトのWebサービスを利用しているときに起きる現象らしい。相手の環境を確認していないので現実にはわからないが。

named-chrootで「named.pid not readable」2014年07月29日 14時11分

久しぶりにFedoraをアップグレード(17→20)。

一通り終わってから確認してみると、named-chroot(bind-chroot)がエラーで終了している。エラー内容は

「PID file /var/named/chroot/run/named/named.pid not readable (yet?) 」

と出ていてPIDファイルが読めないということか?しかしアクセス権を確認してみても何が不足しているのかが分からない。

色々調べた結果、どうやら「named.conf」ファイルに「pid-file /run/named/named.pid」と追記すればいいらしい。
とりあえず言われた通りやってみたら立ち上がってはきたが、なぜこれが必要なのかが分からなかった。


しかし、後々よく見てみるとyumでアップグレードした際に、bindは正常に終了していたが、bind-chrootだけエラーでバージョンアップが失敗してfc17のままなのが分かった。一旦bind-chrootをremoveしもう一度インストールし直せば、先ほどのpidファイルの指定はなくても普通に立ち上がってきた。

どうやらfc17以降、いつかは分からないがpidファイルのデフォルトの保存先が変わったらしい。


いつもながら終わってみれば他愛もない原因ではある。しかし解決できれば気持ちのいいものでもある。

firewalldの代わりにiptables2014年07月23日 14時54分

Fedora18以降はデフォルトのファイアウォールサービスが「iptables」から「firewalld」に変わったらしい。


おそらく新しいfirewalldの方が使いやすく機能も優れているのだろうが、iptablesで登録してあるルールを設定しなおす時間がない。

とりあえずiptablesを継続して使うこととする。

1. 「yum install iptables-services iptables-utils」 でインストール。

2. 「systemctl disable firewalld」と「systemctl stop firewalld」でfirewalldサービスを止める

3.「systemctl start iptables」でiptablesサービスを起動。


なかなかlinuxに注ぐ時間がないが、その間にどんどん変化していってるなぁ・・・。

Default Domain Controllers Policy がレジストリを勝手に変更2014年03月24日 19時11分

これの続き
Windows server 2008 R2 で Windows Firewall 起動せず

前回、レジストリをいじって「Base Filtering Engine」と「Windows Firewall」サービスが起動しない問題を解決したわけだが、いつの間にやら、レジストリの設定が元に戻ってしまった。

こうなると、疑わしいのはグループポリシーの設定。どこかしらにレジストリを変更する設定があるのだろう。
サーバーをドメインコントローラに昇格してから問題が起こっていることを考えると、「Default Domain Controllers Policy」と見て間違いないでしょう。

現在は2008の機能レベルのドメインで運用しているが、元をたどればWindows2000のころからバージョンアップをして今に至る。現在でもWindows Server 2003を1台をドメインコントローラとして使っている。

「Base Filtering Engine」や「Windows Firewall」サービスを起動するには、特定のレジストリに対し「NT service\mpssvc」にフルコントロールの権限を与えなければならないが、Windows Server 2003ではそもそもそういったユーザーが存在しない。どうやらこれが原因で、グループポリシーが適用された際にレジストリにアクセス権が無くなってしまっていたよう。


解決方法(*正しいかどうかは定かではない)

Windows Server 2008以降のドメインコントローラの「Active Directory ユーザーとコンピューター」で「Domain Controllers」コンテナの下に新たに組織単位(OU)を作る



その組織単位(OU)に対し、新しいグループポリシーを作り、
「コンピューターの構成」→「ポリシー」→「Windowsの設定」→「セキュリティの設定」→「レジストリ」に
「MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess」と
「MACHINE\SYSTEM\CurrentControlSet\services\BFE」を追加。
セキュリティの設定で「NT service\mpssvc」にフルコントロールを与える。



不具合の起きているコンピュータを作成した組織単位(OU)に移動。



コンピュータで「gpupdate /force」コマンドを実行しセキュリティポリシーを反映。

直接「Default Domain Controllers Policy」を編集するという手もあるのだが、既存のサーバーに悪影響が出ることを恐れて、あえて新しいOUにしてみた。今のところはサービスも無事に起動し問題なく稼働している。


Windows server 2008 R2 で Windows Firewall 起動せず2014年03月19日 20時56分

エラー
もしかしたらこっちにも関係あるかも

Windows Server 2008 R2 Network Location Awarenessエラー

新規にWindows Server 2008 R2を構築している。

サーバーを既存のドメインに追加し、まずファイルサーバーのしての役割を追加してフォルダを共有した。これは何の問題もなく共有できた。


このサーバーにはRODC(Read Only Domain Controller)の役割もしてほしいため、「Active Directory ドメインサービス」を追加。

インストール後、再起動したときに問題発生・・・


ついさっきまでできていたファイルの共有ができなくなった。サーバーの共有フォルダにアクセスできないだけでなく、PINGなども一切受け付けなくなってしまった。


PINGが受付られないということで、ひっかかるのはやはり「Windows ファイアウォール」。コントロールパネルから設定を変更しようとしても、エラー表示も出ずに終わってしまう・・・。

そこで「サービス」を見てみると、案の定「Windows Firewall」は停止中。しかし開始しようとしても、

「エラー 1068:依存関係サービスまたはグループを起動できませんでした。」

とのこと。

サービスの依存関係タブを見れば「Windows Firewall」 は「Base Filtering Engine」サービスに依存していることがわかる。そこで「Base Filtering Engine」を確認してみると案の定サービス停止中・・・。開始しようとしても「エラー 5:アクセスが拒否されました。」と言ってお断りされる始末。


ここからはインターネットに頼る。まず「Base Filtering Engine」が開始しないことには始まらないので、なぜアクセスが拒否されるのかを探る。

どうやらレジストリの「HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\BFE」へのアクセス権が足りないらしい。なぜドメインコントローラに昇格したらいきなりアクセス権が足りなくなるのかは不明。とりあえずここに「NT service\mpssvc」を追加しフルコントロールを与え、再度サービスを開始してみたら問題なく立ち上がった。

ここで改めてWindows Firewallサービスを起動。しかし今度は

「サービス固有のエラー コードが5であることを伝えてください。」とエラーメッセージが表示され、イベントログには

「ID:7024 Windows Firewall サービスは、サービス固有のエラー アクセスが拒否されました。 で終了しました。」

と記録されていた。


このイベントIDをインターネットで調べてみると、解決策はあっさり見つかった。

http://support.microsoft.com/kb/943996/ja

しかし安心したのもつかの間、上記サポートの指示通りにレジストリを変更しても結局同じエラーは出続ける。ここで手詰まり・・・

ここからは、いつも通り海外のQ&Aへ救いを求める。色々調べたところ、MSのサポートで指示されているレジストリよりも一つ上の階層にアクセス権を与えなければならないらしい。なんなのよ、MS・・・

「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess」に「Base Filtering Engine」の時と同様「NT service\mpssvc」にフルコントロールを与え、Windows Firewallサービスを開始すると、すんなり起動した。それと同時に今までできなかった共有フォルダへのアクセスもできるようになった。


今回は評価版をつかったテスト環境だからいいが、もしこれがすでに運用されているサーバーで同じ問題が起きたらと思うと固まる・・・。

Windows Server 2008 R2 Network Location Awarenessエラー2014年03月12日 13時14分

最近2008R2のサーバーを再起動したら、イベントビューアに見慣れぬエラーが出力された。

イベント ID: 7024

「Network Location Awareness サービスは、サービス固有エラー %%-1073741288 で終了しました。」

特にこれと言ってサーバーの設定を変えた覚えはないわけだが。ネットで調べてもあまり情報がない。今のところ実害は出ていないがあまり気持ちのいいものでもないので、海外サイトで解決策を探る。

どうやらサーバーローカルのAdministratorsグループに「LOCAL SERVICE」と「NETWORK SERVICE」を追加すれば治るらしい。

言われた通り、Active Directoryの設定画面を開き「Buildin」のAdministratorsグループに当該ユーザーを追加。サーバーを再起動したらエラーは出なくなった。

しかしなぜそういった現象が起きたのかは不明。まあこういったことはよくあるが。

IIS7でIPアドレス制限2013年10月08日 10時01分

IIS7の初期画面では、IPアドレスによってサイトにアクセスできるユーザーを制限するためのアイコンが表示されない。

「サーバーマネージャー」→「役割サービスの追加」→「IPおよびドメインの制限」

これで設定可能。

IIS7で旧ASP動かず2013年10月08日 09時56分

Windows Server 2008 R2で昔作ったASP(Active Server Pages)を動かそうと思ったが、思うように動かない。正しくはASPは動いているのだが、そこから呼び出しているODBCが動かない。

64bit版OSで古いODBCのWebアプリを動かすためには、32bitのODBC設定が必要らしい。

C:\Windows\SysWOW64\odbcad32.exe

これが32bit用ODBCの設定プログラムらしい。初期に管理ツールにあるODBCプログラムは64bit用だそう。