お知らせ

CentOSにMailmanのインストール

  • パソコン関連

SQL ServerのLinux対応

noimage

SQL ServerのLinux対応

Microsoftが自社のRDBMS製品SQL Serverの最新版をLinuxでもリリースすると発表しました。 http://blogs.microsoft.com/blog/2016/03/07/announcing-sql-server-on-linux/ SQL ServerはWindows上で動作するRDBMSとして利用されていましたが、今回Linuxにも対応することにより、競合するRDBMSとしてOracleやPostgres、MySQLなどとの競争が拡大します。 現在までLinuxをサーバーとして扱うシステムにWindowsを持ち込む際、あるいはWindowsで構築されたシステムにLinuxを持ち込む際は様々な難しさがありました。 今後インフラ構築時にそのような構成をとる場合の選択肢が随分と広がることになります。 Linuxベースの仮想サーバー上にSQL Serverを持ち込むなど、現状とることができなかった選択肢がこれで浮上してくることになります。 計画としては2017年中頃ということで時間はありますが、DBサーバーをLinuxへの移行の予定で、SQL ServerからOracleへマイグレーションするなどという場合に、工数で有利な方を選択できるのは良いことですし、SQL Serverの業界での競争力は高くなります。 また正式に対応するにあたり、LinuxのSQL Serverのドライバも改良されたり、対応が良くなることも十分ありえることです。 OpenSSHをWindows向けにオフィシャルにサポートしたり、SAMBAへActive Directory技術を供与するなどMicrosoftはシステム面でLinuxとの親和性を高めています。 Windows Serverが不要になるということはなく、相互に行き来することによって、Microsoft製品を選択するメリットを強く示すことができます。 境目がなく利用できるということであれば、国内サポート窓口も充実していて、販売代理店なども多いWindows Server製品は国内市場でも十分な競争力を持つことになりそうです。

  • パソコン関連

Raspberry Pi 3登場

noimage

Raspberry Pi 3登場

小型の教育用コンピュータRaspberry Pi(ラズベリーパイ)の新型Raspberry Pi3が発売開始されました。 Raspberry Piは小型のコンピュータで、マザーボードやチップ、端子がむき出しとなった形状をしています。 前モデルのRaspberry Pi2との差はプロセッサ処理能力が向上したこと、Wi-FiとBluetoothが組み込みとなったことです。 プロセッサ能力が向上したため、消費電力は2.5Aと増加し、それまでRaspberry Piで利用していたMicroUSBケーブルと電源アダプタは利用できない可能性があります。 従来のRaspberry Piシリーズで利用していたディスクのイメージはそのままで利用できるようです。 Raspberry Pi開発元の提供するOSであるRaspbianは、LinuxのディストリビューションであるDebianをRaspberry Piに最適化されたものです。 Linuxということで尻込みしてしまう方は多いかもしれませんが、教育用途としては無償で提供されるLinuxは適していることもあり、またかつてのイメージされているLinuxに比べれば随分と簡単になっています。 APTというパッケージ管理ソフトウェアがDebianには備えられていて、複数の必要なライブラリの依存関係をすべてクリアした上でソフトウェアのインストールが簡単に行えます。 すでにRaspberryの為にに作られたバイナリパッケージをダウンロードしてみるのも良いですし、ソースコードをダウンロードしてビルドしてインストールするなども簡単にできるようになっています。 HTTPサーバーをRaspberry Piで動作させて、家庭内LANで使えるWebサーバを作ってみたり、音楽などのストリーミングサービスを自分で設定してみたり様々なことが簡単に行えます。 多くの人が当たり前のように使っているWebですが、サーバ側がどのような設定で動作しているのか、どのようにインストールされているのか、などを知るためには安価で最適なものとなるでしょう。 またサーバー側で動作するPHPやPythonなどの言語や、データベースについて学ぶ機会でもあります。 教育用途として利用されるコンピュータで、表だって利用されるブラウザやメールソフトの接続する向こう側がどのようになっているかを知ることは、将来のエンジニアにとって大切な機会だろうと思います。 タブレットなどを教育用途に利用するのも人に使い易い形に作り上げられたコンピュータの使い方の学習になります。 インターネットというインフラについて学習できるRaspberry Piはもう一つの観点からの学びとなるはずです。

  • パソコン関連

VeertuのCentOS7でhttpサーバーを設定

noimage

VeertuのCentOS7でhttpサーバーを設定

前回紹介したMacOS用の仮想化ソフトウェアVeertuですがこれでWebサーバーを設定し、Macから繋いでみました。 仮想マシンイメージはVeertuが用意しているCentOS 7 minimalのイメージを使います。 まず仮想マシンイメージをダウンロードし、起動します。 CentOS7のインストーラーを立ち上げると、日本語を選択し、インストール先のボリュームを指定、ネットワークがデフォルトで使用しない設定になっているので、使用するように変更しインストールを開始します。 インストール開始後にrootパスワードと管理者のユーザーを設定しておきましょう。 仮想マシンが再起動し、ログインを求められればユーザーでログインします。 まず最初に全てのモジュールを sudo yum update で全てアップデートします。 minimalインストールなのでApacheがインストールされていません。 sudo yum install httpd でインストールを行います。 仮想マシンのIPアドレスを確認するためにifconfigを行いますが、Cent OS 7ではifconfigはデフォルトでインストールされていないため sudo yum install net-tools の取得を行いました。 ローカルでhttpの確認のために sudo yum instal wget でwgetを取得します。 vi /etc/httpd/conf/httpd.conf でApacheの設定ファイル内ServerNameのコメントアウトを外し、 sudo systemctl start httpd.service でApacheを起動します。Cent OS 6ではService httpd startを使っていましたので、Cent OS 7に合わせた記述をしています。 sudo systemctl enable httpd.service を行って起動時にスタートするように設定します。Cent OS 6ではchkconfigに当たる記述です。 sudo vi /var/www/html/index.html で簡単なテキストを作成、記述しセーブします。 wget http://localhost でindex.htmlがダウンロードされます。 ホストのMacからの接続のためには80番ポートを解放します。 Cent OS 7ではiptablesの代わりにfirewalldが利用されているので、これに合わせた記述をしてポート解放してみます。 sudo firewall-cmd --add-service=http --zone=public --permanent これでポートが解放されたので、ifconfigで表示されたローカルIPアドレスをホストのMacのブラウザで開きます。 index.htmlで記述したテキストが表示されれば完了です。 sshは最初から使えましたので、Macのターミナルからsshをすると簡単なように思います。 /var/www/htmlの所有権をユーザーにしておけばTransmitなどSFTPクラインアントからファイル転送をして、仮想マシン上でのWEBの作成などが可能になります。

  • パソコン関連

Raspberry Pi 2とWindows10

noimage

Raspberry Pi 2とWindows10

Raspberry Pi(ラズベリーパイ)という、手のひらサイズのワンボードで、一式のコンピュータが開発され、世界様々なところで、教育用途や、機器の制御などに利用され始めています。 HDMI端子からディスプレにつなげばGUIでの操作も可能で、USBポート、LANポートも用意されおり、パソコンとして利用することができます。 このRaspberry Piに新機種Raspberry Pi2が登場し、性能大幅アップとともにWindows10が無償提供されることが発表されました。 Windows10が提供される意味 Raspberry Piはもともと開発元からDebian LinuxをベースにしたOSが提供されていました。これをハードディスク代わりのSDカードに書き込み、起動する形をとっていましたが、今回はMicrosoftからWindows10がそのディスクのイメージとして提供されるようです。 Windows10のコンセプトは、今まで別々のプロジェクトであったパソコン用のWindowsや組込型のWindows、スマートフォン用のWindowsの基礎となる部分を共通化する、というものがあります。 Raspberry Piは小さなコンピュータですから、フルセットのWindows10を載せるわけではないと思われます。 Windows10は様々な機器の中核になることを目指しています。 Internet of Things(物のインターネット化)という言葉があります。様々なものにインターネットを接続させようという考え方です。 かつてユビキタスというような言葉でも語られていましたが、いま超小型でも十分な性能をもつコンピュータ、スマートフォンやタブレットのようなものが世の中に溢れています。 かつて携帯電話を持っていた人たちが、今続々とその手にコンピュータを持つようになっています。 そんな流れの中、Raspberry PiをWindowsのプラットフォームにすれば、Windowsの開発者にとっては、特別な技術の習得なくVisualStudioのような既存の開発環境で様々な機器と接続させるプログラムを開発することができます。 マイクロソフトの戦略 現在iPhoneであればObjective-C、アンドロイドであればJava、Raspberry PiであればLinuxで動作するCやスクリプト、WebサーバーであればPHPやJavascriptなど、マイクロソフトはビジネス用アプリ以外が相対的に増えていく中で、比率として縮小しています。 この新しいソフトウェアの中にマイクロソフトが食い込んでいくためには、積極的にWindowsの動作する機器を増やしていくことです。 Windows Phoneなどもまだ日本で発売されていない状態でもあり、スマートフォン市場の中でかなり苦戦を強いられています。 .Netのオープンソース化でも書きましたが、Windows開発者が他のプラットフォーム開発に移ってしまうまえに、またマイクロソフトの提供する開発ツールの優秀さで新たな開発者を呼び込むことができるように、という思惑があります。 実際にWindows PCがここまでビジネスの世界で浸透した大きな理由のなかに、開発の容易さが含まれていることは確かです。 プラットフォームとしてのWindowsが今後どのような広がりを見せ、開発者に受け入れられていくか、Raspberry Pi2へのWindows10無償提供は、動向を伺う一つの指標になりそうです。

  • シスキュー技術部

amavisd-newの問題解決

noimage

amavisd-newの問題解決

spamassassinの日次アップデートスクリプトがエラーを送ってくるようになったので、その原因を調査して解決しました。 spamassassinは迷惑メール定義ファイルを持ち、迷惑メールをサーバー側で削除してくれるプログラムです。 sa-update.cronを日次処理で実行させると、cronがエラーのメールを送ってきます。 タイトルは /usr/share/spamassassin/sa-update.cron 2>&1 | tee -a /var/log/sa-update.log 内容は The amavisd daemon is apparently not running, no PID file /var/run/amavisd/amavisd.pid という風になっています。 amavisdはamavisd-newというサーバー側のウィルスメールスキャナーで、spamassassinと連動して動作しています。 このエラーメッセージを見ると、amavisdが起動していないのかな?と考えます。 サーバーにログインして、 [bash] service amavisd status [/bash] としてみて、停止しているかどうかを確認してみます。 結果は amavisd (pid xxxxx xxxxx xxxx) is running... となって、プロセスは動作しているようです。 では再起動させようとして、 [bash] service amavisd restart [/bash] としてみると、 amavisd を停止中: The amavisd daemon is apparently not running, no PID file /var/run/amavisd/amavisd.pid amavisd を起動中: [  OK  ] 同じエラーが出ます。 [bash] ls /var/run/amavisd/ [/bash] してもamavisd.pidが確かにありません。 設定ファイル /etc/amavisd/amavisd.conf には $pid_file = “/var/run/amavisd/amavisd.pid”; とあります。 この辺を検索してみると、 $pid_file = “$MYHOME/var/amavisd.pid” という記述もあるので、もしかしたら、と/var/spool/amavisd/var/を確かめるとamavisd.pidはありました。 DaemonをStopするのにも、別のところのpidファイルを探しに行っていたようなので、一度Service amavisd statusで表示されたプロセスをkillしてみます。 そして再度起動、さらに再起動してみます。 [bash] service amavisd restart [/bash] amavisd を停止中: [  OK  ] amavisd を起動中: [  OK  ] というわけで、うまくいきました。 [bash] ls /var/run/amavisd/ [/bash] すると amavisd.pid があることが確認できます。

  • パソコン関連

研修テキスト WordPressのインストール

noimage

研修テキスト WordPressのインストール

弊社もこの4月より新入社員を二名迎えることになりました。 その最初の研修として、WordPressインストールの方法を学んでもらいます。 そのテキストを公開します。 WordPressとは WordPressとは、現在さまざまなサイトで利用されている、CMS(コンテンツ管理システム)です。 コンテンツ管理システムとは、WEBサイト上のテキストや、画像、その他の情報を、アップロードや保存など、統合的に管理してくれるシステムです。 コンテンツ管理システムが登場する前は、テキストや画像などのコンテンツを手動で管理していましたが、コンテンツ管理システムが広がってから、WEBサイトの更新や構築はスマートに行えるようになりました。 アメブロや、ライブドアブログなどもCMSですが、Wordpressはオープンソースソフトウェアであり、だれでも取得して、独自で構築できるので、ブログ以外にも、さまざまな分野に利用されています。 企業サイトなどでも、カスタマイズされて多く利用され、システムキューブのコーポレートサイトもWordPressで作成されています。 WordPressをインストールする環境 これからWordPressをインストールしてもらう環境は、社内のサーバー機で動作する、Linuxの仮想マシンです。 仮想マシンとは、コンピュータの上で、別のコンピュータを動作させる仕組みです。仮想マシンを利用すると、まるで一台新しいパソコンを用意したかのように、動作するシステムを作り上げることができます。 仮想マシンですので、誰かが誤った操作をして、システム全体が動かなくなっても、途中で保存しておいた状態を復元することで、その段階まで戻すことができます。 仮想マシンから、仮想マシンがインストールされているシステムには影響を与えることができないので、なにか誤った操作で、社内のだれかが困ることはありません。そのために仮想マシンを使用しています。 ですので安心して、これからの操作を行ってください。 LAMP環境 WordpressはLinuxというオペレーティングシステム上で、ApacheというWEBサーバーを利用して動作します。 コンテンツを管理するためのデータベースはMySQL、WordPressはPHPというプログラミング言語で作成されています。 Linux+Apache+MySQL+PHPという言葉の頭文字をとって、LAMPという言葉をこれから何度も聞くことになるはずです。 このLAMP環境は基本的に無償で提供されているものを集めたものですので、知識さえあれば、機器を用意するだけで使用することができ、世界中の多くのWEBサービスはこのLAMP環境で動作しています。 FacebookやTwitter、Youtubeやmixiなど、さまざまなソーシャルネットワークなど、ほとんどがLAMPです。 今回WordPressの演習をしてもらう上で、このLAMP環境を事前に作っていますので、そこにログインして、WordPressをインストールしていきます。 TERATERMの導入 WordPressをインストールするサーバー環境へ、SSHという仕組みを作ってログインしてもらいます。 SSHとは安全にLinuxをリモート操作することのできる仕組みです。 ここからはアイコンや、マウスの使用をしない、コマンドラインというインターフェイスを利用して、サーバーとやり取りをします。 LAMP環境の構築はグラフィックでの操作ではなく、基本的にキーボードのみのコマンドラインを利用することになります。 今回はTera Termというアプリケーションを使います。 下記サイトより、TeraTermをインストールしてください。 http://www.forest.impress.co.jp/library/software/utf8teraterm/ これがサーバーをリモート操作する、SSHクライアントになります。 Windows用のSSHクライアントはPuTTYや、Poderosaといったものがあります。 インストールは下記の手順に従ってください。 契約内容をよく読み、同意して次へをクリック インストール先はそのままで次へをクリック 標準インストールを選んで次へをクリック 日本語を選択してクリック 標準のままで次へをクリック。 デスクトップにショートカットを作るようにしてクリック。 インストールをクリックしてインストールを行います。 SSHでLINUXに接続する TeraTermを起動して、下記のIPアドレスに接続します。 192.168.xxx.xxx これは仮想マシンに割り当てられたIPアドレスになります。 セキュリティ警告というのが出ますが、これは接続しようとしているサーバーが同じものかということを判別するためのホスト鍵指紋というものをうけとったことを示してます。 今回は社内のサーバーに接続するので不安はありませんが、今後社外のサーバーに接続するまでには、意味を調べておいてください。 ログイン名が求められるので、お渡ししたログイン名とパスワードを入力してもらいます。 ログインが成功すれば、このような文字が表示がされます。 ホームディレクトリという各ユーザーごとに割り当てられたディレクトリに入ります。 [bash] pwd [/bash] というコマンドで確認してください。 ディレクトリというのはWindowsでいうフォルダのようなものと考えてください。 データーベースの設定 まず、WordPressが利用するデータベースと、データベースユーザーを作成します。 ここで行うことは、この手順の中でも理解までに時間がかかる作業になりますが、指示通りに行ってください。 WordPressを独自に設置するためには必要な手順となります。 [bash] mysql –u root –p [/bash] でお教えするパスワードを入力し、MySQLにログインします。 これで管理者としてmysqlを操作できます。 この状態ではすべてのデータベースにたいして、あらゆる操作ができます。 間違って、動いているデータベースを丸ごと消去することもできます。 ですのでデーターベースを操作するには、必要な権限を持ったユーザーを作ることで、安全に利用することが必要になります。 ここではshimazakiというデータベースを作成し、shimazakiというユーザーを作って、このデーターベースに対する権限をすべて与えます。 まずは、Wordpress用のデータベースを作成します。 [text] create database shimazaki; [/text] このshimazakiの部分は、自分の名前にしてください。 Ouery OKと出れば成功です。 Query(クエリー)とは問い合わせ、データベースに対する指示です。これから仕事をするうえで、よく聞く言葉になります。 続いて、 [text] grant all privileages on shimazaki.* to shimazaki@sys-cube.co.jp identified by ‘パスワード’; [/text] と入力します。 翻訳すれば、 権限を与える(grant) 全て(all privileages)  データベースshimazaki内のすべてのもの(on shimazaki.*) を そのデータベースが動作しているサーバーにshimazakiというユーザーを(to shimazaki@sys-cube.co.jp) identified by ‘パスワード’;(‘パスワード’ で作成する) という意味合いになります。 これにもQuery OKがでれば成功です。 これでshimazakiデータベースにすべての権限を持つshimazakiアカウントが作成されます。 [text] show databases; [/text] と入力して、データベース一覧を見てください。今作成したデータベースがデータベース一覧の中で確認できます。 これでWordpressインストールのための、MySQLの操作は終わります。 [text] exit [/text] と入力して、MySQLから抜けてください。 WordPressのダウンロードとインストール これからの操作を行うために、とりあえず間違わないように、 cd と入力して、自分のホームディレクトリに戻ってください。 そこでWordPressの最新版をダウンロードし、展開し、web公開ディレクトリにインストールするまでを行います。 まず [bash] wget http://ja.wordpress.org/latest-ja.zip [/bash] と入力し、ダウンロードします。このlatest-ja.zipは常に最新版が置かれているアドレスですので、一番新しいバージョンが手に入ります。 wgetはWebなどで公開されているファイルをダウンロードするツールです。 ダウンロードが終わったら、 ls でディレクトリの中を確認します。 latest-ja.zipというファイルが見えるはずです。 これはzipというwindowsでも使われる圧縮ファイルですので、unzipで展開します。 [bash] unzip latest-ja.zip [/bash] すると、結構な量の文字が流れていき、ファイルが展開されるのがわかると思います。 これがCMS、WordPressのすべてのプログラムです。 ワードプレスの基本的な機能は、これだけのファイルで作られています。 最後まで展開されたら、 ls でディレクトリを確認してみましょう。 wordpress というディレクトリができています。 このディレクトリの内容を丸ごと、web公開ディレクトリpublic_htmlに移動しますします。 [bash] mv wordpress/* public_html [/bash] これで移動は完了です。 [bash] ls public_html [/bash] で確認すると、public_htmlにファイルが移動されているのがわかります。 次はWordPress設定ファイルの作成です。 WordPress設定ファイルの編集 [bash] cd public_html [/bash] でpublic_htmlディレクトリに移動し、 [bash] cp wp-config-sample.php wp-config.php [/bash] で設定ファイルをサンプルからコピーします。 これをviというエディタで編集します。 経験があれば、難しくはありませんが、初めてだと、戸惑うかもしれません。 [bash] vi wp-config.php [/bash] ここで画面が切り替わり、テキストエディタになります。 味気ない画面ですが、windowsのメモ帳のようなものと思って、気楽にいきましょう。 カーソルキーを使って、画面をスクロールさせていきます。 MySQL設定という部分に入ったら、ここから編集します。 編集モードにするにはiを押してください。編集モードから抜けるにはESCキーです。 define(‘DB_NAME’,’先ほど作ったデータベース名’); define(‘DB_USER’,’先ほど作ったユーザー名’); define(‘DB_PASSWORD’,’先ほど登録したパスワード’); これでWordPressをMySQLに接続させる準備はできました。 さらに画面をスクロールさせ、認証用ユニークキーという部分を見つけます。 ここではランダムな文字列を使って、不正なアクセスなどを行いにくくするための設定をします。 ここでTera Termを離れ、ウェブブラウザを開きます。 https://api.wordpress.org/secret-key/1.1/salt/ ここで乱数を自動的に生成してくれるので、これをすべてコピーします。 再びTera Termをに戻り、これを右クリックで貼り付けます。 もともとおかれていたdefine部分はバックスペースできれいに消しておいてください。 これでwp-configの設定は終わりです。保存方法は、ESCキーを押し :wq で上書き保存して終了です。 WordPressの起動と初期設定 これでTera Termによる操作は終わりです。 設定ファイルがうまく作れていれば、あとはWebブラウザからの操作になります。 それを確認するまで、TeraTermの接続は残しておくといいでしょう。 http://192.168.xxx.xxx/~ユーザ名/ でアクセスしてください。ワードプレスのロゴとようこそが表示されていれば、成功です。 サイトのタイトルと、adminのパスワード、メールアドレスを入力してください。 WordPressをインストールをクリックして、成功しました!という表示になれば、インストール完了です。 自分専用のWordPressをインストールすることができました。 ここまでできたら、教えてください。 管理者の私が、サーバーの管理者権限で必要な操作を少し行います。 ここまでの実習の意義 WordPressは個人のブログから、企業サイトまで、さまざまなサイトで利用され、Webを彩っています。 しかしこれらは基本、文字ベース(CUI)のLAMPサーバーで動作していることを理解してもらうことが大事です。 Webサイトは、ブラウザとWebサーバーがテキストをやり取りすることで、表示したり、入力したり、結果を返したりしています。 WordPress以外にもLAMP環境で動作するプログラムはたくさんあり、今後LAMP環境での開発などもお願いすることもあるはずです。 その時に常にSSHを利用してログインしなくとも、便利なツールを使うことで開発できますが、それは今回行ったような操作を自動で行うものである、ということを理解してもらうことが、ここまでの実習の意義です。 WordPressを使ってみる さっそくログインしてみましょう。 ユーザー名にadmin、パスワードに先ほどのパスワードを入力すれば、ダッシュボードという管理画面に移ります。 WordPressの操作はすべてこのダッシュボードで行えるようになっています。 投稿、新規追加を選んで最初の投稿をいきなり行ってみます。 一度でもブログというものを使ったことがあれば、簡単にわかると思います。 ここでタイトル、本文、を入力して、公開ボタンを押せば、公開されます。 投稿を公開しました。投稿を表示する、と上部に表示されるので、投稿を表示するをクリックします。 これで最初の投稿は完了しました。 これが今インストールしたばかりのWordPressの画面です。 ここで一つ注意してほしいのは、このブログは社内のネットワークの中でだけ公開されているものです。 普通のブログのように、世界中に公開されているものではありませんので、自宅のパソコンで見ることはできません。 社内の人だけが見られるWordpressですので、気後れせず、好きなようにカスタマイズして、投稿してもらうことが目的です。 ここで、これから知ったことや、学んだこと、その日行ったことなどを、投稿していってください。 社内のみんなが、これからの投稿を見て、あなたの理解度などがわかるようにしてもらえると、助かります。 たとえ間違ったことを書いていても、よっぽどおかしなことをしてしまってWordPressがうまく動かなくなっても、なんとかしますので気を楽にしてください。 テーマやプラグインをインストールしてみる 一番最初のカスタマイズを行います。 WordPressには、全体の見え方や構成を設定する「テーマ」と、機能を拡張する「プラグイン」で、用途に合わせたものに作り上げていきます。 企業向けのカスタマイズは、お客様の要望に応じて行いますので、既存のテーマをそのまま使うということはほとんどありません。 最初の一歩として、自分のブログの見栄えや機能を変更してみましょう。 ダッシュボードから外観を選び、テーマを選択します。 テーマのインストールのタブを選ぶと、いくつかのテーマが表示されます。 さまざまなテーマが用意されていますが、これから一つを選択します。 obandesというテーマを選んでみました。インストールを押すと、インストールが始まります。 インストールが完了すれば、有効化をクリックします。 これでブログを表示すれば、先ほど文字ばかりだったのが、ちょっと華やかなテーマに変更されています。 このテーマをもとに、たとえば、ヘッダ画像などを変更するなどで、自分向けにカスタマイズすることは、あまり難しくはありません。 今後の課題として、いろいろ試してみてください。 次はプラグインを追加してみます。 ダッシュボードのプラグインから、新規追加を選びます。 動画を表示するためのプラグインをインストールします。 Viper’s Video Quicktagsというプラグインを選択してみました。 検索してこのプラグインを見つけたら、今すぐインストールをクリックします。 インストールが終わったら、有効化します。 WordPressはテーマやプラグインをインストールしても、有効化、無効化で、利用できるかどうかを選ぶことができるようになっています。 これで投稿から、新規追加を行ってみます。 Youtubeのアイコンが追加されています。 このYoutubeアイコンをクリックし、お気に入りのYoutubeの動画のURLをテキストボックスにコピーし、Okayをクリックしてください。 [youtube][/youtube]で囲まれたYoutubeのアドレスが投稿部分に表示されます。 これでプレビューを見てみましょう。 Youtubeの動画が貼り付けられています。 公開を押して、公開してみてください。 プラグインを使わなくても、Youtubeの動画を張り付けることができますが、このプラグインのおかげで、URLをコピーするだけでかなり簡単に貼り付けができるようになったことがわかると思います。 プラグインはこのようなもので、用途に合わせて、WordPressの機能を強化していくものです。 実習の終わりに これから、いろいろなテーマや、プラグインを自由にインストールしてみてください。 なにか不具合があっても、社内ネットワークの外に出ていくことはありませんので、気にせず行ってください。 これで既存のプラグインで何ができるか、そして何ができないかを知っておくことが、これからお客様のご要望に応じて、WordPressのカスタマイズを行うときに、役に立ちます。 一つだけ注意点があります、WordPressの公式サイト以外からプラグインやテーマを持ってきて使うことは避けてください。 Webのさまざまな場所で公開されているテーマなどには、ウィルスや勝手に情報を送信してしまう有害なコードが含まれていることが多いです。 そのようなものを用いて何かあった場合、会社としての信頼を失ってしまうので、それはかならず避けてほしいです。 仕事として物事を進めるときには、信頼やセキュリティということを意識していくことが、大事になります。 今回の実習は気兼ねなくワードプレスを使ってもらうこと、基本的な仕組みを理解してもらうことが要点ですので、積極的に使ってみてください。 以上でWordPressのインストールの実習を終わります。 お疲れ様でした。

  • シスキュー技術部

CentOSにMailmanのインストール

noimage

CentOSにMailmanのインストール

メーリングリストサーバーをVPSに構築した際のメモです。 オープンソースのメーリングリストサーバーMailmanを利用します。 ApacheとPostfixが稼働している状態から開始します。 yumでインストールできるパッケージがMailmanの2.1.13でしたので、 http://docs.python.jp/contrib/mailman/releases.html こちらから最新版を取得します。 こちらでダウンロードできるバージョンは細かい日本語向けカスタマイズが施されています。 [bash] yum -y install python-devel [/bash] pythonのインストールを行います。 [bash] groupadd mailman useradd -c "GNU Mailman" -s /sbin/nologin -M -g mailman mailman mkdir /usr/local/mailman chown mailman. /usr/local/mailman chmod a+rx,g+ws /usr/local/mailman [/bash] Mailmanのグループとユーザーを作ります。 [bash] wget http://docs.python.jp/contrib/mailman/_static/mailman-2.1.14+j7.tgz tar zxvf mailman-2.1.14+j7.tgz mv mailman-2.1.14+j7 /tmp/ chown -R mailman. /tmp/mailman-2.1.14+j7.tgz [/bash] Mailmanの最新バージョン2.1.14+j7をダウンロードし解凍、/tmp/以下に移動させます。 [bash] cd /tmp/mailman-2.1.14+j7 su mailman -s "/bin/bash" -c "./configure --with-cgi-gid=apache" su mailman -s "/bin/bash" -c "make" && make install [/bash] makeを実行し、インストールフォルダにインストールします。 [bash] cd /usr/local/mailman/ ./bin/check_perms -f ./bin/check_perms [/bash] アクセス権チェックを行います。-fオプションで自動的に修正してくれます。 [bash] rm -rf /tmp/mailman-2.1.14+j7/ [/bash] ソースを削除します。 [bash] vi /usr/local/mailman/Mailman/mm_cfg.py [/bash] ここでMailmanのコンフィグファイルを設定します。 [text] DEFAULT_URL_HOST = 'hostname' DEFAULT_EMAIL_HOST = 'hostname' add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST) MTA = 'Postfix' DEFAULT_SERVER_LANGUAGE = 'ja' DEFAULT_URL_PATTERN = 'http://%s/mailman/' [/text] URLホスト名には、正確なURLを記述してください。ここが実際アクセスするものと違う場合、管理画面でエラーになります。 EMAIL_HOSTにはメールサーバーのドメイン名を入力してください。 ここに入力した文字列が、メーリングリストへの投稿先となります。 メーリングリスト名@DEFAULT_EMAIL_HOSTが投稿先となります。 mm_cfg.pyには新たにメーリングリストを作成する際のデフォルト値をいろいろと設定することができます。 GUIの管理画面からも設定できる部分ですが、同じような性格のメーリングリストを複数作成する際は、ここに記述しておくと便利です。 このような設定があるとすると、mm_cfg.pyには [text] DEFAULT_MAX_MESSAGE_SIZE=0 [/text] のように記述しておくと、新規に作られるメーリングリストにあらかじめ適用されます。 [text] /usr/local/mailman/bin/mmsitepass password [/text] Mailman全体のパスワードを設定します。 [bash] crontab -u mailman /usr/local/mailman/cron/crontab.in [/bash] MailmanのCronの設定を行います。 [bash] /usr/local/mailman/bin/genaliases chown mailman. /usr/local/mailman/data/aliases* chmod g+w /usr/local/mailman/data/aliases* [/bash] Mailmanのエイリアス設定を行います。 メーリングリストを作成する度に、メーリングリスト用に新たな複数のエイリアスが作成されます。 入退会用、コマンド送信用、メーリングリスト送信用などです。 [bash] vi /etc/postfix/main.cf [/bash] main.cfの中の以下に、mailmanのaliasesを設定します。 [text] alias_maps = hash:/etc/aliases, hash:/usr/local/mailman/data/aliases [/text] これをpostfixに反映させます。 [bash] service postfix reload [/bash] Apacheの設定ファイルをMailman用に作成します。 [bash] vi /etc/httpd/conf.d/mailman.conf [/bash]   [text] ScriptAlias /mailman/       /usr/local/mailman/cgi-bin/ <Directory /usr/local/mailman/cgi-bin/> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory> Alias   /pipermail/     /usr/local/mailman/archives/public/ <Directory /usr/local/mailman/archives/public/> Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> [/text] これを保存し、 [bash] service httpd checkconfig service httpd graceful [/bash] apacheをリスタートします。 [bash] /usr/local/mailman/bin/newlist mailman [/bash] 管理用メーリングリストを作成します。 管理者メールアドレスと、mailmanパスワード、を入力し、エンターを入力すると、作成が完了します。 [bash] /usr/local/mailman/bin/config_list -i /usr/local/mailman/data/sitelist.cfg mailman [/bash] メーリングリストの初期設定を行います。 [bash] cp /usr/local/mailman/scripts/mailman /etc/rc.d/init.d/ /etc/init.d/mailman start chkconfig --add mailman chkconfig mailman on [/bash] 起動スクリプトを設定して、自動で起動させます。 ここで http://hostname/mailman/admin にアクセスし、Mailmanの管理画面が表示されれば、インストール完了です。 アイコンが表示されていなかったので、アイコンをwww配下のiconsディレクトリにコピーします。 [bash] cp /usr/local/mailman/icons/* /var/www/icons/ [/bash] これでアイコンも正常に表示されました。 設定次第で、双方向のメーリングリストや、メールマガジン風など様々な設定が可能で、つかいやすい印象です。 ユーザーも管理画面から様々な操作ができますが、今回必要なメーリングリストは閉じたものですので、認証をかけて管理画面にアクセスできないようにしました。 Mailmanの設定項目はかなりいろいろありますので、最適な設定を探してみてください。

  • シスキュー技術部

CentOSとownCloudで社内用のDropboxをつくる

noimage

CentOSとownCloudで社内用のDropboxをつくる

オンラインストレージ、Dropboxなどはかなりメジャーな存在となっています。 クライアントをインストールしておくと、指定フォルダーの内容をサーバーにアップロードし、同じアカウントを登録してある他のPCと同期します。 またwebブラウザを介して、ファイルのダウンロードもでき、公開用URLを設定して、他の方との共有も可能です。 このDropboxはファイル送信経路や、ファイルサーバー側での暗号化は行われており、無料から利用できるとはいえ、セキュリティー的な部分で不安なものではありません。 しかしながら、たとえば消去や、取り出し、バックアップなど、具体的なデータの取り扱いについて、完全にコントロール下におけるものではありませんので、社内ポリシーで禁じられている、あるいは一定以上のセキュリティー基準を設けて、重要なファイルを置かないようにする、などさまざま運用方針を持っている方もいらっしゃると思います。 これを自社保有のサーバーで同じような仕組みを提供するもので、ownCloudというオープンソースソフトウェアがあります。 今回はこれを試してみます。 ownCloudのインストール CentOS6.3+apache2+mod_SSL+PHP5.3.3+PostgreSQLがあらかじめ構築されたVPS環境を利用しました。 ownCloudは仕組み的にはWebDAVを利用しますので、経路暗号化のために、自局認証ではなく公的認証局によるSSL証明書を用意しておくことが重要です。 ownCloudのwebサイトから、Install、LinuxPackagesでCentOSを選び、指示された通りにリポジトリを追加し、yumでインストールします。 これで必要な他のパッケージとともにインストールされます。 [bash] cd /etc/yum.repos.d/ wget http://download.opensuse.org/repositories/isv:ownCloud:community/CentOS_CentOS-6/isv:ownCloud:community.repo yum install owncloud [/bash] これで [text] /var/www/html/owncloud/ [/text] 以下にインストールされます。 初回セットアップの前にpostgreSQLにデータベースとユーザーを作っておきます。 [bash] su - postgres createdb -E UTF8 -U ユーザー名 -T template0 owncloud [/bash] https://yourhost/owncloud にアクセスすると、セットアップが始まります。 今回、gdがないというエラーが出ましたので、gdをインストールし、 [bash] yum -y install gd [/bash] apacheをリスタートします。 [bash] service httpd restart [/bash] 再度セットアップをはじめます。 ここで管理ユーザーとパスワード、使用するDBをPostgreSQLを設定します。 Finish Setupを選択します。 ここでoc_ユーザー名にテーブル作成権限がない、というエラーが出ましたので、owncloudデータベースに権限を与えます。 [bash] su – postgres psql GRANT ALL PRIVILEGES ON DATABASE owncloud TO oc_ユーザー名; [/bash] 再度セットアップを行うと、無事インストールが終了しました。 owncloud/config/config.php に [text] 'forcessl' => true, [/text] と加えておくとssl接続に限定されます。   インストール後の利用方法 ひとまず管理者でログインし、動作を確認しましょう。 新規ボタンでファイルをアップロードできます。 DropboxのWebを利用したことがあれば、すぐに操作方法はわかります。 管理者であれば、左下の設定アイコンからメニューを出して、ユーザーを追加できます。 その他にもプラグインや、全体設定などを操作することができます。この辺りはDropboxにはない操作ですので、いろいろ試してみてください。 WebDAVですので、 [text] https://yourhost/owncloud/remote.php/webdav/ [/text] でアクセスできます。 PC・スマートフォンのクライアント PC・Mac・iOS・Android各クライアントで動作を確認しました。 http://owncloud.org/support/install/ PC・Macでは任意のフォルダと同期、iOS、Androidでは、ダウンロードしたファイルを開いたり、写真をアップロードしたりできます。 PC版 Windows8のスタート画面ではこんな感じです。 Mac版 iPad版 Android版 それぞれ、 https://yourhost/owncloud ユーザー名 パスワード を入力して、認証が通れば、すぐに使用可能です。 PC・Mac版は無料、iOSは85円、Androidは99円(記事作成時の価格)でした。 セキュリティーなど httpsでの接続でなければ、経路の暗号化はできませんし、公的認証でなければ成りすましを防ぐ方法はないので、SSLの公的認証は必須と言えるでしょう。 それさえクリアできれば、細かい使い勝手の差はありますが、Dropbox等と同じように利用し始めることができます。 少なくとも自己管理できる範囲で、状況を把握でき、独自運用できるものとしては、かなり簡単な仕組みです。 一通りのLinuxOSの構築ができていれば、1~2時間もあれば、十分使い始められます。 ファイルはownCloudディレクトリ内に暗号化されずに保管されます。 .htaccessによって、外部からのアクセスはできませんが、サーバーの管理権限があれば、自由に閲覧、移動、削除などが可能です。 プラグインによって、保管ディレクトリの暗号化はできますが、その際は制約があるようです。 プラグインによって、様々な機能を追加できるのもownCloudの利点ですが、それによる不都合も出てくる可能性は考慮すべきです。 運用にあたっては、ownCloudの脆弱性、Apacheの脆弱性などについて、情報収集が必要となりそうです。 あとはユーザー名、パスワードのみの認証ですので、十分複雑なパスワードを設定する必要があります。 VPNでさらに通信の暗号化や、iptablesによって公開するグローバルIPアドレスなどを自社の各拠点や取引先に限定する、などを行えば、さらにセキュリティーの向上が望めるのは自己管理のサーバーならではの利点でしょう。

  • シスキュー技術部

ClamAVがアップデートした際にfreshclamが正常に動かない

noimage

ClamAVがアップデートした際にfreshclamが正常に動かない

当サーバはClamAVというアンチウィルスソフトで保護されていますが、このClamAVの日々の更新がうまくいっていない旨のメールが届くようになりました。 メール本文は以下の通り /etc/cron.daily/freshclam:ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).ERROR: Can't open /var/log/clamav/freshclam.log in append mode (check permissions!).   freshclamは定義ファイルの更新プログラムですが、それがログを追記できないのが原因のようです。 早速リモートでサーバーに接続して/var/log/clamavのあたりをチェックしてみます。 すると所有者がclamに変更されており、clamavやfreshclamはclamavの権限で動作するよう設定していますので、この齟齬がエラーの原因と考えられます。 この状態でfreshclamしても、ERROR: Can't open /var/log/clamav/freshclam.log in append mode (check permissions!).ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log). メール本文と同じエラーが出力されます。   この/var/log/clamavあたりの所有権を訂正しないと、clamavが定義ファイルを更新できないので、 [bash] # chown –R clamav:clamav /var/log/clamav [/bash] として、/var/log/clamav以下のディレクトリをclamavの所有権に変更します。 これで [bash] # freshclam [/bash] すると、ClamAV update process started at Mon Oct 15 13:39:27 2012nonblock_connect: connect timing out (30 secs)Can't connect to port 80 of host db.jp.clamav.net (IP: 219.106.242.51)Downloading main.cvd [100%]main.cvd updated (version: 54, sigs: 1044387, f-level: 60, builder: sven)Downloading daily.cvd [100%]daily.cvd updated (version: 15460, sigs: 276636, f-level: 63, builder: guitar)bytecode.cld is up to date (version: 190, sigs: 36, f-level: 63, builder: neo)Database updated (1321059 signatures) from db.jp.clamav.net (IP: 211.10.155.48) エラーも出ず、正常に終了しました。 (追記) ふたたびcronが正常に動作していないメールが流れてきていました。/etc/cron.daily/freshclam:ERROR: Can't create temporary directory /var/lib/clamav/clamav-fb2e8913efa2473d6fce1646e98b3a64 定義ファイルを格納してる/var/lib/clamavディレクトリも所有者がclamになっています。 そこで同様に [bash] # chown –R clamav:clamav /var/lib/clamav [/bash]して [bash] # freshsclam ClamAV update process started at Thu Oct 18 10:19:09 2012 main.cvd is up to date (version: 54, sigs: 1044387, f-level: 60, builder: sven) nonblock_connect: connect timing out (30 secs) Can't connect to port 80 of host db.jp.clamav.net (IP: 219.106.242.51) Downloading daily-15461.cdiff [100%] Downloading daily-15462.cdiff [100%] Downloading daily-15463.cdiff [100%] Downloading daily-15464.cdiff [100%] Downloading daily-15465.cdiff [100%] Downloading daily-15466.cdiff [100%] Downloading daily-15467.cdiff [100%] Downloading daily-15468.cdiff [100%] Downloading daily-15469.cdiff [100%] Downloading daily-15470.cdiff [100%] Downloading daily-15471.cdiff [100%] Downloading daily-15472.cdiff [100%] daily.cld updated (version: 15472, sigs: 277314, f-level: 63, builder: ccordes) bytecode.cld is up to date (version: 190, sigs: 36, f-level: 63, builder: neo) Database updated (1321737 signatures) from db.jp.clamav.net (IP: 219.94.128.99) [/bash] 同様のエラーが出力される場合は、いちどClamAVで設定されているユーザーと、ログファイルディレクトリや定義ファイルディレクトリの所有権に齟齬がないかを確認してみてください。

1 2