Alibaba CloudでのTeamViewerの設定方法

このチュートリアルでは、リモートで簡単かつ安全に接続するために、**Alibaba Cloud**で**TeamViewer**をセットアップする方法を説明します。

 [Alibaba Cloud Community Blog](https://www.alibabacloud.com/blog?spm=a2c65.11461447.0.0.42811302vEqmo6) 著者Alex

長年にわたり、[TeamViewer](https://www.teamviewer.com/?spm=a2c65.11461447.0.0.42811302vEqmo6)はコンピュータをリモートで接続し、ファイルを転送し、さらに画面を共有するための最も信頼できる方法の1つとなっています。TeamViewerは、業界で広く受け入れられています。

クロスプラットフォームのアプリケーションであるTeamViewerには、Windows、Mac、Linux用のバリエーションもあります。用途に応じて、個人用と商業用にそれぞれ無料版とプレミアム版が用意されています。より詳細な実験に進む前に、TeamViewerが提供する機能をいくつか見てみましょう。

#TeamViewerの機能
TeamViewerには、リモート管理を容易にするための豊富な機能があります。以下はその主な機能のリストです。

- 遠隔地に接続されたクライアントのリモートコントロールが可能
- デスクトップ、ビデオ、さらには通話の共有が可能
- 攻撃者からの接続を保護するための256ビットAES暗号化機能を搭載
- 接続しているクライアントの電源をリモートでオンにする
- リモートコントロールによるサーバーの再起動
- 複数画面の切り替えが可能

TeamViewerは、デスクトップパソコンからリモートサーバーへの接続を可能にするVNC（Virtual Network Computing）技術を採用しています。VNCは、デスクトップパソコンと同じようにリモートマシンを管理できるため、システム管理者に人気があります。VNCは、ユーザーが入力したコマンドを、インターネットを介してリモートコンピュータに伝達します。

TeamViewerをインストールすると、ファイル転送やその他の作業のためにサーバーに簡単にアクセスできるようになります。プレミアムオプションには、はるかに重要な機能が搭載されています。テキストベースのコンソールとGUIベースのコンソールの両方からTeamViewerにアクセスすることが可能です。それでは、チュートリアルの次のセクションに進みましょう。

#チュートリアルの要件
以下は、このチュートリアルの必須要件です。

- Ubuntuが動作するAlibaba Cloud [ECS](https://www.alibabacloud.com/product/ecs?spm=a2c65.11461447.0.0.42811302vEqmo6)インスタンス（4GBのRAMと50GBのストレージを搭載）。
- ECSにインストールされたデスクトップ環境とウィンドウセッションマネージャー。
- TeamViewerアカウントとその認証情報。

このチュートリアルでは、設定とインストールが非常に簡単なGnomeデスクトップ環境を採用しています。しかし、最小限のコンピューティングリソースの場合は、LightDM を検討してください。このチュートリアルでは、LightDM のインストールについては説明しません。

#デスクトップ環境とウィンドウセッションマネージャーのインストール
まず、Ubuntuサーバーのデスクトップ環境であるGnomeのインストールから始めましょう。デフォルトでは、Ubuntuサーバーにはデスクトップ環境はプレインストールされていませんが、数多くのオプションが用意されています。

以下のコマンドを実行してください。

```
sudo apt-get update
sudo apt-get upgrade
```

次に、以下のコマンドを実行して、UniverseとMultiverseをインストールします。

```
sudo add-apt-repository universe
sudo add-apt-repository multiverse
```

次に、以下のコマンドを実行して、Tasksel をインストールします。

```
sudo install tasksel
```

以下のコマンドで Tasksel を開きます。

```
sudo tasksel
```

Tasksel はインストールのためのいくつかのパッケージをリストアップしています。デスクトップ環境については、以下の6つの選択肢の中から選んでください。

- KDE ¨C Kubunto Desktop
- LXDE ¨C Lubunto Desktop
- BUDGIE ¨C Ubuntu Budgie Desktop
- GNOME ¨C Ubuntu Desktop
- MATE ¨C Ubuntu Mate Desktop
- XFCE ¨C Xubunto Desktop

このチュートリアルでは、Gnomeパッケージを選択します。スクロールダウンして、Ubuntuデスクトップで「Space」ボタンを押します。「Enter」を押すとインストールされ、システムにデスクトップ環境がインストールされます。さらに、セッションマネージャーなどの他の依存関係もシステムにインストールされます。そのため、セッションマネージャーをインストールする必要はありません。

以下のコマンドを実行して、サーバーを再起動します。

```
systemctl reboot -i
```

#サーバーの設定
ファイアウォールがTeamViewerの接続を確実に受け入れるためには、サーバーにいくつかの追加設定が必要です。設定を行うには、まず、接続用のポート5938に新たにUDP(User Datagram Protocol)とTCP(Transmission Control Protocol)を開きます。通常のHTTPまたはHTTPS接続（ポート80またはポート443）を使用することは、速度に関する問題を引き起こす可能性があるため推奨されません。

###Uncomplicated Firewall(UFW)
以下のコマンドを実行して、UFWを有効にしてください。システムが警告を表示する場合はyとENTERを入力してください。

```
sudo ufw enable
```

すでにUFWが動作している場合は、以下のコマンドを実行してください。

```
sudo ufw allow 5938/udp
sudo ufw allow 5938/tcp
```

次に、以下のコマンドでステータスを確認します。

```
sudo ufw status
```

以下のスニペットは、上記コマンドの出力を示しています。

```
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
5938                       ALLOW       Anywhere
5938/udp                   ALLOW       Anywhere
5938/tcp                   ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
5938 (v6)                  ALLOW       Anywhere (v6)
5938/udp (v6)              ALLOW       Anywhere (v6)
5938/tcp (v6)              ALLOW       Anywhere (v6)
```

次に、以下のコマンドを実行してUFWルールを再読み込みします（システムが警告を表示する場合はyとENTERを使用します）。

```
sudo ufw disable
sudo ufw enable
```

###ConfigServer Security & Firewall (CSF)
CSF のセットアップに必要なのは、設定ファイルを編集し、`TCP_IN` および `UDP_IN` タグの下にポートを含め、ファイアウォールを再起動することだけです。通常のやり方では、WinSCPを使って設定ファイルにアクセスし、選択したエディタで同じファイルを編集します。

```
sudo nano /etc/csf/csf.conf
# Allow incoming TCP ports 
TCP_IN = "5938"
# Allow outgoing TCP ports
TCP_OUT = "5938"
# Allow incoming UDP ports 
UDP_IN = "5938"
# To allow outgoing traceroute add 33434:33523 to this list 
UDP_OUT = "5938"
```

以下のコマンドを実行して、設定を実行します。

```
sudo csf -r
```

###効果の変化
前述の手順でTeamViewerプログラム用にTCPおよびUDPのポート5938を開いた後、サーバーを再起動して設定を有効にします。これにより、次回のサーバー再起動時にデスクトップ環境とセッションマネージャーが初期化されます。以下のコマンドを実行して再起動します。

```
shutdown -r now
```

ここまでは問題ありません。それでは、次のステップでサーバーインスタンスにTeamViewerをインストールする準備をしましょう。

#TeamViewerのインストール
インストールを進める前に、システムにTeamViewerホストを設定し、以下のようにソースからファイルをダウンロードします。

```
sudo wget https://download.teamviewer.com/download/linux/teamviewer-host_amd64.deb
```

次に、以下のコマンドを実行してTeamViewerをインストールします。パッケージへの正確なパスを指定する必要がある場合がありますのでご注意ください。

```
sudo dpkg --install ./teamviewer-host_amd64.deb
```

前述のコマンドでエラーが発生した場合は、以下のコマンドを実行してください。

```
sudo apt-get install -f
```

上記のコマンドを実行すると、不足していた依存関係が修正され、「install」コマンドが実行できるようになります。以下のコマンドを実行してください。

```
sudo dpkg --install ./teamviewer-host_amd64.deb
```

インストールプロセスが完了するまで、中断することなく実行します。TeamViewerが正常にインストールされたと仮定して、以下のコマンドを実行してTeamViewerの使用に必要な設定を行います。

```
sudo teamviewer setup
```

コマンド実行後に利用規約に同意し、アカウントのログイン認証情報を入力します。電子メールを確認して、検証リンクと、新しいシステム（特にECSインスタンス）からのログインを許可する要求を確認します。これは、TeamViewerアカウントへの不正アクセスを防止するためのセキュリティ対策です。

必要な承認を得た後、資格情報を再度提供してコマンドライン入力からログインします。TeamViewerアカウントの下で安全なマシンとしてサーバーをセットアップするなど、 TeamViewerが提案する追加手順に従います。これまでにエラーが発生した場合は、ポートの設定やインターネット接続を再確認し、以下のコマンドを再実行してください。

```
sudo teamviewer setup
```

すると、以下のような画面が表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/647921/53837920-3d0e-1add-e51e-27a5fcbab8dc.png)


###ログインに関する問題
通常、パスワードを入力してもインターフェイスに表示されないため、間違いを防ぐために注意が必要です。パスワードをコピーして、マウスやタッチパッドの右ボタンをクリックして貼り付けてください。

それでもログインエラーが発生する場合は、次の方法をお試しください。以下のコマンドを実行して、TeamViewerインストール用のIDを取得します。

```
sudo teamviewer info
```

TeamViewerのIDをどこかにコピーしてから、下記のコマンドを実行してインストール用のパスワードを設定します。

```
sudo teamviewer passwd YOUR_PASSD
```

`YOUR_PASSD`を新しいパスワードに置き換えることを確認します。



#TeamViewerからUbuntuサーバーへの接続
###デバイスの接続
電子メールとパスワードを使用してTeamViewerホストにログインすると、この時点でサーバーへの迅速な接続が可能になります。TeamViewerのリモート接続を使用するには、オンラインまたはデスクトップクライアントを使用して、TeamViewerのログインページにアクセスします。サーバーがコンピュータの1つとして表示されている必要があります。サーバーを選択すると、TeamViewerがそのサーバーにリモートで接続します。

###パートナーIDによる接続
電子メールを使用してログインできなかった場合は、すでにTeamViewer IDとパスワードを持っています。デスクトップでTeamViewerクライアントを開き、パートナーIDとパスワードを入力して、リモートサーバーに接続します。先にデスクトップ環境とウィンドウセッションマネージャーの両方を正常にインストールしたことを考慮すると、TeamViewerにログインした後に以下のようなインターフェースが表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/647921/b24a0ae1-c774-a79b-316a-3b9cee130019.png)


デスクトップ環境をインストールしていない場合は、以下のような画面が表示されます。上記のようなきれいなデスクトップを得るためには、デスクトップ環境をインストールすることをお勧めします。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/647921/7b7fb22c-c552-b972-0242-9c0ce84e8bf0.png)

おめでとうございます。これで、Ubuntu 18.04を実行しているECSインスタンスへのTeamViewerホストのインストールと設定が完了しました。なお、Ubuntu 16.04を使用している場合は、大きな違いはありません。Alibaba Cloudは、最も信頼できるクラウドテクノロジープロバイダーの1つです。テクノロジーパートナーとの継続的なコラボレーションや、サードパーティ製ソフトウェアの統合により、信頼性がさらに高まっています。Alibaba Cloudは、市場で最も急成長しているクラウドサービスプロバイダーです。

#TeamViewerのアップデート方法
以下のコマンドを実行することで、簡単にTeamViewerをアップデートすることができます。



```
sudo apt update & upgrade
```

デフォルトでは、TeamViewerはシステムが簡単にアップデートを開始できるように、新しいファイルを`/etc/apt/sources.list.d/teamviewer.list`に追加します。または、以下のコマンドを実行してください。

```
sudo apt update
sudo apt upgrade
```

#まとめ
TeamViewerは、最も人気のあるリモート接続技術の1つです。TeamViewerを使用すると、簡単かつ安全に共同作業を行うことができます。このチュートリアルでは、Ubuntu上で動作するAlibaba Cloud ECSインスタンスにTeamViewerをインストールして、サーバーへのリモートアクセスを可能にする方法を説明しています。通常、256ビットのAES暗号化により、あらゆるデバイスからサーバーへの接続が保護されています。ここでもう一つ印象的なのは、TeamViewerがサーバーへのリモートアクセスや診断を行うためのスマートフォンアプリを提供していることです。リモートアクセスは、遠隔地のコンピュータのすぐ隣に座っているかのような感覚になるほど画期的なものです。ぜひお試しください。

Alibaba Cloudのアカウントをお持ちではないですか？アカウントに登録すると、最大1200ドル相当の[40以上の製品を無料でお試し](https://account.alibabacloud.com/register/intl_register.htm?spm=a2c65.11461447.0.0.42811302vEqmo6)いただけます。[Get Started with Alibaba Cloud](https://account.alibabacloud.com/register/intl_register.htm?spm=a2c65.11461447.0.0.42811302vEqmo6)では、詳細をご覧いただけます。

*本ブログは英語版からの翻訳です。オリジナルは[こちら](https://www.alibabacloud.com/blog/how-to-configure-teamviewer-on-alibaba-cloud_595776)からご確認いただけます。一部機械翻訳を使用しております。翻訳の間違いがありましたら、ご指摘いただけると幸いです。*


*アリババクラウドは日本に２つのデータセンターを有し、世界で60を超えるアベラビリティーゾーンを有するアジア太平洋地域No.1(2019ガートナー)のクラウドインフラ事業者です。
アリババクラウドの詳細は、こちらからご覧ください。
[アリババクラウドジャパン公式ページ](https://www.alibabacloud.com/ja)*