Loading [MathJax]/extensions/tex2jax.js

Azure VM – Azure Bastion 経由のファイル転送やってみた

社会人2年目になりました。
上司のサポートをいただきながら案件に取り組んでおり、その過程で得られた知見を記事にまとめて共有しようと思います。

はじめに

案件にて、Azure VM に SSMS (SQL Server Management Studio) を追加インストールするようにと依頼がありました。
Download SQL Server Management Studio (SSMS) | Microsoft Learn

既に 2 台の VM にはインストール済みだったのですが、今回の依頼で担当している全てのVMに入れる必要が出てきました。
途中から案件に入った私にとっては、 この作業経験が初めてだったので苦労しました。今回の作業で遭遇した問題点と解決策をまとめて記事にしてみようと思います。

今回の作業で使う SSMS のインストーラーですが、以前インストールした時と同じバージョンのもの(ローカルに保存済み)を使うことになりました。 ローカル PC にある SSMS-Setup-JPN.exe を Azure VM へコピー&ペーストを試したところ、まさかのエラーが発生。

File transfer is either not supported or not enabled. Please contact support.

転送エラー

 

 

 

えーなんでだろ、何かの設定してないのかな?と迷っていると公式リファレンスでこんな記述見つけました。

現在、テキストのコピー/貼り付けのみがサポートされています。

02_テキストのみサポート

 

 

 

 

 

 

 

 

Windows 仮想マシンとの間のコピーと貼り付け: Azure – Azure Bastion | Microsoft Learn

なんと、ファイル転送はサポートされていないことが判明しました。
今回は気を取り直して、別の方法を試すことにしました。
Azure Storage 経由で SSMS インストーラーを VM に転送しインストール作業を完了できましたので、その手順について解説します。

前提条件

次の項目を事前に作成する。

  • Azure Bastionがデプロイされた仮想ネットワーク
  • 仮想ネットワークにデプロイされたAzure VM

作成できたらBastion経由で接続できることを確認。
ちなみにローカルからコピペしようとすると右下に表示されます。

 

 

 

 

 

 

 

ローカルからのファイル転送

VMにAzure CLIをインストール

“https://azcliprod.blob.core.windows.net/msi/azure-cli-2.58.0-x64.msi”

VMのブラウザにこのurlをコピペしてインストールします。(テキストはコピペ可能)
その後PowerShellでazコマンド打つと確認できます。

 

 

 

 

 

 

 

 

 

 

 

※注意
Windows 用 Azure CLI をインストールする | Microsoft Learn
公式ドキュメント参考にwingetを実行した場合、wingetがインストールされてなければ成功しません。
なのでブラウザを使いました

適当なストレージアカウントを作成しファイルをアップロード

まずストレージアカウントを作成します。
サイドバーにあるデータストレージ/コンテナーからコンテナー作成し、ファイルをアップロードでき完了。

 

 

 

 

 

 

 

VMにストレージアカウントに対する権限を付与(ストレージBLOB共同作成者)

ストレージアカウントに対する権限付与は、以下記事を参考にさせていただきました。
AzureシステムマネージドIDを使ったVM→Blobへのアップロード #Azure – Qiita

Azure VM上でポータルログインできないように認証の設定がされているので、マネージドID利用する方法を選びました。

VM上でコマンド実行

Powershell ではなくコマンドプロンプトを使用します。
<認証>

az login --identity

<ダウンロード実行>
az storage blob | Microsoft Learn

az storage blob download --container-name コンテナ名 --name ファイル名 --file ダウンロード先パス\ファイル名 --account-name ストレージアカウント名 --auth-mode login

こちらを利用して、

az storage blob download --container-name ssmsexefile --name SSMS-Setup-JPN.exe --file C:\Users\tomioka-test01\Downloads\SSMS-Setup-JPN.exe --account-name tomiokasqlserver20250325  --auth-mode login

–container-name

VMのダウンロードフォルダに転送完了しました。

 

 

 

 

 

 

 

これでやっとSSMSをインストールできます。あとはexeファイル実行するだけです。

感想

そもそもなぜファイルのコピペはサポートされていないのでしょうか?
セキュリティの問題なのか、ビジネス的に採算とれないからなのか…。
様々な推察はできますが、なかなか確定したことは分からないです。

社会人2年目は、こういった疑問を自分で解決することを目標に頑張ろうと思います。

著者について

2024年4月入社。
現在はAzureの案件に取り組んでいます。
保有資格:応用情報技術者、簿記二級、TOEIC 865点、AZ-305

冨岡 虎太朗をフォローする

クラウドに強いによるエンジニアブログです。

SCSKクラウドサービス(Azure)は、Azureを最大限活用するためのオールインワンサービスです。40年以上の様々なシステム構築・運用実績で得た業界理解と、Azure構築ナレッジを強みに、クラウドへの移行から運用までトータルでサポートし、お客様のAzure活用を実現します。

Azureクラウド
シェアする
タイトルとURLをコピーしました