Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

minecraftインストール #5

Closed
ayanecen opened this issue Dec 15, 2016 · 2 comments
Closed

minecraftインストール #5

ayanecen opened this issue Dec 15, 2016 · 2 comments

Comments

@ayanecen
Copy link
Owner Author

コンソールからログイン

アップデート実行

# yum -y update

SSH設定変更

SSHの設定ファイルである「/etc/sshd_config」で行います。

# cd /etc/ssh/
# cp -p sshd_config old_sshd_config
# vi sshd_config

blueb901/linux@44f57f4

rootユーザのログイン禁止

設定変更前

#PermitRootLogin yes

設定変更後

PermitRootLogin no

SSH接続ポート変更

設定変更前

#Port 22

設定変更後

Port 20022

設定反映

systemctl restart sshd

鍵認証方式への変更について

firewalld設定

ゾーンの変更

ゾーンの確認

# firewall-cmd --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:

デフォルトゾーンの変更

# firewall-cmd --set-default-zone=dmz
success

dmzゾーンにインターフェイス接続

「/etc/sysconfig/network-scripts/ifcfg-eth0」に設定を追加することで行えます。

設定変更

# cd /etc/sysconfig/network-scripts/
# cp -p ifcfg-eth0 old_ifcfg-eth0
# vi ifcfg-eth0

追加設定

blueb901/linux@fda0b13

ZONE=dmz

ポート開放設定

SSHポートの開放

正常に設定が完了すると、「success」と表示されます。

# firewall-cmd --permanent --add-port=20022/tcp
success

ssh(22番)ポートの削除

dmzゾーンの初期設定で通信許可されているsshは必要ないので設定を削除します。

# firewall-cmd --permanent --remove-service=ssh
success

minecraft用ポートの開放

# firewall-cmd --permanent --add-port=25565/tcp
success

firewall設定の反映

# firewall-cmd --reload
success

SELinux設定無効化

設定変更

SELinuxの有効・無効の設定は「/etc/sysconfig/selinux」ファイルで設定します。

# cp -p /etc/sysconfig/selinux /etc/sysconfig/old_selinux
# vi /etc/sysconfig/selinux

変更内容

blueb901/linux@69d88d9

変更前

SELINUX=enforcing

変更後

SELINUX=disabled

サーバ再起動

# reboot

動作確認作業

SSHの動作確認

  • SSHでOSインストール時に作成したユーザでサーバに接続できること
  • rootユーザでログイン出来ないこと

firewalldの設定確認

「firewall-cmd」コマンドを使用。

  • defaultのゾーンが「dmz」になっていること
  • interfacesにeth0が割り当てられていること
  • portsにSSH用ポート20022とminecraft用ポート25565が設定されていること
$ su -
# firewall-cmd --list-all
dmz (default, active)
  interfaces: eth0
  sources:
  services:
  ports: 20022/tcp 25565/tcp
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:

SELinux無効化確認

getenforceコマンドを実行。

# getenforce
Disabled

時刻同期設定

ntpdateインストール

# yum -y install ntpdate

ntpdate実行

# ntpdate ntp1.jst.mfeed.ad.jp

chronyd設定

chronydの設定ファイルは「/etc/chrony.conf」となります。

# cp -p /etc/chrony.conf /etc/old_chrony.conf
# vi /etc/chrony.conf

編集内容

blueb901/linux@9151f44

変更前
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
変更後
server ntp1.jst.mfeed.ad.jp iburst
server ntp2.jst.mfeed.ad.jp iburst
server ntp3.jst.mfeed.ad.jp iburst

設定反映

# systemctl restart chronyd

時刻同期確認

時刻同期が動作しているかの確認に、「chronyc sources」コマンドを使用。
サーバ名の前に「^+」「^* 」が表示されていれば、正常に同期。

# chronyc sources
210 Number of sources = 3
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^+ ntp1.jst.mfeed.ad.jp 2 6 17 19 -14us[ +15us] +/- 36ms
^+ ntp2.jst.mfeed.ad.jp 2 6 17 19 +53us[ +82us] +/- 37ms
^* ntp3.jst.mfeed.ad.jp 2 6 17 19 +31us[ +60us] +/- 13ms

@ayanecen
Copy link
Owner Author

javaのインストール

javaのインストール #10

# yum -y install java

screenインストール

screenのインストール #11

# yum -y install screen

wgetインストール

wgetのインストール #12

# yum -y install wget

minecraftインストール

ユーザの作成

ユーザ作成

# adduser minecraft
# passwd minecraft
Changing password for user minecraft.
New password:
Retype new password:

minecraft_serverダウンロード

Minecraftのダウンロードページにアクセス。
minecraft_server.jarのダウンロードURLを確認「wget」コマンドでダウンロード。

# mkdir /opt/minecraft
# chown minecraft:minecraft /opt/minecraft/
# su - minecraft
$ cd /opt/minecraft/
$ wget https://s3.amazonaws.com/Minecraft.Download/versions/1.8.8/minecraft_server.1.8.8.jar

minecraft_Serverのコピー

ダウンロードしてきたファイルの名前を、「minecraft_server.jar」とう名前で複製。
もとのファイルはバックアップとして保存。

$ cp -p minecraft_server.1.8.3.jar minecraft_server.jar

minecraft_server初回起動

「Stopping server」と表示される。

$ java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui
[19:09:40] [Server thread/INFO]: Starting minecraft server version 1.8.3
[19:09:40] [Server thread/INFO]: Loading properties
[19:09:40] [Server thread/WARN]: server.properties does not exist
[19:09:40] [Server thread/INFO]: Generating new properties file
[19:09:40] [Server thread/WARN]: Failed to load eula.txt
[19:09:40] [Server thread/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
[19:09:40] [Server thread/INFO]: Stopping server

EULA(使用許諾契約)同意

  • eula.txt EULAについてのファイル
  • server.properties minecraft_serverの設定ファイル
  • logs ログ格納ディレクトリ
$ ls -la
total 19112
drwxr-xr-x 3 minecraft minecraft 116 Mar 24 19:09 .
drwxr-xr-x. 3 root root 22 Mar 24 19:02 ..
-rw-rw-r-- 1 minecraft minecraft 181 Mar 24 19:09 eula.txt
drwxrwxr-x 2 minecraft minecraft 23 Mar 24 19:09 logs
-rw-rw-r-- 1 minecraft minecraft 9778206 Feb 20 23:22 minecraft_server.1.8.3.jar
-rw-rw-r-- 1 minecraft minecraft 9778206 Feb 20 23:22 minecraft_server.jar
-rw-rw-r-- 1 minecraft minecraft 59 Mar 24 19:09 server.properties

EULAの確認

「eula.txt」ファイルを確認

$ cat eula.txt
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
#Tue Mar 24 19:09:40 JST 2015
eula=false

EULAへの同意

$ vi eula.txt
編集内容
変更前

eula=false

変更後

eula=true

minecraftサーバの起動

起動コマンド

$ java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui

minecraftサーバへの接続確認

サーバへの接続方法

Minecraftサーバの停止

stop

起動・停止スクリプトの作成

minecraft 起動用スクリプトの作成

$ vi mc_start.sh
起動スクリプト
#!/bin/bash

USERNAME='minecraft'
SERVICE='minecraft_server.jar'

cd /opt/minecraft

ME=`whoami`

if [ $ME == $USERNAME ] ; then
  if pgrep -u $USERNAME -f $SERVICE > /dev/null
    then
      echo "$SERVICE is already running!"
    else
      echo "Starting $SERVICE..."
      screen -AmdS minecraft java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
    fi
  else
    echo "Please run the minecraft user."
fi

パーミッションの変更

$ chmod 744 mc_start.sh
パーミッションの確認
$ ls -la mc_start.sh
-rwxr--r-- 1 minecraft minecraft 288 Apr  3 17:38 mc_start.sh

停止用スクリプトの作成

$ vi mc_stop.sh
停止スクリプト
#!/bin/bash

SERVICE='minecraft_server.jar'
USERNAME='minecraft'


cd /opt/minecraft

ME=`whoami`

if [ $ME == $USERNAME ] ; then
  if pgrep -u $USERNAME -f $SERVICE > /dev/null
    then
      echo "Stopping $SERVICE"
      screen -p 0 -S minecraft -X eval 'stuff "/say SERVER SHUTTING DOWN IN 10 SECONDS. Saving map..."\015'
      screen -p 0 -S minecraft -X eval 'stuff "/save-all"\015'
      sleep 10
      screen -p 0 -S minecraft -X eval 'stuff "/stop"\015'
      sleep 7
      echo "Stopped minecraftserver"
    else
      echo "$SERVICE was not runnning."
  fi
else
  echo "Please run the minecraft user."
fi

パーミッションの変更

# chmod 744 mc_stop.sh
パーミッションの確認
$ ls -la mc_stop.sh
-rwxr--r-- 1 minecraft minecraft 553 Apr  3 17:39 mc_stop.sh

起動スクリプトの実行確認

$ ./mc_start.sh

screenの確認

$ screen -ls

minecraft screenへ接続

正常にminecraftが起動されているか確認。

$ screen -r minecraft

minecraft screenから抜けるには

「Ctrl」+「a」を押下した後に「d」。

minecraftサーバの停止

$ /opt/minecraft/mc_stop.sh

minecraft 自動起動設定

systemd用ファイル作成

CentOS7からサービスの管理が変わって「systemd」での管理へ変更。
systemd用の設定ファイルを「/etc/systemd/system」ディレクトリに作成。
ファイル名は「minecraft.service」。

$ su -
# vi  /etc/systemd/system/minecraft.service
設定内容
[Unit]
Description=Minecraft Server
After=network.target local-fs.target

[Service]
Type=forking
User=minecraft
ExecStart=/opt/minecraft/mc_start.sh
ExecStop=/opt/minecraft/mc_stop.sh

[Install]
WantedBy=multi-user.target

自動起動設定

「systemctl」コマンドを使用して、「minecraft.service」の自動起動設定。

# systemctl enable minecraft
ln -s '/etc/systemd/system/minecraft.service' '/etc/systemd/system/multi-user.target.wants/minecraft.service'

minecraftユーザ設定

minecarftユーザの環境設定ファイルである「/home/minecraft/.bash_profile」を編集し、「/opt/minecraft」へのパスを通す。

# su - minecraft
$ cd
$ cp -p .bash_profile old_.bash_profile
$ vi .bash_profile
編集内容

「PATH」の部分に「/opt/minecraft」を追加。

編集前
PATH=$PATH:$HOME/.local/bin:$HOME/bin
編集後
PATH=$PATH:$HOME/.local/bin:$HOME/bin:/opt/minecraft

サーバ再起動

自動的にminecraftサーバが起動してくることを確認。

$ su -
# reboot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant