スキップしてメイン コンテンツに移動

ServersMan@VPSがきたのでまず最初にしたこと

2010年4月中旬からDTIが開始したServersMan@VPSにGW中くらいに、申し込んだ。

月額490円〜という、これまでのVPSサービスとしては超格安でそこらの安いレンタルサーバ並での料金となるサービスなので、大変人気もある模様。上記の通り5月のGW中に申し込んだ結果、6月1日になってようやくVPSの申し込み完了+利用開始となった。

そんなわけで早速使ってみてます。
今回はエントリープランで申し込んだので、その構成でのメモを書いてみます。


まず申し込み完了後にDTIからは VPSサーバのIPアドレス、rootユーザアカウント(っていうかroot)、rootのパスワード、管理画面のURL(申し込んだIPアドレス内でのServersManログイン画面のURL)などが送られてくる。


早速そのIPアドレスに対してSSHでログインしてみる。もちろんrootアカウントしか通知されていないのでrootで。
するとrootユーザで自分のVPS環境にログインできる。


サーバインフラ環境を自分で用意したことがある人ならすでに当たり前ながら、SSHでrootでダイレクトに入れるのはセキュリティ上大変好ましくない。
なので、SSHでrootログインを拒否。



# vi /etc/ssh/sshd.conf

#PermitRootLogin yes
PermitRootLogin no

で、本当はパスワードログインも好ましいわけではないので、ログイン鍵を作ってそれで入るのがベスト!
…なのだけど、まだ最初の設定のところなので、取り急ぎ今は省略。後でやるようにしよう…。


次に、rootログインを拒否しただけだと今後入れなくなってしまうので、一般ユーザ用グループと一般ユーザを作成。
さらにパスワードの設定も忘れずに。


# groupadd www
# useradd -g www anon
# passwd anon
New UNIX password:

で、このままだとrootユーザでの作業がしにくいので一般ユーザに sudo 権限を持たせます。


# visudo

# 以下を追加
anon     ALL=(ALL) ALL


とりあえず、まずまずのところは完了。
ここまで来たら、rootアカウントのパスワードを削除して、suでもログインできないようにしてしまっても問題ないのですが、ここもひとまずはおいといて…。


次に、yumのアップデート。
yumのアップデートは yum update でできるのですが、エントリープランの場合、メモリが 256MBしかない関係もあり、メモリエラーでyumアップデートが実行できません。

なので、現在動いているデーモンなどを最低限にしてみます。
自分の環境ではsshdのほかにhttpdとvsftpfが稼働していたので、これらをいったん止めます。
必要なら後で再会すれば良いだけなので。


# /etc/rc.d/init.d/httpd stop
Stopping httpd:                                            [  OK  ]
# /etc/rc.d/init.d/vsftpd stop
Shutting down vsftpd:                                      [  OK  ]


ちなみに、ServersMan@VPSのOSはCentOS 5.5 なのですが、 CentOSやRedHat系で使える、 service コマンドは入ってないようでした。無くても特に困らないので問題ないですが、タイプが面倒なときには便利なんですけどね…。

# cat /etc/redhat-release 
CentOS release 5.5 (Final)

これでyumのアップデートが行えます。


# yum update
Loaded plugins: fastestmirror
Repository 'vz-base' is missing name in configuration, using id
Repository 'vz-updates' is missing name in configuration, using id
Loading mirror speeds from cached hostfile
* addons: centosk2.centos.org
* base: centosy.centos.org
* extras: centosv4.centos.org
* updates: centosk2.centos.org
addons                                                                                                                                                                                      

(中略)

Dependency Installed:
libsmbclient.i386 0:3.0.33-3.28.el5                                                                                                                                                                                                                                              

Updated:
apr-util.i386 0:1.2.7-11.el5                     audit-libs.i386 0:1.7.17-3.el5                      audit-libs-python.i386 0:1.7.17-3.el5     binutils.i386 0:2.17.50.0.6-14.el5         centos-release.i386 10:5-5.el5.centos       centos-release-notes.i386 0:5.5-0          
chkconfig.i386 0:1.3.30.2-2.el5                  cups-libs.i386 1:1.3.7-18.el5                       curl.i386 0:7.15.5-9.el5                  dbus.i386 0:1.1.2-14.el5                   dbus-libs.i386 0:1.1.2-14.el5               device-mapper.i386 0:1.02.39-1.el5_5.2     
device-mapper-event.i386 0:1.02.39-1.el5_5.2     device-mapper-multipath.i386 0:0.4.7-34.el5_5.1     dhclient.i386 12:3.0.5-23.el5             dmidecode.i386 1:2.10-3.el5                dmraid.i386 0:1.0.0.rc13-63.el5             dmraid-events.i386 0:1.0.0.rc13-63.el5     
ethtool.i386 0:6-4.el5                           filesystem.i386 0:2.4.0-3.el5                       glibc.i686 0:2.5-49                       glibc-common.i386 0:2.5-49                 hmaccalc.i386 0:0.9.6-3.el5                 httpd.i386 0:2.2.3-43.el5.centos           
iproute.i386 0:2.6.18-11.el5                     kpartx.i386 0:0.4.7-34.el5_5.1                      krb5-libs.i386 0:1.6.1-36.el5_5.4         less.i386 0:436-2.el5                      libacl.i386 0:2.2.39-6.el5                  libgcc.i386 0:4.1.2-48.el5                 
libsepol.i386 0:1.15.2-3.el5                     libstdc++.i386 0:4.1.2-48.el5                       lm_sensors.i386 0:2.10.7-9.el5            lvm2.i386 0:2.02.56-8.el5_5.4              man-pages.noarch 0:2.39-15.el5_4            mkinitrd.i386 0:5.1.19.6-61.el5_5.1        
module-init-tools.i386 0:3.3-0.pre3.1.60.el5     nash.i386 0:5.1.19.6-61.el5_5.1                     net-snmp.i386 1:5.3.2.2-9.el5_5.1         net-snmp-libs.i386 1:5.3.2.2-9.el5_5.1     net-snmp-utils.i386 1:5.3.2.2-9.el5_5.1     net-tools.i386 0:1.60-81.el5               
newt.i386 0:0.52.2-15.el5                        nscd.i386 0:2.5-49                                  ntsysv.i386 0:1.3.30.2-2.el5              openldap.i386 0:2.3.43-12.el5              openssh.i386 0:4.3p2-41.el5                 openssh-clients.i386 0:4.3p2-41.el5        
openssh-server.i386 0:4.3p2-41.el5               php.i386 0:5.1.6-27.el5                             php-cli.i386 0:5.1.6-27.el5               php-common.i386 0:5.1.6-27.el5             policycoreutils.i386 0:1.33.12-14.8.el5     postgresql-libs.i386 0:8.1.21-1.el5_5.1    
procps.i386 0:3.2.7-16.el5                       samba.i386 0:3.0.33-3.28.el5                        samba-client.i386 0:3.0.33-3.28.el5       samba-common.i386 0:3.0.33-3.28.el5        samba-swat.i386 0:3.0.33-3.28.el5           shadow-utils.i386 2:4.0.17-15.el5          
sudo.i386 0:1.7.2p1-6.el5_5                      sysklogd.i386 0:1.4.1-46.el5                        tar.i386 2:1.15.1-30.el5                  tcpdump.i386 14:3.9.4-15.el5               tcsh.i386 0:6.14-17.el5                     tzdata.i386 0:2010i-1.el5                  
vsftpd.i386 0:2.0.5-16.el5_5.1                   yum.noarch 0:3.2.22-26.el5.centos                  

Complete!

ちなみにgccなどの開発用環境はデフォルトでは入ってないようです。
なので開発用環境をまとめて入れることにします。


# yum groupinstall "Development Tools"





で、ここからが本題。
僕は普段、というか最近からzshellを使うようになり、また使いたいので、zshellを使えるようにします。





# yum install zsh
(中略)
Dependencies Resolved

========================================================================
Package                                                         Arch                                                             Version                                                                   Repository                                                        Size
========================================================================
Installing:
zsh                                                             i386                                                             4.2.6-3.el5                                                               base                                                             1.7 M

Transaction Summary
========================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 1.7 M
Is this ok [y/N]: y
Downloading Packages:
zsh-4.2.6-3.el5.i386.rpm                                                                                                                                                                                                                                    | 1.7 MB     00:04     
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing     : zsh                                                                                                                                                                                                                                                         1/1 

Installed:
zsh.i386 0:4.2.6-3.el5                                                                                                                                                                                                                                                           

Complete!


インストールできたら、ログインシェルを変更します。




# chsh -s /bin/zsh 
Changing shell for root.
Shell changed.
# exit
$ chsh -s /bin/zsh
Changing shell for anon.
Password: 
Shell changed.


ここまででひとまず完了。
最後に、とりあえずもう一度vsftpdとhttpdを起動して、ひとまずの作業としたいと思います。




# /etc/rc.d/init.d/vsftpd start
Starting vsftpd for vsftpd:                                [  OK  ]
# /etc/rc.d/init.d/httpd start
Starting httpd: httpd: apr_sockaddr_info_get() failed for dti-vps-srv14
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[  OK  ]




とりあえず、最初の段階は酔っ払って頭痛がしてきたのでここまでで終了。
あとはSVNかgit入れたり、pythonとかphpのバージョンを上げたりして遊んでみたいと思います。

コメント

  1. anoncom blog – ServersMan@VPSがきたのでまず最初にしたこと

    返信削除

コメントを投稿

このブログの人気の投稿

iPhone7はApple Payでゲーム系ICカードとしても使えるか?

先日発売されたiPhone7をはじめiPhone6以降の機種で、日本でもようやく、Apple Payが使えるようになりました。
iPhone7は長年ユーザーが待ち望んできた防水対応もさることながら、日本向けiPhone7/7 Plusでは、NFCだけでなくFeliCaを搭載し、Apple PayではJR東日本のモバイルSuicaやEdyが使える、というのが今回の注目にもなりました。
Apple Payが始まることで、こちらも日本のユーザーが待ち望んでいたモバイルSuicaをはじめとする、国内の様々な場所で使われている非接触IC系サービスの恩恵を受けられるようになります。



ということは、非接触系ICカードを利用している場所の一つである、ゲームセンター。ここにある数々のゲーム筐体、最近では非接触ICカードリーダーが備え付けられていて、独自の電子マネー機能を持ち合わせたり、カード情報を読み取ってプレイヤーのプレイデータを読み込むのに使用されたりしています。これらは果たしてiPhone7でも使えるのか…。
検証
まず、現在国内で主流の非接触IC系ゲームプレイカード(以下、プレイカード)は下記の種類があります。

e-AMUSEMENT PASS (コナミ)
Aime (セガ)
バナパスポート (バンダイナムコ)
NESiCA (タイトー)
※これ以外にもあるかもしれませんが、自分が主に音ゲーを好んでやるため、音ゲー機種が出ているサービスのみを対象にしています。

これらのサービスに対応する機種でiPhone7のApple Payが使えるか検証してみます。

さくらのクラウドでマストドンのインスタンスをサブドメインで作る

タイトルに「の」と「で」が多すぎますが気にせずいきますこんばんは。

さくらのクラウドで、いま話題のMastodon(マストドン)のインスタンスを作成してみました。
Mastodonは普通にソースを展開して自分で普通にセットアップする方法や、Docker-composeを用いた方法などがありますが、さくらのクラウドでは、スタートアップスクリプトを用いて、管理画面から必要な項目を入力、スクリプトを選択するだけで簡単に立ち上げることができるようになっています。

さくらのクラウドのMastodonスタートアップスクリプト 実は少し前にこの方法で立ち上げたりもしていたのですが、本当に簡単でサクサクできてもの自体は30分程度で完了します。
管理者ユーザーを作成するには、通常のユーザー登録と同じ手順で画面からユーザーを作成後、一度コンソールからログインして、mastodonユーザーで下記のコマンドを実行する必要があります。

# su - mastodon % cd ~/live % bundle install % RAILS_ENV=production bundle exec rails mastodon:confirm_email USER_EMAIL=登録時のメールアドレス % RAILS_ENV=production bundle exec rails mastodon:make_admin USERNAME=作成したユーザーID mastodon:confirm_email でメール受信確認をスキップして承認済みに、mastodon:make_admin で指定したユーザーを管理者に設定します。

これでインスタンス管理者として様々な操作をGUI上から行えます。

同類の記事は恐らく既にたくさんあるので、詳しい作り方に関してはそちらを参考にしてください。

気になるところが 上記のさくらのクラウドニュース内で記載されているMastodonスタートアップスクリプトでの構築方法に関する記事内で、一つ気になるところがありました。
それが
※サブドメイン(例:mstdn.example.com)には対応していません。 という記述部分です。

つまり、このスタートアップスクリプトを利用した場合、サービス専用のドメインを用意する必要があります。
既存のドメインをなるべく利用したい場合には向…

PHPで相対パスから絶対URL(URI)を作成する

HTMLページをパースしてURLを取り出す処理を書いていたのですが、ページ内のリンクなどが全部絶対URLで記述されていれば非常に楽なのですが、現実としてそうでもなく、ページによっては相対パスで書かれていたりして、正規表現で偏にリンクからURLを抜き出すだけではうまくできませんでした。

そこで少しググってみたら

PHPで相対パスから絶対URL(URI)を作成する|PHPプログラムメモ|プログラムメモ

という記事を発見!おぉ、これは便利!
と思って使わせてもらおうと思ったのですが、いくつかテストしてみて、相対パス処理で不備があるなーと思ったところがあったのでちょっと改良させてもらいました。

37~38行目は正直いらない気がしたのですが、 PHP 5.3 のCLIでWindows上でテストした際に、なぜか \/ (アルファベットのVではなく、\/ ) で出力されたのが気になったので、無駄かもしれないけどあえて記述。
あと $parse の初期化もここまでする必要ないけど、念のためNotice対策を…w

相対パスから絶対URLする関数

< ?php
/**
* 相対パスから絶対URLを返します
*
* @param string $base ベースURL(絶対URL)
* @param string $relational_path 相対パス
* @return string 相対パスの絶対URL
* @link http://blog.anoncom.net/2010/01/08/295.html
* @link http://logic.stepserver.jp/data/archives/501.html
*/
function createUri( $base = '', $relational_path = '' ) {

$parse = array (
'scheme' => null,
'user' => null,
'pass' => null,
'host' => null,
'port' => null,
'path' => null,
'query' => …