カウンター
  • 108今日の閲覧数:
  • 1044昨日の閲覧数:
アーカイブ
カテゴリー
2019年5月31日 金曜日

Ubuntuでの自宅サーバー構築(個人的な備忘録)

Ubuntuでの自宅サーバー構築(個人的な備忘録)

■ 自宅サーバー運用形態
自宅サーバー機(ベアボーン)にて運用するが、UbuntuサーバーOSではなくデスクトップOSをインストールする
設定後の運用管理はWindowsマシンにてSSH運用する

運用する内容は
 ・WEBサーバー(ブログ、WEBサイト)
 ・SSHサーバー
 ・FTPサーバー
 ・ライブカメラ
 ・メールサーバー
    等

■ Ubuntuのインストール
サーバー機にはDVD等のディスクドライブが無いのでUSBメモリからインストールする
Windowsマシンに「win32diskimager-1.0.0-install」をインストールして、USBメモリに「ubuntu-ja-18.04.2-desktop-amd64(日本語LTS)」を書き込む。
USBメモリを自宅サーバー機にセットして、USBメモリから起動してUbuntuをインストールする。

■ アップデート確認/実行
sudo apt update
sudo apt -y upgrade

■ SSHインストール
sudo apt -y install openssh-serversudo

# 設定変更
sudo vim /etc/ssh/sshd_config
32行目のPermitRootLogin prohibit-passwordの行を
PermitRootLogin no に書き換え

  ポート番号の「22」は一般的過ぎて攻撃されやすいので変更する
13行目 Port 22 → 任意の番号へ書き換え

# サービス再起動
 sudo systemctl start sshd
  又は
 sudo /etc/init.d/ssh restart

■ FTPインストール
 sudo apt -y install vsftpd
 
# 設定変更
sudo vim /etc/vsftpd.conf
25行目:匿名ユーザのアクセスを拒否する
anonymous_enable=NO
31行目:ファイルシステムを変更するFTPコマンドを許可する
write_enable=YES
99行目:アスキーモードのアップロードを許可する
ascii_upload_enable=YES
100行目:アスキーモードのダウンロードを許可する
ascii_download_enable=YES
131行目:サブフォルダを含む一括アップロード・ダウンロードを出来るようにする
ls_recurse_enable=YES

# サービス再起動
sudo service vsftpd restart

■ hostsの書き換え
sudo vim /etc/hosts
192.168.*.* ***.***.jp(自宅サーバーのWEBサイトurl)

■ apache2インストール
 sudo apt -y install apache2

# 設定変更
sudo vim /etc/apache2/apache2.conf
161行目 <Directory />
  AllowOverride All
171行目 <Directory /var/www/>
Options Indexes
172行目
AllowOverride All

sudo vim /etc/apache2/conf-available/security.conf
25行目
  ServerTokens Prod
36行目
  ServerSignature Off

sudo vim /etc/apache2/conf-available/charset.conf

■ WORDPRESSインストール
sudo apt -y install mysql-server mysql-client
sudo apt -y install zip php libapache2-mod-php php-mysql php-gd php-ldap php-pear php-xmlrpc php-snmp

# 再起動
sudo systemctl restart apache2
sudo systemctl restart mysql

# データベース作成
sudo mysqladmin create *****(任意のデータベース名)
sudo mysql *****(データベース名)
mysql>
>create user ***(ユーザ名) identified by ‘*****(パスワード)’;
>grant all on *****(データベース名).* to ***(ユーザ名);
>q

# WORDPRESSインストール2
cd /var/www/html
sudo unzip wordpress-4.9.10-ja.zip
sudo chown -R を設定
sudo chmod -R を設定

# 設定ファイルコピー
 sudo cp wp-config-sample.php wp-config.php
 
# 設定ファイル設定
 sudo vim wp-config.php

# パーマリンクを個別名にした時の有効化
 wordpresパーマリンク
  /%category%/%post_id%/

sudo vim /var/www/html/***/.htaccess

BEGIN WordPress

RewriteEngine On
RewriteBase /wp/
RewriteRule ^index.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wp/index.php [L]

# END WordPress

※これでダメな時は、mod_rewriteの不具合なので以下を実行
sudo a2enmod rewrite
sudo service apache2 restart

■ wordpress再構成で過去データベースをアップロードする際のファイル上限最大サイズ2MBの解除
sudo vim /etc/php.ini
Ubuntuでは、
sudo vim /etc/php/7.2/apache2/php.ini
406行目 memory_limit = 128M → 256M に書き換え
674行目 post_max_size = 8M → 128M に書き換え
827行目 upload_max_filesize = 2M → 64M に書き換え

■ 過去に使っていたurlから新urlへのリダイレクト
sudo vim /var/www/html/leathercraft/.htaccess


 RewriteEngine On
 RewriteRule (.*) http://greenleaf.ddo.jp/***/*****/$1 [R=301,L]

■ htmlでphpを共通して使う時
sudo vim /var/www/html/.htaccess
AddType application/x-httpd-php .php .html
AddHandler application/x-httpd-php .php .html

■ ライブカメラの設定
motionにてライブカメラを設定する
CentOSでは導入にあたってかなり苦労したが、Ubuntuでは非常に簡単
sudo apt install motion これだけでOK

# 設定変更


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2019年4月9日 火曜日

自宅サーバー用にUbuntuを使ってみて感じたCentOSとの比較

このブログは自宅に設置したサーバー機から配信しています。
そのサーバー機が先月のはじめに突然落ちてしまいました。
サーバー機自体が起動せず、少しの間だけ予備のサーバー機で対応しましたが、結局サーバー機自体を新しく購入して再構築しました。
その際、OSとしてLinuxを使用しているのですが、それまでのCentOSからUbuntuに変更しました。
二つのLinuxのOSをしばらく使ってみて感じた違いを書いてみます。

自宅サーバー機で運用を始めたのは20年ほど前でしたが、使用しているOSは、Windows、Fedora、CentOSと変わってきました。
FedoraもCentOSもUbuntuもすべてLinuxですが、やはり使い勝手はそれぞれ異なっていました。

■インストール
自宅サーバー機は一度設定してしまえば直接操作せずリモート機(Windows10)で遠隔操作が主流になります。 そのためDVD等のディスクドライブは接続していません。
一般的にまっさらなハードディスクやSSDなどにWindowsなどのOSをインストールするにはDVDディスクから行いますが、サーバー機のLinuxはUSBメモリやUSB接続のSDカードから行います。
CentOSもUbuntuも同じ手順で操作でき、インストールの作業内容、時間等にそれほどの差はなく互角でした。
ただ、今回新たに購入したベアボーン機「ShuttleのDX30」ではCentOSはインストールすることができませんでした。
機器によってはインストール出来るOSとしてのLinuxのディストリビューションに制約があるものが存在しています。

■安定性
サーバー用途としてのOSとして、どちらもLinuxでは定評のあるものなので問題はあまりないようですが、気になったのはCentOSは標準でインストールされるブラウザソフトとしてのFireFOXが安定していませんでした。

■ソフトのインストール
OS以外のソフトをインストールする際、Windowsなら(一部のソフトを除き)ソフト単体のデータ(ディスクやダウンロードしたexeファイルなど)だけでインストール出来ますが、LinuxOSの場合には動作させるのに必要な関連ソフト群(リポジトリ)が必要になるケースが大多数ですが、その管理に関しては圧倒的にUbuntuの方が簡単でした。 sudo apt install XXX とすれば大抵はそれに必要なリポジトリ群も一緒にインストールしてくれます。
一方のCentOSは自分で必要なリポジトリ群を探し、しかもインストールしたいソフトのバージョンに合わせてリポジトリの種類やバージョンを選ばなければなりません。
実際に自宅サーバー機で動態感知するためのライブカメラ用のソフト「motion」をインストールする際に、CentOSでは相当苦労しましたが、Ubuntuでは sudo apt install motion の一回だけで済みました。

■結 論
Windows代替機として使うデスクトップ機としても、自宅サーバー機として使う場合でもUbuntuの方がかんたんで扱いやすいように感じました。
移行当初は、コマンド操作の違いにとまどう事もありましたが慣れてしまえばUbuntuで何の問題もなく操作できるようになりました。

私も最初の頃は自宅サーバー機のOSといえばRedHat系のCentOSの一択だと思い込んでいましたが、たしかに日本国内ではCentOSのサーバー使用が多いですが、全世界的には圧倒的にUbuntuなんですね。 実際に使ってみて(個人レベルであれば)これから始めたい方にはUbuntuをお勧めします。


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2019年3月22日 金曜日

ようやく自宅サーバーを立ち上げブログを復活させました

3月7日に自宅サーバー機がダウンしてから2週間以上、このサイトが落ちたままでしたが、なんとかブログを復活させることが出来ました。
実際には「完全ふっかつ!」とまではいっていないのですが、とりあえずすべての記事にアクセス出来て、さらに新しい記事を書く事が出来るようになりました。

これまでの経緯は、
 3月7日 自宅サーバー機が突如ダウン
     最初はネット接続だけの不具合が最終的にはサーバー機が起動せず

 3月10日 新しい自宅サーバー機を購入
     しかしどうやってもサーバー機能をインストール出来ず

 3月13日 別のメモリを購入
     ようやくUEFI(BIOS)までは立ち上がるようになる

     しかし今までやってきたOS(Linux CentOS)の導入が出来ず

 3月15日 CentOSをあきらめてUbuntuでサーバー機能を運用する事に変更

 3月22日 なんとかブログやライブカメラ、メール、ファイルサーバーまで稼働開始

となりました。

WEBサイト(ホームページ)は1997年ころから運用していましたが、一番最初はプロバイダーのホームページサービスを利用していました。
しかしもっと自由に運用したくなり、自宅にサーバー機を設置することにしました。

最初の自宅サーバー機はミドルタワーでCPUはPentium3の750MHz、OSはWindows2000Professionaでの運用でした。

2代目は、同じくミドルタワーでCPUはAMDのAthron1700+、OSはWindows2000ProfessionalとWindowsXPProfessionalを使っていました。

3代目は中古のノートパソコンIBM ThinPad A20m2628-11Jです。
マシンスペックは、CPUはCeleron500MHz、メモリは最初の64MBに128MBを増設、HDDは6GBというシロモノ。

ブログを始めたのが2004年でしたがその翌年には4代目のキューブタイプのベアボーン機ShuttleXのSS56L。
マザーボードのチップセットはSiS 661FX と963LでVGA、サウンド、10/100LAN、USB2.0、IEEE1394といったものがすべてオンボードで、これに家であまり使っていなかったCeleron2.4GHzのCPUと256MBのメモリをのせて動かしていました。

2013年から5代目のShuttleXS35V3L、省電力、省小スペース、静音のマシンです。
大きさは少し大きめのルーターや外付けハードディスクケース並で片手に軽く乗ってしまうサイズ、プロセッサはIntelR Dual Core Atom D2700でした。

そして今回のマシンが6代目、今までと同じくShuttleのDX30という2016年ころに発表になった製品です。
やはり静穏性のために電動ファンをもたず性能を抑えたと省電力タイプのものでした。

最近は自宅でサーバーを動かすマニアが激減したのか、あるいは自宅サーバー派はこのようなローレベルではなくハイスペックのサーバー機に流れたのかわかりませんが、とにかく機種が少なく在庫もなくて苦労しました。

その上、最初にも書いたようにこのベアボーン機と一緒に購入したメモリを刺して動かそうとしてもUEFI(BIOS)すら立ち上がらない状況に2日ほど悩みました。
電源スイッチを入れると本体のランプは点灯するのですがモニターには何も表示されませんでした。

メモリが原因かと思い、別のメモリを新たに注文して交換したところ、ようやく画面にAMIBIOSが表示されるようになりました。
これで一安心かと思いきや、次にはOS(Linux CentOS)のインストールまでたどり着けませんでした。

症状としてはUSBメモリからインストールしようとしても、インストール先の接続してあるハードディスクを認識してくれないのです。
UEFI画面ではしっかり認識、表示されているのにも関わらずです。
CentOSもバージョン7以外に6の各種やバージョン5、64ビットと32ビットも試しましたがいずれもダメでした。
この段階で相当の時間、テストを繰り返しました。

そして仕方なくCentOSをあきらめて別のLinux、Ubuntuに移行することにしました。

20年ほど前にWindowsでs-バーを立ち上げましたがその後すぐにLinuxに変更、最初はFedoraCoreでした。
Coreは2から始まりFedora9までバージョンアップしてきました。

そして2009年からCentOS5に替えて今まで10年間だってきました。

同じLinuxでもディストリビューションが違うと操作系が異なるので還暦を過ぎたオジサンにはまた一から覚えなおさなきゃいけないので苦労しました。
Ubuntuは、2017年に一度、サーバー機用OSとして試した事がありましたがその時は重すぎてまともに動かず、すぐにCentOSに戻したという経験がありました。

Ubuntuのマニュアル本を購入してネットで情報検索してなんとかサーバー機能を導入することが出来ました。
ただブログの日本語文字化け問題が解決できておらずまだまだ手探り状態というところです。

それでもこの記事を書いてアップするところまで到達しました。

さあ、もうひとガンバリしましょう!


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2017年2月22日 水曜日

自宅サーバのOSをUbuntuniしたけど超重かった

少し前からこのブログの配信が止まったり、ブログサイトが壊れている理由を少し書きます。

 

今のブログやウェブサイト、ライブカメラやファイルサーバ、メールサーバーなどは自宅に設置したサーバ機から配信しています。

マシン自体ももう5,6代目になるでしょうか。

ウェブサイトを始めた20年くらい前は、OSにWindowsサーバを入れていましたがその後、安定性やセキュリティ向上を考えてLinux系に移行しました。

スタートはFedora Coreのバージョン4くらいから始めV.10くらいまで利用していました。


 

その後CentOSに変えてバージョンを上げながら今にいたっています。


 

CentOSはRED HAT系の流れを色濃く受け継ぐものとして採用していた訳ですが、最近は新しいソフトに必要な関連ソフトが入れにくくなってきました。

そのためにリポジトリがあるのですが、EPELやRemi、ansibleやdockerなどを入れたいと思っても配信先の停止などがあり思うように動けなくなることが多々ありました。

最近のLinuxの主流はUbuntuに切り替わってきていることもありそれなら上記のようなリポジトリの問題もいくぶん解消されているようなので、少し前からUbuntuへの移行を検討していました。


 

自宅のメインサーバ機ではなくサブ機、サブサブ機ではUbuntuでも動作テストして大丈夫そうだったので、メインの自宅サーバ機にいれてみました。

ところが今使用しているサーバ機は、省電力静音性を考慮したマシンですでに5年近く経過したものでCPUとメモリの処理は今までのCentOSでは特に不満はありませんでした。

しかし新たに入れてみたUbuntuでは軽いはずのLinux系OSだと思っていましたが、かなり動作がもっさりしてまともに動いてくれません。

Ubuntuの場合、デスクトップのGUIが重いと評判のUnityですがこれをLXDE、Xfceなどに変えれば多少はまともになるようです。

そこまでしてUbuntuにしてもあまりメリットが感じられなかったので、元のCentOSに戻すことにしました。

その結果、自宅サーバ機の内容を初期化、まっさらな状態でOSの再インストール、サーバ機能の導入、ブログソフトのインストール、ブログ記事と写真のインポート等などでまともに動かない状態が続きました。

これが私のブログが止まっていた理由です。

 

もうだいぶ以前から自宅サーバ機でブログやウェブサイトを配信する人は激減しているようです。

プロバイダからの提供サイトやレンタルサーバで十分という事が最大の理由のようです。

それでも私は自宅サーバからの配信にこだわりたいのです。

なぜって?

 それは「人に言う時、自宅サーバ機からやっているんだよ!」というとカッコいいかなと思うからです(笑;


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2014年11月24日 月曜日

自宅サーバのメンテナンスで休止中でした

 
自宅サーバで運用しているこのブログですが、22日午後よりメンテナンスのため休止中でした。

 
この間にアクセスいただいた方にはサイトをご覧いただけずにご迷惑をおかけしました。

 
実は「メンテナンス」というより、自宅サーバのOS(Linux CentOS)、ブログソフトのWordpress、ライブカメラ、メールサーバ、FTPサーバ、その他すべての再インストールと設定、復元といった、かなり大規模な作業でした。

 
まだ一部には完全に解消されていないところもありますが、公開させていただきます。

 


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2013年12月20日 金曜日

PHPにimagepng機能が見当たりませんと表示された時は

WordPressのスパムコメント対策にキャプチャ文字入力をしなければ投稿出来ないようにするためにプラグインの「SI CAPTCHA Anti-Spam」を導入してみました。

以前やった時には問題なく「インストール」「有効化」「設定」と出来て、コメント欄下部に表示されたのですが、今回は、

 「PHPにGD image supportが見当たりません」

 「PHPにimagepng機能が見当たりません」

と表示されて設定出来ませんでした。

 

対象方法は不足している部分を追加するので、

 # yum -y install gd php-gd

でモジュールを追加して、httpdの再起動のために、

 # /etc/init.d/httpd restart

とやってやればちゃんと表示されるようになりました。

 

さらに、WordPressでよく使われている、過去の記事の人気ランキングを表示するプラグイン「Wordpress Popular Posts」で、サムネイル設定のラジオボタンがチェック出来ずに表示出来なかったのが改善されました。
  ← 左の「人気記事(週間ランキング)」がそれです。


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2013年11月22日 金曜日

自宅サーバー機の内蔵時計をSSHでリモート変更する

WordPressのブログ記事を書きためておいて、指定した日時で公開する(予約投稿)ことが多くあります。

今回もその設定をやったのですが、指定時刻になっても公開されずうまく行きませんでした。

 

原因がWordPressのソフトにあるのか、自宅サーバー機にあるのか確認します。

まずはWordPressの管理画面から「設定」「一般設定」とたどってみると、その中の「タイムゾーン」の項目が、

 「東京」 UTC(協定世界時) : 2013-11-21 02:10:00  現地時間 : 2013-11-21 02:10:00

となっています。

「東京」を選んでいるので、現地時間は UTC+9時間経過した2013-11-21 13:10:00 になっていなければならない筈なのにズレています。

 

どうやら原因は自宅サーバー機自体の内蔵時計の設定がズレているためだと思われます。

さて対処方法ですが、自宅から離れた外出先でのサーバー機へのリモート操作なのでSSHで行います。

といってもSSHで通せるところは少ないので、スマートフォンから自宅サーバー機につなぎます。

そのままスマホで操作してもいいのですが、画面が小さいので扱いやすいNexus7のタブレットを使います。

スマホのアプリ「Foxfi」でブルートゥースのテザリングをおこない、Nexus7側は「PdaNet Tablet」でスマホとつなぎます。

うまくテザリング出来たところでNexus7の「ConnectBot」を立ち上げ、自宅サーバーをリモートします。

ユーザのパスワードを入れログインしてから設定時刻を表示させます。

 $ date

で確認すると、

$ 2013年 11月 21日 木曜日 02:15:00 JST

やはり「東京」時刻ではなくUTCの時刻になっています。

時刻を設定しなおすので、「su -」コマンドでルート接続します。

日付と時刻を現在の2013年11月21日13時18分にセットしたいので、

 # date -s “11/21 13:18 2013”

これでOKのはずです。

再び確認すると、

 # date

で確認すると、

# 2013年 11月 21日 木曜日 13:18:00 JST

はい、これでなおりました。

 

今回はわざわざタブレットにテザリングしましたが、画面の大きなスマホならタブレットを使わずにそのまま操作も可能です。

その際はデフォルトのままだと表示される文字が小さすぎておじさんには見えにくいので大きくします。

表示フォントを大きくするには、スマホのボリュームアップボタンを何度か押せばOKです。


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2013年10月2日 水曜日

自宅サーバー構築手順(覚え書き)

■自宅サーバーで何が出来るの?

家にあるパソコンを自宅サーバーにすれば、ネットにつながるいろんな事が出来ます。

ホームページやブログを容量の制限なく自分の好きなように配信したり、自分専用のメールアドレスなんかも無限につくる事が出来ます。

ほかにもライブカメラにしたり、ファイルや写真、動画を保存しておいて外出先からアクセス出来るファイルサーバーにする事も出来ます。

使うパソコンも最新型の高機能なものは必要なく、24時間365日稼働させるのでかえって消費電力や発熱が大きなものや電動ファンの音などが大きなタイプのものより一昔二昔のものの方が適しています。

以前私は中古の安いノートパソコンで自宅サーバーをやっていた事もありました。

バッテリーも内蔵しているので停電の時にもサーバーが落ちなくてもいいかなと思っていましたが、ルーターなどの方が止まってしまうので結局サーバーも使えなくなってしまいました。

 

■自宅サーバー構築に掛かる費用は?、

・パソコン本体・・・私は小さなベアボーンキットにハードディスクとメモリを追加して作りましたので2万円ほどでした。

   中古パソコンを使えばもっと安く出来ます。

・OS・・・Windowsでもサーバーは出来ますが、安全性といろんなサーバーソフトがある事を考えてLinux(CentOS)で作りました。

   Windowsは有料ですがLinuxならOSも関連ソフトも無料で利用出来ます。

   少しだけ知識が必要になりますが、ネットで情報を調べながらやればなんとかなります。

   それに「Linuxで自宅サーバーやってんだよね」というだけでちょっぴり自慢出来ます(←ココ大事です(笑;

・USB接続のカメラ・・・ライブカメラをやる場合には、これも必要になります。

   Linuxでもドライバの心配のいらないUVC規格対応のもので今なら1000円から2000円くらいのものでも十分実用になります。

 

■この記事について

自宅サーバーにOSとしてLinuxを入れて各種サーバーを構築して、最終的にブログやライブカメラの配信をするまでの手順の抜粋を書いています。

9年間やってきたブログを一旦辞めて、あらたにテーマ毎の複数のブログで作り直すのにあたって、自宅サーバーそのものも一から構築し直したのでその時の手順の覚え書きです。

特に気をつける部分を枠囲いで書いています。

 

■ハードの組み立て

使っている自宅サーバー機自体は、以前のものをそのまま使います。

Shuttle の XS35V3L というベアボーン機種で、大きさは、252(奥行き)×38.5(幅)×162(高さ)mm、2.1kgと少し大きめのルーターや外付けハードディスクケース並で片手の上に軽く乗ってしまうサイズです。

homeserver3-01

省電力、省小スペースでCPUはファンレス仕様の静音マシンなのでサーバー機としては最適です。

ハードディスクには500GBのモノを搭載しています。

以前は動画データもこのマシンの中に保存して配信していましたが、今はYoutubeにアップしていますのでこれくらいの容量のハードディスクでも心配がなくなりました。

構築しているサーバーは、
 ・WEBサーバー ・・・ ブログ(WordPress)を導入して複数ブログを配信
 ・ライブカメラ  ・・・ 自宅監視用ライブカメラを配信
 ・メールサーバー ・・・ ブログなどで使うパーソナルメアドを、無数に作成可能
 ・FTP ・・・・・・・ サーバーのブログ用写真などをアップする以外に、出先からデータを取り出せるように
 ・SSH ・・・・・・・ 外出先から自宅サーバーのリモート操作用

 

今回は今までのハードをそのまま使うので新規組み立てはありません。

一応中を開けて結線がゆるんでいないか確認して、ホコリを払っておきました。

 

■OSの組み込み

OSとしてはLinuxの中でもサーバー向けのCentOS6.4を使用

CentOSのサイト(http://www.centos.org/)に入って、「Release Notes: CentOS Download: i386 最新版」からダウンロードします。

OS自体は「CentOS-6.3-i386-bin-DVD1.iso」のファイルをダウンロードしました。

このサーバー機には光学ドライブを搭載していないので、USBメモリにインストール用に作成したデータを書き込んでインストールします。

ダウンロードしたデータは3.8GBほどあるので、その倍の8GBのUSBメモリを用意します。

USBメモリに書き込んだデータからOSをインストールするにはそのままでは出来ないのでフリーソフトの「UNetbootin」を使います。

ソフトを立ち上げ、入力データとしてダウンロードしたDVD1.isoファイルを選び、出力先をUSBメモリにします。

書き込みの済んだUSBメモリには、さきほどのDVD1.isoファイルもそのままコピーします。

そのために二倍の容量が必要なのです。

 
自宅サーバー機のBIOS画面で第一起動元をUSBに設定して電源を入れます。

あとは通常のDVD版と同じようにしてインストールが出来ます。

 
CentOSのインストール時にどのタイプでソフトを組み込むか聞いてきます。

不要なものまで組み込むと、インストールも手間取りますし、起動後も動作が重くなります。

私は「DeskTop」タイプにして、オフィス関連と印刷関連はチェックを外してインストールしないようにしています。

 

■自宅サーバー機の各種設定とソフト導入

(1)ネット接続設定
  IPV4の自宅のネット環境に合わせて設定します。

  この段階でLAN内のIPアドレスを「自動」ではなく「手動」にして「192.168.1.***(***は任意)」に固定して設定します。

  その他デフォルトゲートやDNSを設定します。

 
(2)SELinuxの無効化

  CentOSは初期値からSELinuxが有効になっています。

  セキュリティ的には必要なのでしょうけど、自宅サーバー構築にはちと面倒になるので無効化しておきます。

  ※無効化の設定方法

 SELinuxの動作状況確認

 # getenforce

(表示が)Enforcing  → この場合は有効化されています。

  permissive と表示されれば無効

 

  一時的に無効にするだけなら、

 # setenforce 0

 

  起動時から無効にするには、

 # vi /etc/selinux/config

  でファイルを編集して

 SELINUX=enforcing

 のデータ部分を

 SELINUX=disabled

 に書き換えればOKです。

 

(3)ファイヤーウォールの必要ポートの開放

 初期値からファイヤーウォールは閉じられていますので、必要なポートを解放します。

 WEB系、メール系、FTP系などがありますが、面倒なら(あまりオススメではないですが)一旦ファイヤーウォール自体をすべて無効にしてしまい、各種サーバーの設定を行います。

 その後、必要なポートを残して再びファイヤーウォールを有効にします。

 こうすれば、各種サーバー機能を設定しているときに、ポートの問題で設定出来ないトラブルが防げます。

 
(4)ユーザーのグループ設定

 root管理者以外にユーザを登録してありますが、さらにほかにもメールアドレスを作るためにもユーザを追加登録しておきます。

 管理者権限でユ-ザー登録したら「プロパティ」でグループ属性に「apache」を追加しておきます。

 

(5)FTPサーバーの構築

 あらかじめ別のパソコンにダウンロードしてあるWordPressやphpMyAdminといったソフトや、設定内容を記録したテキストを他のパソコンから送り込んだり、運用開始後にブログに載せる写真を任意のフォルダーに一括アップロードする時などに使います。

# yum -y install vsftpd

でインストールします。

起動させるには、

# /etc/rc.d/init.d/vsftpd start

(再起動なら : # /etc/rc.d/init.d/vsftpd restart)

システム起動時から動かすには、

# chkconfig vsftpd on

 

(6)WEBサーバーの構築

 ブログやライブカメラの運用に必須のWEBサーバーサーバーを作ります。

# yum -y install httpd

でインストールします。

 

■DNSの設定

契約しているプロバイダに固定IPの設定があればいいのですが、ない場合は動的IPとなりIPアドレスが一定ではありません。

無料で契約出来るDNSサービスは各社ありますが、私は以前からDynamic Do! を利用しています。

これで動的IPでもサーバーを公開出来るようになります。

定期的に更新するには自分でDynamic Do! にアクセスするか、このブログの最後に書いたcron、crontabを使って自動更新させます。

 

■WordPressの導入

これについてはいろんな書籍やネット情報もあるので割愛します。

私は以前のブログはMovable Type でやっていましたが今はよりメジャーなWordPress に切り替えました。

WEBサーバーが出来ていれば、ホームページを公開するのは割と簡単です。

■WordPressに以前書いた記事を復活させる

今までやっていたブログの記事が2000弱、それに皆さんからいただいた多くのコメントなどを新しいブログでも引き継ぎたいと思っています。

しかしなんと!標準でインストールされるプラグインでは以前の記事をインポート出来ませんでした。

インポートしたい記事を選んで「インポート」をクリックしても、白い画面のままで本来表示されるはずの「投稿者を誰にしますか」画面が表示されないままでした。

  がーーーん!

今まで書いてきた2千近い数の記事がすべて復元出来ないのかと思って一瞬目の間がまっくらになりました。

諦めずにネットで探してようやく見つけたのが、「標準のプラグインを使わずほかのプラグインでやったらインポート出来た」という記事です。
http://yomon.dip.jp/word/scientific-linux/readymade-wordpress-importer/

私もいろいろ試しててみてうまくいったのが「ReadyMade WordPress Importer」というプラグインでした。
http://wordpress.org/plugins/readymade-wordpress-importer-061/

使い方は標準のプラグインと同じです。

これでうまくインポート出来てほっと一安心です。

 

■WordPressのマルチサイト化

一つのWordPressで複数のブログを「http://***/site1」「http://***/site2」などと後ろにサブディレクトリを付けて運営します。

今回は頻繁に更新するメインのブログのほかに、以前行ったスイス旅行の事だけに関連した専用ブログも一緒に管理します。

メインの「エバンストンの森から」のurlは、
http://greenleaf.ddo.jp/wp/

専門サイトの「スイス旅行記ブログのurlは、
http://greenleaf.ddo.jp/wp/switzerland/

としています。

参考書籍やネットの情報どおりに、
1)「wp-config.php」に
define(‘WP_ALLOW_MULTISITE’, true);
を追記、

2)管理画面で「ツール」「ネットワークの設定」

3)「ネットワークを有効化中」後、再ログイン

4)「wp-config.php」に指定されたコードを追記

5)「.htaccess」に指定されたコードを追記

これで複数サイトは作成出来ましたが、新規サイトや管理画面が表示出来ません。

調べてみると「httpd.conf」の「‹Directory “/var/www/html”›」の設定箇所の中にある、「AllowOverride none」のせいだとわかりました。
これを「AllowOverride All」にしてhttpdを再スタートさせれば表示されるようになりました。

 

■WordPressに初期段階でインストールしているプラグインは、

「ReadyMade WordPress Importer」
 上記に書いたように、WordPressでエキスポートしたデータ元にインストールしようとした時にはプラグインが必要になりますが、デフォルトで推奨されているプラグインではうまくインポートで出来ない時に、これを使えばうまく出来ました。

「Intuitive Custom Post Order」
 記事の並び順は自動で投稿日順になってしまい、変えようと思うと日付けを変更する必要がありますが、これを使えばドラッグアンドドロップで任意に変更する事が出来ます。

「PostPost」
 記事の投稿ごとに文末に定型のテキストデータ、たとえばブログランキングのバナーを設置する時に便利です。

「Count Per Day」
 アクセス解析のプラグインはいろいろありますが、表示される項目や日別のグラフなど私にはこれが一番見やすかったですね。

「Custom Query String Reloaded」
 トップページ、カテゴリー、アーカイブの各ページに表示される数は一律で決まってしまいますが、これを使えばそれぞれを個別に設定する事が出来ます。

 

■ライブカメラ

自宅から富士山の様子を流したり(わがやからは見えませんよ)、家のペットや熱帯魚の様子を流したり、あるいは外出時に留守宅の様子をチェックしたりするのに便利なライブカメラを構築します。

Linuxにも対応しているUVCのWEBカメラを用意します。

homeserver

使うソフトは「fswebcam」ですが、その前に必要なソフトをいれておきます。

# yum -y install gd

# yum -y install gd-devel

# yum -y install rpm-build

「fswebcam」をゲットしてインストールします。

# wget http://www.firestorm.cx/fswebcam/files/fswebcam-20070108-1.i386.rpm

# rpm -Uvh fswebcam-20070108-1.i386.rpm

画像が写るか確認

# fswebcam /home/***(自分の任意のフォルダー)cam.jpg

実際に運用する時用に画像の回転や赤い下線の削除、撮影時刻の写し込みの設定を行います。

画像の保存場所を例えば、
「/home/webcam/public_html/」とした場合の例です。

 ※ あらかじめ保存するフォルダーは作っておいてください。

これは、現在時点での画像をサイト上に表示させる時用のものです。

fswebcam -p YUYV –bottom-banner –line-colour ‘#FF000000’ -S 5 -r 352*288 –rotate=180 –font “/usr/share/fonts/ipa-gothic/ipag.ttf:14” /home/webcam/public_html/livecamera/live.jpg

先ほどのリアルタイムで流す画像を取得する以外にもう一つ、あとで過去に遡って画像を確認する保存用として、ファイル名を撮影日時にしたものを取得します。

fswebcam -p YUYV –bottom-banner –line-colour ‘#FF000000′ -S 5 -r 352*288 –rotate=180 –font “/usr/share/fonts/ipa-gothic/ipag.ttf:14” /home/webcam/public_html/livecamera/’date %Y%m%d_%H%M.jpg’;

 オプションの設定は、

  -p YUYV

  –bottom-banner  : bannerを下部に設置します

  –line-colour ‘#FF000000’ : バナーの上に表示される赤い線を消します

  -S 5 : 画像が安定して映ってから取得するために5フレーム経過後に実行します

  -r 352×288 : 画像の解像度を設定します

  –font “/usr/share/fonts/ipa-gothic/ipag.ttf:14″ : タイムスタンプで表示される文字のフォントとサイズを設定します

  –rotate=180 : 屋外用は駐車場の屋根に逆さまに取り付けたので画像を180度回転させます

  /home/webcam/public_html/livecamera/ : 画像ファイルの出力先フォルダーを設定します

  ’date %Y%m%d_%H%M.jpg’ : 画像ファイル名を設定します

fswebcam -p YUYV -r 640×480 –bottom-banner –line-colour ‘#FF000000’ -S 5 –rotate=180 –font /usr/share/fonts/ipa-gothic/ipag.ttf:14 /home/webcam/public_html/livecamera/livecam.jpg

 

これを自動で動かすためにcrontabに記述しようと思ったら、crondがインストールされていないのが判明!

cronについては、CentOS6から変更になっていて時刻設定がランダムで管理されているanacronで行われています。

これを従来からのcronに変更するには、まずcronie-noanacronをインストールします。

 # yum install cronie-noanacron

インストールが出来たらcronie-anacronは削除しておきます。

 # yum remove cronie-anacron

cronの起動確認
# /etc/rc.d/init.d/crond status
crond は停止しています

cron起動
# /etc/rc.d/init.d/crond start

 

一番簡単なライブカメラ用のサイトを作るには、

index.htmlに下記のように記述します。

‹html›
‹head›
‹title›ライブカメラ‹/title›
‹/head›
‹body bgcolor=#F0FFF0›
‹center›

‹table border=2 cellpadding=3 cellspacing=1 width=150›

‹TR vlign=”center” height=”20″›
‹td align=center bgcolor=#CC66CC›
‹font size=+1 color=#00008B›
ライブカメラ
‹/font›
‹/td›
‹/TR›
‹/table›
‹br›
‹table border=1 cellpadding=10 cellspacing=0›

‹TR vlign=”center”›
‹td align=center bgcolor=#FFFFFF›
‹img src=”live.jpg”›

‹/td›
‹/TR›
‹/table›
‹/center›
‹br›

‹/body›
‹/html›

これをアクセスするフォルダーに保存してurlにアクセスすればOKです。

http://greenleaf.ddo.jp/~webcam/livecamera/.html

 

以上、ざっと自宅サーバー構築の流れを書いてみました。

実はこんな記事でもしばらく経ってから自分で再度自宅サーバーを構築する時に役に立つことがあります。

そういう意味ではやはり自分向けの防備録ですね。

 

  


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2013年6月18日 火曜日

CentOSの自動ログインとDynamic Do!の無料IP更新の自動化

今さらですが、私のための自宅サーバー用覚え書きを二つ

■まずは、CentOSの自動ログイン

(目的)
自宅サーバー不調時に出先からのSSHでのリモートコマンドで再起動した際に、自動でログインさせるため。

(方法)
root権限で /etc/gdm/custom.conf を編集する

この中の [daemon] 項目に次の行を追加する

TimedLoginEnable=true (※自動ログインを有効化)
TimedLogin=*****   (ログインするアカウント)
TimedLoginDelay=1   (自動ログインまでの待機時間(秒)

編集後

# GDM configuration storage

[daemon]
TimedLoginEnable=true
TimedLogin=*****
TimedLoginDelay=1

[security]

[xdmcp]

[greeter]

[chooser]

[debug]

■Dynamic Do!の無料IP更新の自動化

(目的)
自宅サーバーは、以前はプロバイダーの固定IPを登録していたのだが、サービスの提供をやめてしまわれたので定期的にIPを更新させる必要がある。

(方法)
私が使っている無料のドメインサービスは、Dynamic Do! です。

ここは、アクセスした端末で、登録したurlとパスワードを含めたurlでアクセスするとそのIPに更新してくれます。

そのurlは無料IPサービスの場合は、

http://free.ddo.jp/dnsupdate.php?dn=ドメイン&pw=パスワード &ip=xx.xx.xx.xx

その上でwgetを使ってアクセスさせるには、アドレスが更新できます。

wget -O – ‘http://free.ddo.jp/dnsupdate.php?dn=ドメイン&pw=パスワード’

さらにcrontabを使って定期的にアクセスさせるようにします。

cronについては、CentOS6から変更になっていて時刻設定がランダムで管理されているanacronで行われています。

これを従来からのcronに変更するには、まずcronie-noanacronをインストールします。

 # yum install cronie-noanacron

インストールが出来たらcronie-anacronは削除しておきます。

 # yum remove cronie-anacron

あとは/etc/crontabに自動実行させたい内容を記述します。

# vi /etc/crontab

17,47 * * * * wget -O – ‘http://free.ddo.jp/dnsupdate.php?dn=harley-davidson.ddo.jp&pw=*****’

こうすれば、毎時17分と47分に自動的にアクセスしてIP更新をしてくれます。


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




2013年1月24日 木曜日

自宅サーバーにCentOS6.3とソフトをインストール

OSの導入時だけ、ディスプレィやマウス、キーボードを接続します。

今回のOSは自宅サーバー用としては商用のRed Hat Enterprise Linux と類似しているCentOSとし、バージョンは最新の6.3を導入します。

このマシンには光学ドライブ(DVDやCD-ROM)を接続していませんので、USBメモリからインストールします。
USBメモリだけでなく、SDカードなどでもメディアアダプターを使って同じ手順でインストール出来ます。

まずはCentOSのサイトからCentOSの最新版プログラムをダウンロードします。
このマシンを組み立てた2013年1月時点では、バージョン6.3が最新版でした。

  ※ CentOsの公式サイトです ↓
   http://www.centos.org/

centossite

下の方にある
「Release Notes: CentOS
 Download: i386 」    をクリックします。

centossite

ダウンロードしてくるサイトはどこでもいいのですが、日本のjpサイトをいくつか試して早い所を選びます。

centossite

この画面になったらインストールしたいCentOSのタイプを選びます。

LiveCD」はインストールしなくてもメモリやCDだけで起動出来るタイプ(インストールも出来ます)
minimal」はサイズの小さい最小サイズでインストール出来るもの
今回はアプリもフルに入っている「CentOS-6.3-i386-bin-DVD1.iso」を選びました。
***DVD2.iso というのものありますが、フルバージョンでなく必要なソフトだけならDVD1.isoで足りました。

ダウンロードには光回線でも数十分掛かりました。

さて、次にこのデータを元に自宅サーバー機にCentOsをインストールします。

DVDやCDドライブを使わずに、USBメモリやSDカードからLinuxをインストールするには「UNetbootin」というフリーソフトを使います。
  ※ こちらのサイトからダウンロード出来ます ↓
   http://unetbootin.sourceforge.net/

このソフトはCentOSだけでなく、FedoraやUbuntuなど多くのLinuxのインストールをする事が出来ます。
使うUSBメモリの容量は、「ダウンロードしたisoイメージファイルの二倍以上のもの」を用意します(←ココ、大事です)
例えば「CentOS-6.3-i386-bin-DVD1.iso」は3.5GBあるのでUSBメモリは8GB以上のものを使います。

centossite

起動したら「ディストリビューション」を「CentOS」「6」を選び、「ディスクイメージ」は先ほどダウンロードしたisoイメージファイルを指定し、「タイプ」欄で保存するUSBメモリの「タイプ」「ドライブ」を指定します。

centossite

あとは「OK」をクリックすれば、isoファイルが展開してUSBメモリに保存されます。
全部の保存が終了したら「再起動」が表示されますが、無視して作業を続けます。

「今展開したUSBメモリの中に、展開する前の「CentOS-6.3-i386-bin-DVD1.iso」をそのまま保存します」
なぜ展開したファイルを保存してあるのに、同じ展開前のisoファイルも入れるのか?、それは「そうしないとインストール作業が出来ない」からです。
実際に私も何度もつまずきましたが、CentOSのインストール作業の後半で「インストール作業に必要なファイル#1が見つかりませんでした」のような表示が出て途中で終了せざるを得なくなりました。

これを回避するために、展開前の「CentOS-6.3-i386-bin-DVD1.iso」もUSBメモリーにコピーします。
その為に、上で書いたように二倍の容量が必要だったのです。

インストールの途中で、一緒にインストールするソフトを選ぶ画面になります。
必要最低限の「Minimum」でやって後から必要なソフトを追加してもいいのですが、初回起動直後から操作しやすいGUI画面での作業をしたいので「DeskTop」あるいは「Minimum DeskTop」を選んでおきます。
個々のチェックリストを開いて、必要のない印刷系やOfficeソフトなどは入れないようにします。
この段階でもサーバー用途としてのソフトも選べますが、これも後から必要に応じて最小限で入れればいいのでここではチェックを外したままにします。

インストールは30分弱ほどで終了します。

一旦、USBメモリーを外して再起動して、初回の設定を行います。

ここでrootではない一般ユーザーの登録などを行います。

CentOSのインストールが終了したら、いよいよサーバー機として必要なソフトを入れて構築していきます。

私の場合は、
・FTP ・・・ メインマシンからバックアップしてあったサーバー用ソフトや、過去のブログ記事用の写真を復元するのに使います。
・SSH ・・・ メインマシンや外出先のAndoridスマホやタブレットから操作するのに使います。
・Web ・・・ ブログや自宅監視用ライブカメラに使います。
という順番でいれていきました。

その後で、いよいよブログソフトとして今回新たに手をつける「WordPress」を入れました。
・WordPress

次は、メールソフトを入れてブログコメントの確認などを行います。
・Postfix

最後は、サーバー機にUSBカメラを接続してライブカメラを構築します。
・fswebcam


ブログランキングに参加中です
気に入ったらポチお願いします

にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング


ツイッター、やってます!
twitterlogo




プロフィール


プロフィール写真
メカ好きおじさん
・1978年に原付、中型二輪取得
・CB50で東北一周ソロで野宿旅
・250ccで四国・九州3週間5万円の野宿旅
・40都道府県制覇
・XL250オフ後、再度オンロードに戻る
・KAWASKI2ストを最後に一度バイクを降りる
・16年のブランク後リターン
・50歳で大型二輪免許取得
・ハーレーFLSTCに奥さんとタンデム中
・2012年から北海道タンデムツーリング7回


ブログランキングに参加中です
気に入ったらポチお願いします
にほんブログ村 バイクブログ ハーレーダビッドソンへ
にほんブログ村


バイクランキング

PVアクセスランキング にほんブログ村


ツイッター、やってます!
twitterlogo