今更だけどTeamSpeakのサーバーを立てよう!

#0.はじめに
今更ながら TeamSpeak のサーバーを立てる方法を紹介します。
最近ではDiscordとかで十分な感じがしますが。
Skypeもエンドツーエンドに対応したそうなのでDiscordに流れたユーザーが少しは戻るかなって思っています。

##0-1.環境
筆者環境は次の通りです。
クライアント:Windows7 64bit 
クライアントアプリ: 3.1.8
サーバー: CentOS Linux release 7.3.1611 (64bit)
サーバーアプリ: 3.0.13.8

#1.必要なものをダウンロードしよう
「TeamSpeakのサーバーを立てるぜ!!」といっても必要なものをダウンロードしないとできません。

https://www.teamspeak.com/en/downloads.html#server からOSにあったものをダウンロードします。

```
wget http://dl.4players.de/ts/releases/3.0.13.8/teamspeak3-server_linux_amd64-3.0.13.8.tar.bz2
や
wget http://teamspeak.gameserver.gamed.de/ts3/releases/3.0.13.8/teamspeak3-server_linux_amd64-3.0.13.8.tar.bz2
```

#2.展開してディレクトリに移動して実行しよう

ダウンロードしたら展開します。

```
tar -jxvf teamspeak3-server_linux_amd64-3.0.13.8.tar.bz2
```

展開してディレクトリを移動したら、

```
./ts3server_startscript.sh start
```
を実行します。

実行すると特権トークンとかが出てきます。

```
------------------------------------------------------------------
                      I M P O R T A N T                           
------------------------------------------------------------------
               Server Query Admin Account created                 
         loginname= "serveradmin", password= "<大小数8桁>"
------------------------------------------------------------------


------------------------------------------------------------------
                      I M P O R T A N T                           
------------------------------------------------------------------
      ServerAdmin privilege key created, please use it to gain 
      serveradmin rights for your virtualserver. please
      also check the doc/privilegekey_guide.txt for details.

       token=<大小数40桁>
------------------------------------------------------------------
```
ログインネームとかパスワードとかは気にしなくていいです。
一番重要なのはtoken=の部分です。
ここは必要になる部分が出てくるので絶対にコピーしてテキストなりに保存しておくことをお勧めします。

#3.ポートを開放しよう
9987/UDP
10011/TCP
30033/TCP
を開放します。

9987/UDP
一番重要なポートです。
このポートを介してボイスチャットの音声情報が転送されます。
10011/TCP
一番重要なポートです。
このポートを介してボイスチャットの音声情報が転送されます。
30033/TCP
ファイル転送用のポートです。
TeamSpeak3のファイル転送機能の他にアバター画像などの転送にも使われるので設定をしておいたほうが良いでしょう。

```
firewall-cmd --add-port=9987/udp --zone=public --permanent
firewall-cmd --add-port=10011/tcp --zone=public --permanent
firewall-cmd --add-port=30033/tcp --zone=public --permanent
```

#4.サーバーへ接続しよう
(ここからWin7)
「TeamSpeak 3 Client」を起動します。
接続>接続するからサーバーのアドレスを入力します。

接続に成功すると「特権トークンが云々」と聞かれますので、先ほどメモしたトークンキーを入力します。

これでサーバーの設定とかをクライアントアプリでいじることができるようになります。

defaultとかあるところで右クリックすると、「チャンネルを作成する」があると思いますのでこれでチャンネルが作成できます。

#5.ライセンスについて
デフォルトの状態ではライセンスがなく、32人ぐらいしか接続できません。
ライセンスを有効にすることで数を増やすことができます。
ライセンスの種類は2種類、「Non-Profit License: Unregistered」「Non-Profit License: Registered」があります。

Non-Profit License: Unregistered
サーバを特に設定せずに起動するとこのライセンスが自動的に適用されます。
このライセンスではサーバに同時に接続できるユーザは最大で32名です。

Non-Profit License: Registered
サーバに33名以上（最大で512名）同時に接続させたい場合は、こちらのライセンスを取得します。

ライセンスの取得は　http://npl.teamspeakusa.com/ts3npl.php　から行えます。
が、ここが問題で条件があります。

```
READ CAREFULLY BEFORE PROCEEDING

Please apply only if you meet the following requirements and you have a need for a TeamSpeak server with more than 32 slots.
(略)
You MUST host your server on a unique IP address.

[訳(google翻訳先生)
先に注意深く読み進めてください

次の要件を満たし、32スロット以上のTeamSpeakサーバーが必要な場合にのみ適用してください。それ以外の場合は、32スロットを含むTeamSpeakの標準サーバーソフトウェアをダウンロードすることができ、ライセンスは必要ありません。

あなたは、
コミュニティ活動を示すカスタムドメイン（例： 'www.mygroupsite.com'）上で、検証可能で運用可能なウェブサイトを持っていなければなりません。
お客様のウェブサイトを確認する際には、寄付ボタン、広告、マーケットプレイス/ストア/ショップ、またはあらゆる種類の商業活動を行うことはできません。商業活動を行っている他のウェブサイトへのリンクも含んではいけません。
あなたのウェブサイトがNPL（メンバー数が少ない、コミュニティの活動がほとんどないなど）を取得するためにのみ作成されたものと思われる場合や、単に一般に無料ホスティングを提供していると思われる場合は、申請は拒否されます。NPLは、コミュニティ活動を実証できるウェブサイトと、32以上のスロットを持つサーバーが必要な既成の組織を対象としています。
カスタムドメインに関連付けられたメールアドレス（例： ' yourname@mygroupsite.com '）を入力する必要があります。個人のメールアドレスと、Gmail、Yahoo、Hotmailなどの無料のメールサービスは許可されていません。
TeamSpeak NPLサーバーを実行する静的で専用のIPアドレスを指定する必要があります。あなたが指定したIPアドレスですでにNPLが発行されている場合、あなたの申請は拒否されます。固有のIPアドレスでサーバーをホストする必要があります。
```
要約すると、

- 独自ドメインのWEBサイトを運営していること
- 上記の独自ドメインに関連するメールアドレスを持っていること
- Non-Profit Licenseを受けたサーバは固定（グローバル）IPを割り当てられたマシンで動作させること
- 1つのIPアドレスに対して、1つのライセンスのみ登録可能。
- WEBサイト上にはいかなる寄付ボタンや、広告もあってはならない
 
ライセンス違反を起こすとブラックリストに登録されて、サーバーに接続されなくなります。

上の関係で私もライセンスをとれてないので解説は省きます。

#6.最後に
これ解説は終わりです。
わかりにくい部分しかなかったと思いますが、多少でも参考になればと思います。

##6-1.リンク
- 筆者Twitter: [@yamagami2211](https://twitter.com/yamagami2211)
- 筆者のwebサイト: https://yama2211.biz/
- ついでにts3サーバ立てています。よろしければ→https://yama2211.biz/ts3-server
[参考]
- [TeamSpeak3 Wiki](http://hovel.arcenserv.info/ts3/)