2018年02月

Cloud At Cost の VPS を借りてみた。

Cloud At Cost
よく Twitter で割引クーポンも発行しています。
大抵「50〜90% OFF」で借りられると思います。

一度支払えば、あと年 $9 のメンテナンス料を支払うことで、一生使えるというサービスですが、値段以外の評判はあまり良くはありません。w
ただ、僕的には普通に使えそう、という印象です。距離が離れているので、反応が少し遅かったりしますが。
あとは信頼性ですが、それはもう少し使ってみないと分からないですね。

それと、IPv6 には対応していません。仮想化ソフトは、VMware が利用されています。

僕が借りたのは、「Developer CloudPRO 2」というヤツで、「2CPU , メモリ 1GB , 20GB SSD」です。
OS は、CentOS7-64bit を選びました。

CentOS は「7」からネットワーク管理に「NetworkManager」が採用されているのですが、初期設定が「NetworkManager」を使ってされていないような気がします。「NetworkManager」自体はデフォルトで起動しているので、再起動などを行うと「/etc/resolv.conf」の nameserver の値が「NetworkManager」で上書きされて消えてしまうようです。
なので、僕は最初に「NetworkManager」を再起動させて、消失した初期設定を「NetworkManager」経由で再設定しています。

またインスタンスを作り直すこともあろうかと思いますので、初期設定をメモっておきます。

とりあえず、「Run Mode」を「Normal Mode」にします。デフォルトの「Safe Mode」だと7日後にシャットダウンされます。
「Modify」→「Change Run Mode」で変更します。

それと、使用率メーターが機能していません。上の画像では「Modify」のメニューで隠れちゃっていますが、使用率メーターに変化がありません。

何はともあれ、SSH 接続をしてみる。

「Advanced Server Information」に書かれている「IP Address」と「Password」で root によるパスワード接続をします。
僕の場合、接続元 PC の OS は、Linux(Fedora)です。↓(参考:WAVE Log : Linux Desktop

[fedora@local ~]$ ssh root@xxx.xxx.xxx.xxx

接続できなければ、そのインスタンスはハズレです。w
「Modify」→「Delete Server」して作り直しましょう。

もし、接続できたなら、NetworkManager とネットワークサービスを再起動し、ホスト名(centos7.localdomain)を決めて、一度再起動してみましょう。ちなみに、コンパネの「Modify」→「Rename Server」は、コンパネ上の名前を変更するだけです。

[root@localhost ~]# systemctl restart NetworkManager
[root@localhost ~]# systemctl restart network
[root@localhost ~]# hostnamectl set-hostname centos7.localdomain
[root@localhost ~]# reboot

再起動後も接続できたならば、もしかすると当たりかもしれません。使ってみましょう。

ネットワーク関連をみてみる。

「resolv.conf」に nameserver が設定されていません。
(上記、NetworkManager を再起動する前は、nameserver 8.8.8.8 が設定されています)

[root@centos7 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain


# No nameservers found; try putting DNS servers into your
# ifcfg files in /etc/sysconfig/network-scripts like so:
#
# DNS1=xxx.xxx.xxx.xxx
# DNS2=xxx.xxx.xxx.xxx
# DOMAIN=lab.foo.com bar.foo.com

「デバイス名」と「接続名」が同じではありません。

[root@centos7 ~]# nmcli d
デバイス  タイプ    状態      接続
ens33     ethernet  接続済み  System eth0
lo        loopback  管理無し  --

[root@centos7 ~]# nmcli d show ens33
GENERAL.デバイス:                       ens33
GENERAL.タイプ:                         ethernet
GENERAL.HWADDR:                         xx:xx:xx:xx:xx:xx
GENERAL.MTU:                            1500
GENERAL.状態:                           100 (接続済み)
GENERAL.接続:                           System eth0
GENERAL.CON パス:                       /org/freedesktop/NetworkManager/ActiveConnection/0
WIRED-PROPERTIES.キャリア:              オン
IP4.アドレス[1]:                        ip = xxx.xxx.xxx.xxx/24, gw = xxx.xxx.xxx.xxx
IP6.アドレス[1]:                        ip = fe80::xxxx:xxxx:xxxx:xxxx/64, gw = ::

インターフェース設定ファイルに「ifcfg-ens33」がなく「ifcfg-eth0」を使用しているようです。
(いいの? ifcfg-ens33 を作ってはいません。そのままです。)

[root@centos7 ~]# ls -l /etc/sysconfig/network-scripts/ifcfg-*
-r-xr-xr-x. 1 root root 240 Jan 27 09:55 /etc/sysconfig/network-scripts/ifcfg-eth0
-rw-r--r--. 1 root root 254 Apr  3  2014 /etc/sysconfig/network-scripts/ifcfg-lo

「ifcfg-eth0」の内容です。

[root@centos7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=xxx.xxx.xxx.xxx
NETMASK=255.255.255.0
GATEWAY=xxx.xxx.xxx.xxx

DNS リゾルバ設定をする。(これだけで、「ifcfg-eth0」にも色んな項目が追加されますw)

[root@centos7 ~]# nmcli c mod "System eth0" ipv4.dns 8.8.8.8,8.8.4.4

IPv6 を無効化する。
sysctl.conf に下記を追加。

[root@centos7 ~]# vi /etc/sysctl.conf
・・・
・・・
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

設定を反映。

[root@centos7 ~]# sysctl -p
[root@centos7 ~]# nmcli c mod "System eth0" ipv6.method ignore

/etc/hosts ファイルの「::1」行をコメントアウトする。

[root@centos7 ~]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
#::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

NetworkManager とネットワークサービスを再起動する。

[root@centos7 ~]# systemctl restart NetworkManager
[root@centos7 ~]# systemctl restart network

SELinux の無効化。

[root@centos7 ~]# setenforce 0

SELinux 設定ファイル編集

[root@centos7 ~]# vi /etc/sysconfig/selinux

SELINUX=disabled にする。

firewalld 起動と確認。

止まっていたので、起動。

[root@centos7 ~]# systemctl start firewalld.service

確認。

[root@centos7 ~]# firewall-cmd --state

自動起動設定。

[root@centos7 ~]# systemctl enable firewalld.service

アクティブゾーンを確認する。

[root@centos7 ~]# firewall-cmd --get-active-zones
public
  interfaces: ens33

アクティブゾーンの恒久的なファイアウォール設定を確認。

[root@centos7 ~]# firewall-cmd --list-services --zone=public --permanent
dhcpv6-client ssh

システムの文字コードを設定する。

[root@centos7 ~]# localectl set-locale LANG=ja_JP.utf8

確認。

[root@centos7 ~]# localectl

※一覧は…。

[root@centos7 ~]# localectl list-locales

システムのタイムゾーンを設定する。

[root@centos7 ~]# timedatectl set-timezone Asia/Tokyo

確認。

[root@centos7 ~]# timedatectl

※一覧は…。

[root@centos7 ~]# timedatectl list-timezones

キーボードの割り当てを設定する。

[root@centos7 ~]# localectl set-keymap jp106

確認。

[root@centos7 ~]# localectl

※一覧は…。

[root@centos7 ~]# localectl list-keymaps

EPEL のリポジトリをインストール。

[root@centos7 ~]# yum install epel-release

EPEL 設定ファイルの「enabled=1」を「enabled=0」に変更。

[root@centos7 ~]# vi /etc/yum.repos.d/epel.repo

yum アップデート他。

[root@centos7 ~]# yum -y update

yum-cron インストール。

[root@centos7 ~]# yum -y install yum-cron

yum-cron 設定。「apply_updates」の no → yes にする。

[root@centos7 ~]# vi /etc/yum/yum-cron.conf
# Whether updates should be applied when they are available.  Note
# that download_updates must also be yes for the update to be applied.
apply_updates = yes

yum-cron 起動。

[root@centos7 ~]# systemctl start yum-cron

自動起動設定。

[root@centos7 ~]# systemctl enable yum-cron

ベース,開発ツールパッケージ群インストール。

[root@centos7 ~]# yum -y groupinstall base "Development tools"

nkf インストール。

[root@centos7 ~]# yum --enablerepo=epel install nkf

Logwatch のインストール。

[root@centos7 ~]# yum install logwatch

root 宛てメールの転送。

root 宛ての転送設定があるか確認。

[root@centos7 ~]# grep ^root: /etc/aliases

普段使っているメールアドレスに転送設定をする。

[root@centos7 ~]# vi /etc/aliases

# Person who should get root's mail
#root:          marc
root:           hudantukatteiru@gmail.com

設定反映。

[root@centos7 ~]# newaliases

ちなみに、Postfix は起動済みで、自動起動設定もされていました。

[root@centos7 ~]# systemctl status postfix.service
[root@centos7 ~]# systemctl is-enabled postfix.service

テストメールを送る。

[root@centos7 ~]# echo test|mail root

注)大抵、スパムメールフォルダに配送されます。

一般ユーザで鍵方式ログインするようにする。

SSH 接続用の一般ユーザ(sshuser)を作成。

[root@centos7 ~]# useradd sshuser

パスワードを設定。

[root@centos7 ~]# passwd sshuser

sshuser が root になれるようにする。

[root@centos7 ~]# usermod -G wheel sshuser

[root@centos7 ~]# vi /etc/pam.d/su

コメントアウト(#)解除。

auth            required        pam_wheel.so use_uid

sshuser にスイッチする。

[root@centos7 ~]# su - sshuser
[sshuser@centos7 ~]$ mkdir ~/.ssh
[sshuser@centos7 ~]$ chmod 700 ~/.ssh

公開鍵の中身を authorized_keys にコピペして保存。

[sshuser@centos7 ~]$ vi ~/.ssh/authorized_keys
[sshuser@centos7 ~]$ chmod 600 ~/.ssh/authorized_keys

設定ファイルを編集して鍵方式によるログインのみを許可するように設定する前に、sshuser が鍵方式でログイン出来ること、root になれること、を確認しておく。

root で設定ファイル編集。

[root@centos7 ~]# vi /etc/ssh/sshd_config

以下のようにする。

Protocol 2

SyslogFacility AUTHPRIV

PermitRootLogin no

PermitEmptyPasswords no

PasswordAuthentication no

sshd 再起動。

[root@centos7 ~]# systemctl restart sshd

その他。

Console:僕は使っていませんが、一応繋がります。

「Modify」→「Network Test」の結果です。結果が表示されるまで2分ぐらいかかります。

- guitar site WAVE -