2018年12月22日土曜日

SQL ServerのRemoteアクセス構成2

前回の登録の続きでSQL Serverの「名前付きインスタンス」についてリモート構成を行う。
インスタンス名:SQLEXPRESS
インストール環境等は前回の記事(SQL ServerのRemoteアクセス構成1)を参照

1.「名前付きインスタンス」のリモート構成手順
名前付きインスタンスのリモート構成は以下の手順で行う。
  1. TCP/IPの有効化 
  2. SQL Serverのサービス再起動
  3. TCP/IPのプロパティで動的ポートを使用可能にする
  4. ファイアウォールの受信の規則でUDP1434を許可
  5. ファイアウォールのアプリケーションルールの設定でSQL Serverの実体(Sqlservr.exe)に対して受信許可を設定する
  6. SQL Server Browserを有効化する
2.「名前付きインスタンス」:TCP/IPの設定
SQL Server構成マネージャーの「SQL Serverのプロトコル」の該当するSQL ServerについてTCP/IPを有効化する。(今回の例ではSQLEXPRESS)
TCP/IPの有効化/無効化を設定する場合は、該当するSQL Serverサービスを構成マネージャーから再起動する。
※Windowsの管理ツールのサービスから再起動しないこと!!

TCP/IPのプロパティ画面の「IPアドレス」にてIPALL(一番下)を表示し以下を設定する。
  • TCPポート:空白
  • TCP動的ポート:0
※動的ポートに0を指定することで動的ポートが使われる
※ここでTCPポートに1433を設定しないこと!!

今回のケースで名前付きインスタンスのTCP/IPの設定でTCPポート:1433を指定すると下記エラーが発生する。

多分、「規定のインスタンス」でTCP1433を使用するように構成していることが原因と思う。

3.ファイアウォールの設定(パケットルール)
名前付きインスタンスのリモート構成ではUDPポート:1434について受信の許可の設定が必要になる。
今回の場合はKaspersky インターネットセキュリティ 2019に対して設定を行う。 Windows Serverの場合は「セキュリティが強化されたWindowsファイアウォール」で同様の設定を行うこと。

※Kaspersky インターネットセキュリティ 2019 ファイアウォールの設定 設定→プロテクション→ファイアウォール→パケットルールの設定

パケットルール画面下部にある「追加ボタン」から以下のルールを追加する。
  • 操作:許可
  • 名前:
    SQL Server UDP1434 Open
  • 通信方向:受信
  • プロトコル:UDP
  • リモートポート:空白
  • ローカルポート:1434
  • アドレス:
    すべてのネットワークアドレス
  • ステータス:有効  

UDP1434の許可設定が追加されている

4.ファイアウォールの設定(アプリケーションルール)
名前付きインスタンスのリモート構成ではパケットルール設定(UDP1434の受信許可)に加えてSQL Serverの実体に対してネットワークの受信許可を追加する。

※Kaspersky インターネットセキュリティ 2019 ファイアウォールの設定 設定→プロテクション→ファイアウォール→アプリケーションルールの設定

※アプリケーションルールの設定画面の右上「表示」を選択して「システムアプリケーションを非表示」のチェックを外す



画面右上の検索ウインドに「sql server windows」と入力して検索を行うと、
今回の例では「SQL Server Windows NT - 64Bit」が二つ表示される。


今回の例では同じ端末内に「既定のインスタンス」と「名前付きインスタンス」の二つのSQL Server (どちらも2017)をインストールしているため二つ表示される。
「SQL Server Windows NT - 64Bit」にマウスカーソルを合わせると実体の格納ディレクトリが表示される。
実体:Sqlservr.exe

SQLEXPRESS: 名前付きインスタンス

MSSQLSERVER:規定のインスタンス

SQL Server自体を「信頼するアプリケーション」として設定しているので、今回の例では追加の設定は無い(確認のみ)。
「信頼するアプリケーション」 → ネットワークが許可されている
信頼するアプリケーションでは無い場合は、ネットワークルールの許可の設定が必要。

5.SQL Server Browserの有効化
名前付きインスタンスのリモート構成ではファイアウォールの受信許可設定に加えてSQL Server Browserサービスの有効化が必要となる。(既定では無効)
SQL Server構成マネージャーのサービス画面からSQL Server Browserのプロパティを開く。



  • プロパティのサービスタブの開始モードを「自動」に設定→適用
  • サービス画面で開始を実行


※UDPポート:1434を通じてSqlservr.exe を管理するのがBrowser Serviceな感じ。

6.検証
同一ネットワークにある他端末からリモートで名前付きインスタンスに接続を行う。

  • 接続文字:[Server IP]\[Instance Name]
  • 認証モード:SQL Server認証(sa)


SSMSでテストクエリを実行して動作を確認した。


まとめ
今回真面目に調べたことで、今まで適当に構成していたことが分り反省…
SQL Server Browserの役割が分っていませんでした。

参考
SQL Server Express にリモート接続

MCP教科書 SQL Server 2012(試験番号70-462)

SQL ServerのRemoteアクセス構成1

SQL Serverのリモートアクセス構成の復習。
既定のインスタンスと名前付きインスタンスで構成と検証を行う。

1台のPCに「既定のインスタンス」と「名前付きインスタンス」のSQL Serverを導入し外部からアクセス可能になるように設定を行う。

1.SQL Serverの導入


PC環境












既定のインスタンス
名前付きインスタンス
※SQL Server構成マネージャーについて
Windows10ではプログラムメニューからSQL Server 構成マネージャーが見つからないです。
構成マネージャーは以下のパスにある。
C:\Windows\System32\ SQLServerManagerXX.msc
(XXはVersionを表す。2017→14, 2012→11)

SQL ServerのVersionと互換性レベルの対応表
既定のインスタンスと名前付きインスタンスの各々に対して、

  • 認証モードを混合認証に設定(SQL Server認証)
  • リモートアクセスの許可
を設定。(SSMSのサーバーのプロパティの「セキュリティ」と「接続」を参照)

2.「既定のインスタンス」のリモート構成手順
既定のインスタンスのリモート構成は以下の手順で行う。
  1. TCP/IPの有効化
  2. SQL Serverのサービス再起動
  3. TCP/IPのプロパティでTCPポート1433を設定
  4. ファイアウォールの受信の規則でTCP1433を許可

3.既定のインスタンス:TCP/IPの設定
SQL Server構成マネージャーの「SQL Serverのプロトコル」の該当するSQL ServerについてTCP/IPを有効化する。(今回の例ではMSSQLSERVER)
TCP/IPの有効化/無効化を設定する場合は、該当するSQL Serverサービスを構成マネージャーから再起動する。
※Windowsの管理ツールのサービスから再起動しないこと!!

TCP/IPの有効化(要サービスの再起動)

TCP/IPのプロパティ画面の「IPアドレス」にてIPALL(一番下)を表示し以下を設定する。
  • TCPポート:1433
  • TCP動的ポート:空白















4.ファイアウォールの設定
既定のインスタンスのリモート構成ではTCPポート:1433について受信の許可の設定が必要となる。
今回の場合はKaspersky インターネットセキュリティ 2019に対して設定を行う。
Windows Serverの場合は「セキュリティが強化されたWindowsファイアウォール」で同様の設定を行うこと。

※Kaspersky インターネットセキュリティ 2019  ファイアウォールの設定
設定→プロテクション→ファイアウォール→パケットルールの設定

パケットルール画面下部にある「追加ボタン」から以下のルールを追加する。

  • 操作:許可
  • 名前:
    SQL Server TCP1433 Open
  • 通信方向:受信
  • プロトコル:TCP
  • リモートポート:空白
  • ローカルポート:1433
  • アドレス:
    すべてのネットワークアドレス
  • ステータス:有効  

TCP1433の許可設定が追加されている


5.検証
同一ネットワークにある他端末からリモートで規定のインスタンスに接続を行う。

  • 接続文字:[Server IP],1433
  • 認証モード:SQL Server認証(sa)



SSMSでテストクエリを実行して動作を確認した。


まとめ
今まで名前付きインスタンスしか取り扱ったことが無く初めて規定のインスタンスで構成を行った。
ファイアウォールの構成については、導入しているセキュリティ対策SWに依存する。
次に名前付きインスタンスに対してリモート構成を行う予定。








2018年12月20日木曜日

カスペルスキーのファイアウォール構成について

久しぶりにSQL Serverのリモート接続構成をテストしようとして試にPing疎通を確認したらつながらない…?
何でか?と考えていたらファイアウォールの構成してないことに気が付き、「Windows Defender ファイアウォール」の設定画面を見たところ、
「これらの設定は、ベンダーアプリケーション カスペルスキーインターネットセキュリティで管理されています」
とあり構成出来ない…事を思い出す。
カスペルスキーをOFFにして確認することも考えたが、毎回忘れて設定するのでカスペルスキーのファイアウォール構成をメモすることにする。
  • セキュリティ対策SW:カスペルスキー インターネット セキュリティ 2019
    Version 19.0.0.1088
  • 対象MC:Surface Laptop Windows 10 Pro 64bit (build 17763)
  • 確認MC:HP v7780jp Windows 10 Pro 64bit (build 17763)

IP Address 
  • 対象MC: 192.168.1.12
  • 確認MC:192.168.1.7
Ping疎通の確認
対象PC → 確認PC : Ping疎通OK
確認PC → 対象PC : Ping疎通×


他のPCにPingは打てるけど受け取れない状態。

という訳でKasperskyの設定を確認。
カスペルスキー インターネットセキュリティ の管理画面を開く。

左下の設定をクリック

左ペインの「プロテクション」を選択

「ファイアウォール」を選択

※ここでファイアウォールを無効化すればPing疎通は可能になると思われるが、正攻法の設定を行う。

画面下側の「ネットワーク」を選択

Ping疎通で使用したいネットワークで右クリック→編集を選択

※端末に設定されているネットワークが表示されている。
Ping送信に使用したいネットワークについて編集する。

「ネットワークの種類」を変更

※ネットワークのプロパティ画面のネットワークの種類がデフォルトで「パブリックネットワーク」になっているので「プライベートネットワーク」か、「許可するネットワーク」に変更する。




ネットワークの種類をプライベートに設定後にPing疎通を確認。



※Windowsの設定の「ネットワークとインターネット」から設定出来るネットワークプロファイルでも「パブリック」と「プライベート」の設定があるが、どちらに設定してもファイアウォールの設定をしなければ疎通できない。

まとめ
ライセンス終わったらMcAfeeに変えようとしているのに…

Kasperskyサイト
カスペルスキー インターネット セキュリティ 2019 のファイアウォールとは?
ネットワークのプロパティを変更する方法








MSアカウントの最近のアクテビティ

マイクロソフトアカウントのセキュリティの基本から「最近のアクテビティの確認」を行ったところ、香港特別行政区からアクセスしたことになっている…


何でか?と思い取りあえずパスワードを変更。

ちょっと調べてみると
最近のアクティビティに香港特別行政区が表示される? | Microsoft

という記事を見つけVisual Studioが悪いのか?と思い、
資格情報の再入力を実施してアクティビティを確認するも「日本」…

MSコミュニティでも同様の質問をされている方がいらっしゃりましたが、
相変わらずトンチンカンな回答をされていて何の解決にもなっていない模様…

そもそも、「日本」ってなっている履歴も静岡県に居ることになっているし…
(神奈川県在住なのに…)

Google先生の「最近使用した端末」の情報は割と正確なのに…

どうなっているのか?


VMWare WorkStation PlayerでWindows7の仮想環境ネットワーク

前回(VMWare WorkStation PlayerでWindows7の仮想環境構築)の投稿で仮想環境の構築まで実施してみた。VMware Workstation Player導入によるネットワーク構成が気になったのでちょっと調べた。

VMware Workstation Player導入後のHost PCネットワーク構成抜粋


VMware Workstation Playerの導入によりHost PCのネットワークが追加されている。
Host PCで ipconfig を実行して確認すると、「VMNet1」、「VMNet8」が確認できる。

VMWare Docs 仮想ネットワーク コンポーネントについて
を確認すると、VMNet0も追加されているがHost上では見えない模様。
追加された仮想NICの用途は下記の通り。
  • VMNet0:ブリッジ接続用(Hostから見えない)
  • VMNet1:ホストオンリー接続用(既定では外部に接続不可)
  • VMNet8:NAT接続用(仮想マシンのデフォルト設定)
今回の構成ではNAT接続を設定しているためVMNet8を使用している。
仮想マシンのネットワーク設定は以下の通り。


NATの場合のNetwork構成の概念図は以下のようになるはず。

VMnic8 を経由してNAT(ネットワークアドレス変換)が行われ、Host M/Cの物理NICを通じて外部のネットワークにアクセスすることが出来る。
(外部からVMは見えない)

同じ物理Host内で仮想MCのネットワークを構成すればアドレス変換の必要が無いので手軽にシステム検証に使えそう。


参考リンク
ネットワーク アドレス変換の構成

VMware Workstation Playerの仮想ネットワーク設定(実験つき)


2018年12月18日火曜日

VMWare WorkStation PlayerでWindows7の仮想環境構築

Windows 7 Professionalのライセンスが手に入ったので仮想環境の構築をやってみた。
手持ちのOS環境で一番ゆとりがあるPC(Windows 7 Professional 64bit)内での導入を検討。Host OSがWin10ではないのでClient Hyper-Vの使用は出来ないので VMWare Workstation Playerを使う。

VMware Workstation Playerの導入は下記URLを参考
仮想マシン構築ソフト「VMware Player」のインストール方法

1.事前準備(VMware Workstation Playerの導入)

注意点としては、導入するHostのCPUが仮想化技術をサポートしているか確認が必要。
仮想化をサポートしていないCPUでは導入出来ないので注意。
(これは Hyper-Vでも同じ)
確認方法:BIOSセットアップ画面で「仮想化技術(VTx等)」の項目を有効化する
※デフォルトでは無効になっている
加えて、ハイパースレッティングも有効にする(既定で有効?)。

BIOS Setup

※事前にBIOSのファームは最新版に上げておくことを推奨


Host PC
Maker HP
Model h8-1180jp (2011年冬モデル)
CPU Intel Core i7-2600 @ 3.4GHz
BIOS CHG_712.ROM v7.12
Memory 16GB
OS Windows 7 Professional SP1
64bit

VMware Workstation Player
インストーラをhttps://www.vmware.com/jp.htmlから取得

※Workstation Player を選択

※Windows版を選択

VMware-player-15.0.2-10952284.exe

64bit版のインストーラしかないので多分64bit OSでしか導入できない。
インストールウイザードに従ってサクサクインストールを行う。
インストール終了後に必ず再起動を行うこと!!
正常にインストール出来ればデスクトップにショートカットが出来る。

2.仮想環境の作成

今回は以下のOSのISOファイルを使用
Windows 7 Professional 32bit

ISOをHostの適当なディレクトリに配置して VMware Warkstation Player を起動する。

※新規仮想マシンの作成(N) を選択

新規仮想マシンの作成を選択すると仮想マシンウィザードが起動するので順に設定すればよい。
※赤枠の「インストーラ ディスク イメージ ファイル」でISOファイルのパスを選択

OSのインストールとしてインストールディスク、ISOファイル、後で設定するが選択できるが、ISOファイルを使ったOS導入を選択する。
適切なISOファイルを選択すると、OSの検出が自動で行われる。(例ではWindows7)
WindowsのインストーラからISOを作成した場合は、「簡易インストール」モードになる模様。
※簡易インストール設定

簡易インストールでプロダクトキー、インストールバージョン、アカウントを設定する。
プロダクトキーはここで入力しても、OS導入後に認証が必要なのでここでは不要。


インストールバージョンは保有するプロダクトキーに合わせて選択する。
今回はProfessionalを選択。

※仮想マシンの名前の設定

仮想マシンの名前をパスを設定する。

※ディスク容量の指定

この辺はデフォルト値をそのまま採用。

※仮想マシンを作成する準備完了

設定内容の確認画面。
コア数、メモリ、ネットワーク等の設定は「ハードウェアのカスタマイズ(C)…」で変更可能であるが、仮想マシン作成後に変更出来るのでここでは規定のまま。

※VMware Toolsのインストールが若干怪しい気もするが、しばらく待つと仮想マシンが完成します。

「仮想マシン設定の編集」を選択するとコア数、メモリ等の設定値の確認、編集ができます。
※ハードウエア設定

※オプション設定

・メモリ、コア数:ハードウエア設定で変更可能(メモリ:4GB, コア数:4)
・仮想マシン名:オプション設定で変更可能

ネットワークは規定のNAT設定を使用する。


OSのインストールと初期設定は割愛。
インストール終了後にネットワークが外部に接続できることを確認したうえで、
ライセンス認証とWindowsUpdateを行う。



※仮想マシンのネットワーク構成


仮想マシンのネットワーク構成抜粋
IPv4 192.168.126.128
Mask 255.255.255.0
Gateway 192.168.126.2
DHCP 有効
DHCP Server 192.168.126.254
DNS 192.168.126.2

Host PCのネットワークは192.168.1.0/24なのでNATで192.168.126.0/24に変換されていることが分る。


NATを通じて外部のサイトに接続できていることを確認。


3.まとめ

今回はVMware Workstation Player を使ってWindowsの仮想マシンを構築した。
注意点は下記のとおり。

  • Host PCのCPUが仮想技術をサポートしていること
  • Host PCのBIOSファームを更新しておくこと
  • Host OSが64bit版であること
  • インストールするOSのISOファイルを作成しておくこと
  • ネットワーク構成は規定(NAT)のままで使用できる

設定出来る内容自体はHyper-Vと大差ないと思う。
簡単に作成できるので評価版の検証等で活用できそう。