さくらのVPSでの初期設定(CentOS7)


はじめに

qiita初投稿につき、書式の練習が主目的です。内容はペラッペラです。
記載は2019/1/1です。(最新とか言ってても「当時の」最新です)

対象機器および環境

さくらのVPS(v4) SSD 512 TK02
(TK:東京リージョンってことなのか?)

このエントリを読むとできること

  • さくらのVPSの標準OSをインストールして
  • 基本的な初期設定ができて
  • SSHでログインできるようになる

はず。

標準OSインストール

** VPSコントロールパネルから当該サーバを選択し、「各種設定」→「OSインストール」を選択**

「標準OS」で「CentOS7 / x86_64」を選択。パスワードを入力して「設定内容を確認する」をクリック

** サーバの状態が「稼働中」になっていればOK **

各種設定変更

ログイン

セットアップが完了したら、インストール直後の状態なので、SSH(22/TCP)でrootログインする。

$ ssh root@[VPSサーバ]
The authenticity of host '[VPSサーバ] (x.x.x.x)' can't be established.
ECDSA key fingerprint is SHA256:kokonihaSHA256nofinga-purintogakokonihyoujisareru
ECDSA key fingerprint is MD5:ko:ko:ni:ha:md:go:no:fi:ng:a-:pu:ri:nn:to:de:su:ne.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[VPSサーバ],x.x.x.x' (ECDSA) to the list of known hosts.
root@[VPSサーバ]'s password:

SAKURA Internet [Virtual Private Server SERVICE]

[root@sakura01 ~]#

作業用ユーザ作成

リモートログインや特権不要の場合などは、一般ユーザで作業する。

# useradd NEWUSER
# passwd PASSWORD
# usermod -G wheel NEWUSER
# visudo
-----8<-----snip-----8<-----
## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL
-----8<-----snip-----8<-----

SSHログイン用の設定(sshd_config)

ひとまず最低限の設定を。
※そのうち、公開鍵認証と証明書認証を整理しよう。

# vi /etc/ssh/sshd_config
-----8<-----snip-----8<-----
#Port 22
Port XXXX

#PasswordAuthentication yes
PasswordAuthentication no

#PermitRootLogin no
PermitRootLogin no
-----8<-----snip-----8<-----

# systemctl restart sshd

ファイアウォール設定(firewalld)

# 以下プロンプト省略
firewall-cmd --remove-service=ssh --zone=public --permanent
firewall-cmd --remove-service=dhcpv6-client --zone=public --permanent
firewall-cmd --add-port=XXXX/tcp --zone=public --permanent
firewall-cmd --reload
※XXXXはsshd_configで指定したポート

SELinuxの無効化

ちゃんと使いこなせてるひと偉すぎ!

# getenforce
Disabled
※あれ、デフォルトで無効化されている。。。

# vi /etc/selinux/config
-----8<-----snip-----8<-----
SELINUX=disabled
-----8<-----snip-----8<-----

パッケージアップデート

# yum install tmux vim lftp
(個人的によく使うもので。。。)

# tmux
(としておくと、途中で切れても安心!)

# yum update
(~~ずらずら~~)

完了しました!
# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

再起動

SELinuxが無効化されているので、特に必要ないはずだけど、一応。

# shutdown -r now

動作確認

※22/tcpは閉じている
$ ssh root@[VPSサーバ] 
ssh: connect to host [VPSサーバ] port 22: No route to host
※rootログインは許可されていない
$ ssh root@[VPSサーバ] -p 1048
The authenticity of host '[VPSサーバ]:1048 ([x.x.x.x]:1048)' can't be established.
ECDSA key fingerprint is SHA256:kokonihaSHA256nofinga-purintogakokonihyoujisareru
ECDSA key fingerprint is MD5:ko:ko:ni:ha:md:go:no:fi:ng:a-:pu:ri:nn:to:de:su:ne.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[VPSサーバ]:1048,[x.x.x.x]:1048' (ECDSA) to the list of known hosts.
root@[VPSサーバ]'s password:
Permission denied, please try again.
root@[VPSサーバ]'s password:
Permission denied, please try again.
root@[VPSサーバ]'s password:
Permission denied (publickey,password).
※新規作成したユーザでログインする
$ ssh NEWUSER@[VPSサーバ] -p 1048
NEWUSER@[VPSサーバ]'s password:

SAKURA Internet [Virtual Private Server SERVICE]

$ sudo -s

あなたはシステム管理者から通常の講習を受けたはずです。
これは通常、以下の3点に要約されます:

    #1) 他人のプライバシーを尊重すること。
    #2) タイプする前に考えること。
    #3) 大いなる力には大いなる責任が伴うこと。

[sudo] NEWUSER のパスワード:
#

おしまい

[追記:2020/3/18] dockerとdocker-compose

以下の公式マニュアルに沿ってインストールする。
https://docs.docker.com/install/linux/docker-ce/centos/

yum remove docker  docker-client docker-client-latest  docker-common docker-latest \
                  docker-latest-logrotate  docker-logrotate  docker-engine

yum install -y yum-utils  device-mapper-persistent-data  lvm2

yum-config-manager \
    --add-repo https://download.docker.com/linux/centos/docker-ce.repo

yum install -y docker-ce docker-ce-cli containerd.io

systemctl start docker

これでインストール完了。動作確認は

docker run hello-world

あとは自動起動しておく

systemctl enable docker

Docker-composeはこれでインストール

curl -L "https://github.com/docker/compose/releases/download/1.25.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

おわりに

感想

いまさらながら、[VPSサーバ]って変ですね。"S"が重複してますね。
書式練習と思いましたが、記載内容のバリエーションが少なかったので、あんまりMarkdown使いこなせてないですね。

出典

特にありません。