【minecraft】ユーザにオペレータ権限を設定する方法

記事内に広告が含まれています。

オペレータ権限について

minecraftでのオペレータ権限とは、サーバを停止させたり、悪質なユーザをサーバから追い出したりする等のコマンドを実行できる権限のことです。

オペレータが使用できるコマンドの一覧はこちらサイトで確認してみてください。

オペレータ権限を与える方法

minecraftで、ユーザにオペレータ権限をあたえる方法です。

マイクラでオペレータ権限をユーザにあたえるには、「ops.json」に設定を追加する必要があり、「ops.json」に設定を追加するには下記の方法があります。

  • サーバのコンソールから「op [ユーザ名]」コマンドを実行
  • ops.jsonに直接設定
  • ゲーム画面から「/op [ユーザ名]」コマンドを実行(オペレータ権限を持ったユーザのみ実行可能)

コンソールから「op」コマンド実行

コンソールからの設定方法について説明します。
※この方法が簡単なのでお勧めです。

サーバにログインし、「minecraft_server」の動作ログが表示されいる画面で「op」コマンドを実行します。
オペレータ権限をユーザに与えることが出来ると「Opped ユーザ名」と表示されます。

opコマンド書式

op ユーザ名
opコマンド実行例

「tamohiko」ユーザにオペレータ権限をあたえた際の作業ログとなります。

[13:39:04] [Server thread/INFO]: tamohiko joined the game
op tamohiko   <--「tamohiko」にオペレータ権限を付与
[13:39:20] [Server thread/INFO]: Opped tamohiko  <--OP権限が追加された
ゲーム画面では

オペレータ権限が与えられたユーザには、その旨のメッセージが表示されます。
このメッセージはすぐ消えてしまうので、よく見ていないと見逃してしまうかもしれません。

minecraft-opadd

ops.json内容

「op」コマンドでオペレータ権限をユーザにあたえると、自動的に「ops.json」ファイルに設定が追加されます。
必要に応じてユーザにあたえたい権限レベルなど変更してください。

ops.jsonファイル例

tamohikoユーザを追加した際の、「ops.json」ファイルの中身となります。

[
  {
    "uuid": "ad6bb107-d45a-43fb-b0fa-64d91ef48ef3",
    "name": "tamohiko",
    "level": 4,
    "bypassesPlayerLimit": false
  }
]

項目説明

「ops.json」ファイルは、「uuid」「name」「level」「bypassesPlayerLimit」の項目により構成されています。

各項目の内容は下記の通りとなっています。

uuid minecraftユーザに設定されている、ユニークなIDのこと
このID番号は、Mojangが公開しているAPIで確認することが出来る
https://api.mojang.com/users/profiles/minecraft/
ユーザ名
name minecraftのユーザ名
level オペレータに与える権限のレベルです。レベルの数字が大きくなるにつけて、出来ること項目が増えてゆく

  • 1 – 「spawn-protection」範囲の編集が可能となる
  • 2 – /clear, /difficulty, /effect, /gamemode, /gamerule, /give, /tpコマンドとコマンドブロック編集も可能となる
  • 3 – /ban, /deop, /kick, /op コマンドも利用可能となる
  • 4 – /stopコマンドも利用可能となる

サーバの管理者ならば、level 4 で問題ないです。

bypassesPlayerLimit サーバログインユーザ数が最大になっている場合にも、ログインできるか出来ないかの設定
true ログイン出来る
false ログイン出来ない
設定反映方法

各項目の設定を変更した場合は、「minecraft_server」を再起動することで設定を反映させることができます。

ops.jsonファイルに直接追加

こちらの方法は、minecraft_serverの再起動が必要なのであまりお勧めしませんが、
一気に何人も追加したいときは便利かも知れません・・・

ops.txtを使用して追加方法

「ops.txt」というファイル新規作成し、そこにユーザ名を記述し「minecraft_server」を再起動させることで、自動的に「ops.json」に設定が追加されます。

ops.jsonを直接編集する方法

上記の「ops.jsonファイル例」の書式を参考に、vi等で直接「ops.json」ファイルにユーザ情報を追加することでも、ユーザにオペレータ権限をあたえることが出来ます。

もし、直接「ops.json」ファイルにユーザ情報を追加する時に、複数ユーザを追加する場合は、ユーザ情報とユーザ情報の間に「,」が必要ですので、注意してください。

複数ユーザが登録された「ops.json」

[
  {
    "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "name": "xxxxx",
    "level": 4,
    "bypassesPlayerLimit": false
  }, <---「,」が必要になります
  {
    "uuid": "ad6bb107-d45a-43fb-b0fa-64d91ef48ef3",
    "name": "tamohiko",
    "level": 4,
    "bypassesPlayerLimit": false
  }
]

※私個人の考えでは、すでにある「ops.json」ファイルをどっかから持ってくる以外は、いちいちuuidを調べたりするのが大変なので「ops.txt」か「op」コマンドを使用したほうが良いような気がします。

ゲーム画面から「/op」コマンド実行

この方法は、すでにオペレータ権限を持っているユーザのみが実行可能となります。

ゲーム画面上で「/op [ユーザ名]」とコマンドを入力することで、指定したユーザにオペレータ権限を与えることができます。

CentOS7-op

この画像では、「tamohiko」ユーザにオペレータ権限をあたえています。

オペレータ権限の取り消し

オペレータ権限をあたえたユーザから、オペレータ権限を取り消す方法です。

マイクラでオペレータ権限をユーザから取り消すには、「ops.json」から該当ユーザの情報を削除する必要があり、「ops.json」からユーザ情報を削除するには下記の方法があります。

  • サーバのコンソール上からdeopコマンド実行
  • ops.jsonから直接削除
  • ゲーム画面から「/deop [ユーザ名]」コマンドを実行(オペレータ権限を持ったユーザのみ実行可能)

サーバのコンソール上からdeopコマンド実行

コンソールからの設定方法です。

サーバにログインし、「minecraft_server」の動作ログが表示されいる画面で「deop」コマンドを実行します。

オペレータ権限をユーザに与えることが出来ると「De-opped ユーザ名」と表示されます。

deopコマンド書式

deop ユーザ名

deopコマンド実行例

tamohikoユーザから、オペレータ権限を取り消しています。

[16:32:43] [Server thread/INFO]: Unknown command. Try /help for a list of commands
deop tamohiko <--deop [ユーザ名]コマンドを入力
[16:32:47] [Server thread/INFO]: De-opped tamohiko <--オペレータ権限が取り消された

ちなみに、オペレータ権限をあたえられたユーザには、そのむねのメッセージが表示されますが、オペレータ権限を取り消されたユーザにはメッセージは表示されません。

ops.jsonから直接削除

「ops.json」ファイルから、vi等で該当ユーザの情報部分を直接削除し、「minecraft_server」を再起動します。

これで、該当ユーザがらオペレータ権限が取り消されます。

ゲーム画面から「/deop [ユーザ名]」コマンドを実行

この方法は、すでにオペレータ権限を持っているユーザのみが実行可能となります。

ゲーム画面上で「/deop [ユーザ名]」とコマンドを入力することで、指定したユーザからオペレータ権限をとりけすことができます。

CentOS7-deop

コメント

  1. ssksgm より:

    58.189.9.112これサーバーipです
    よかったら来てください

  2. ssksgm より:

    あ、あとバージョンは1.14.2です

  3. うさぎさん より:

    なぜかjsonを消してtxtで保存しても権限が与えられていません。
    そしてops.jsonではなぜか[]のみになってます。、、、

  4. たもひこ より:

    うさぎさん

    サーバのコンソールから、opコマンドで権限与えることはできますか?

    〉そしてops.jsonではなぜか[]のみになってます

    書式に間違いがなければ、文字コードとかが原因とかですかね。

  5. hage より:

    参考になりました。

    • tamohiko より:

      hage さん

      コメントありがとうございます。
      お役立てたようでうれしく思います!

  6. sunny_lettce より:

    あのこれ普通にbatfileに/op “playername” でできますよ…

  7. ばなな より:

    op略奪なら/deop ○○(名前) でできますよ
    opつけるなら /op ○○(名前) で

タイトルとURLをコピーしました