ブログサイトにBloggerを使っているんだけど、最近バグが多くてちょっと使いにくくなってきた。
改悪しすぎなんだけど。
どうにかならんのか。
「VPS」カテゴリーアーカイブ
オープンソースのリモートファイル管理ソフトCyberduckが凄すぎる
VPSサーバーのWordPressに移転しようと奮闘中などうも僕です。
辛すぎる。
でも、Bloggerがあまりにバグを放置しまくるのでしょうがない。
使いやすくて好きなんだけどね。
SubsonicをSSL化する
超絶便利なSubsonicだが、SSL化していなかったのでSSL化してみた。
記事にすると短いが、なぜかhttpsで通信が通らなくて苦労した(;´Д`)
よく使うから暗号化しておかないとね!
※注意
これからの記事はさくらインターネットのVPSで下記設定を終了したものとして書いてます。
VPSセキュリティ編
【さくら】VPSサーバーのパフォーマンスを向上させる。【DTI】
【セキュリティ】さくらVPSにファイアウォールを適用する。【iptables】
【セキュリティ】sshでのrootログインを禁止する【乗っ取り対策】
VPS機能拡張編
【Gmail】CentOS6.x(64bit)でimotenを設定して@docomo.ne.jpメールを使う【主にさくらインターネット編】
【iPhone】imotenの送信メールをSSL化する【docomoメール】
【オレオレ証明書】自作WebDAVサーバーにWindows7で接続する【Windows7】
【WebDAV】VPSをミュージックストリーミングサーバーにする【Subsonic】
【MyCloud】さくらVPSをAirVideoサーバーにする【ストリーミング】
【VPS】さくらのVPSにGallery3をインストールする【フォトアルバム】
Gallery3をSSL化してみた
昨日設定したGallery3だが、ポート80のhttpだとユーザー名やパスワードは平文で暗号化もされずそのまま送られるし、衝撃的だったのは、ブラウザでデータを保存しているディレクトリを直接指定して見ると中身が丸見えだった(;´Д`)
ユーザー名とパスワードの意味が一切なし。
そういやWebDAVで設定した時にSSLの設定は完了しているので、どうせならSSL通信を行うよう設定する。
そしてディレクトリの直接指定をしても不可視化するように設定を変更しなおしてみた。
昨日の記事は25日の13時に修正済みなので、はじめから行う場合は【VPS】さくらのVPSにGallery3をインストールする【フォトアルバム】で設定してもらえば大丈夫だと思います。
その前に設定しちゃったよ!って人は下記設定を行なってください。
【VPS】さくらのVPSにGallery3をインストールする【フォトアルバム】
久々のVPS設定記事ですな。
やっぱりいじると楽しいVPS。
今回は写真の管理をクラウドで出来るGallery3をVPSにインストールしてみます。
iPhone意外にもお友達にアカウントを作って公開もできるスグレモノ。
詳しい設定サイトが一切無い地味ソフトながら、かなり便利。
でもまさ様に情報を提供していただいたお陰で何とか出来ました。
ありがとうございますヽ(´ー`)ノ
※注意
さくらインターネットのVPSと契約し、下記設定を終了したものとして書いています。
セキュリティ編全部と、WebDAVサーバーの設定は最低限終わらせておいてください。
VPSセキュリティ編
【さくら】VPSサーバーのパフォーマンスを向上させる。【DTI】
【セキュリティ】さくらVPSにファイアウォールを適用する。【iptables】
【セキュリティ】sshでのrootログインを禁止する【乗っ取り対策】
VPS機能拡張編
【Gmail】CentOS6.x(64bit)でimotenを設定して@docomo.ne.jpメールを使う【主にさくらインターネット編】
【iPhone】imotenの送信メールをSSL化する【docomoメール】
【オレオレ証明書】自作WebDAVサーバーにWindows7で接続する【Windows7】
【WebDAV】VPSをミュージックストリーミングサーバーにする【Subsonic】
【MyCloud】さくらVPSをAirVideoサーバーにする【ストリーミング】
権限をrootに変更
【セキュリティ】sshでのrootログインを禁止する【乗っ取り対策】
での設定によりsshでのrootログインを禁止したので、スーパーユーザー(root)に権限を昇格させる。[kuzunoha(ユーザー名)@ ~]$ su エンターキー
rootバスワードを入力する。
[root@ kuzunoha]#
になればrootに変更された。
カレントディレクトリに移動。
[root@ kuzunoha]# cd エンターキー
カレントディレクトリに移動し、rootでログインした時と同じ
[root@ ~]#
になる。
Apacheの設定
直接URL指定でalbumsディレクトリの内容が表示されないように、ディレクトリの不可視化をする。
ついでにApacheのバージョン表示もしないよう変更。
httpd.confの編集
httpd.confを開く。
[root@ ~]# vi /etc/httpd/conf/httpd.conf エンターキー
44行目の
ServerTokens OS
を
ServerTokens Prod
に変更。
331行目の
Options Indexes FollowSymLinks
のIndexesを削除し、
Options FollowSymLinks
にする。
338行目の AllowOverrideをNoneからAllへ変更。
AllowOverride All
554行目の
Options Indexes MultiViews FollowSymLinks
のIndexesを削除し、
Options MultiViews FollowSymLinks
に変更する。
行数がわかりにくければ、コマンドモードの状態で:set number
と入力すると、左側に行数が表示される。
変更したら:wqで保存して終了する。
PHPのインストールと編集
PHPのインストール
PHPをインストールする。
[root@ ~]# yum -y install php-devel php-mbstring php-mysql php-gd php-mcrypt php-pear エンターキー
PHPがインストールされた。
php.iniの編集
phpの設定ファイルを編集する。
[root@ ~]# vi /etc/php.ini エンターキー
229行目の
short_open_tag = off
を
short_open_tag = on
に変更する。
入力が終わったら:wqで保存して終了。
Apache(httpd)の再起動
httpd.confの変更とphpをhttpdに適用させるため、Apacheを再起動する。
[root@ ~]# /etc/rc.d/init.d/httpd restart エンターキー
これでhttpd.confの変更とPHPはhttpdに適用された。
MySQLのインストールとデータベースの作成
MySQLのインストール
[root@ ~]# yum -y install mysql-server エンターキー
[root@ ~]# mysql_install_db エンターキー
MySQLはインストールされた。
MySQLの起動
MySQLを起動する。
[root@ ~]# /etc/rc.d/init.d/mysqld start エンターキー
これでMySQLが起動した。
MySQLのパスワードを設定
MySQLを起動する。
[root@ ~]# mysqladmin -u root password 任意のパスワード エンターキー
MySQLにパスワードが設定された。
MySQLにログイン
MySQLにログインする。
[root@ ~]# mysql -u root -p エンターキー
パスワードを求められるので、先程設定したSQLパスワードを入力する。
コマンドラインが
mysql>
になり、MySQLにログイン状態になった。
データベースの作成
Gallery3で使うデータベースを作成する。
mysql> create database gallery3; エンターキー
Gallery3データベースは作成された。
mysql> quit エンターキー
でMySQLを終了する。
MySQLの自動起動設定
再起動時にMySQLが再起動するように設定する。
[root@ ~]# chkconfig mysqld on エンターキー
これで再起動時も自動起動するように設定された。
Gallery3のダウンロードと設置
Gallery3のダウンロード
Gallery3をダウンロードする。
[root@ ~]# wget “http://jaist.dl.sourceforge.net/project/gallery/gallery3/3.0.3/gallery-3.0.3.zip” エンターキー
gallery-3.0.3.zipはダウンロードされた。
unzip gallery-3.0.3.zipを展開
ダウンロードされたgallery-3.0.3.zipを展開する。
[root@ ~]# unzip gallery-3.0.3.zip エンターキー
Gallery3は展開された。
Gallery3ディレクトリの所有権を変更
Gallery3の所有権をrootからApacheへ変更する。
[root@ ~]# chown -R apache.apache gallery3 エンターキー
所有権が変更された。
Gallery3ディレクトリを移動
ブラウザでアクセスできるようにディレクトリを移動する。
[root@ ~]# mv gallery3 /var/www/html/gallery3 エンターキー
ディレクトリgallery3が/var/www/html/に移動した。
画像への直リンクを禁止(2012/07/17追記)
このままだと画像の直リンクをブラウザに入力されるとパスワードをスルーして画像にアクセスされるようになるため、直リンクを禁止する。
[root@ ~]# vim /var/www/html/gallery3/.htaccess エンターキー
一番下の行に下記を追記する。
ーーーここからーーー
<Files ~ “\.(gif|png|jpg|mov|mp4)$”> SetEnvIf Referer “^https://mydomain\.com” ShowOK SetEnvIf Referer “^$” ShowOK order deny,allow deny from all allow from env=ShowOK </Files>
ーーーここまでーーー
mydomainとcomの部分は自分のドメイン名に書き換えること。
:wqで終了。
これでVPSでの設定は終了した。
Gallery3のインストール
インストールと初期設定
インストールはブラウザ上で行う。
ブラウザで
https://VPSホスト名/gallery3
にアクセスする。
インストーラが立ち上がるので、Passwordの欄に先程決めたMySQLのパスワードを入力し、Continueをクリック。
VPSの設定がうまく行っていればSuccess!の表示とともにインストールは終了する。
Start using Galleryをクリック。
adminパスワードが表示されているが、すぐ変えるのでメモらなくていい。
Change password and email nowをクリック。
新しいユーザーネームとパスワードを入力し、Modify userをクリック。
初期設定は終了し、ギャラリーの画面になる。
日本語化
上のタブのadmin→Settings→Languagesをクリックする。
日本語化するために、日本語にチェックを付け、English(US)のチェックを消し、Update languagesをタップ。
これで日本語化が完了した。
アプリでGallery3にアクセス可にする
Gallery3をアプリでで使えるように設定する。
モジュールをクリック。
REST APIにチェックを付け、更新をクリック。
これでアプリからのアクセスが可能になった。
Gallery3の更新
画面上のUpgrade now!をクリック。
すべてアップグレードをタップ。
アップグレードが終了するので、Galleryに戻る。
閲覧の制限
今アップロードすると、インターネットに写真を大公開してしまうので、限定公開に変更する。
の戻るをクリックして初期画面にもどり、アルバムオプションの権限を編集をクリック。
Everybodyになっている部分をすべて赤(禁止)に変更する。
これでブラウザでの設定は終了。
写真のアップロードは追加→写真の追加からできる。
iPhone(iPad)から接続する
ブラウザからでも閲覧可能だが、せっかくなのでviGalleryをインストールする。
viGallery
カテゴリ: 写真/ビデオ
価格: ¥350
アプリを起動し、add Galleryをタップ。
Url:に
と入力。
ユーザー名とパスワードは初期設定で決めたものを入力し、addをタップ。
Display Nameの入力は任意。
変更したかったら入力しよう。
これで設定は完了した。
画像のアップロードや閲覧が可能になる。
編集終了
25日0:05にアップロードしたものはHTTPでの通信のためセキュリティがダメダメだったが、SSLでの通信のみになるよう全て編集した。
これで実用に耐えうるものになったとおもう。
こりゃ使えるわ。
【Android】docomoがスマホ向けメーラーCommuniCaseを発表【MMS(笑)】
Gallery3のインストーラが立ち上がらない\(^o^)/オワタ
ブラウザが真っ白なまま。
なぜだ(;´Д`)?
気を取り直してブログを書こう(-_-;)
docomoがSPモードの障害を反省し、MMSに対応!
するのかと思いきや、メーラー作ってた。
何やってんだよ・・・。
【WebDAV】i文庫S、i文庫HDで本を共有する【栞は無理】
iPhoneとiPadで本を共有するための設定。
i文庫SでWebDAVが登録できないというコメントがあったので、一応作ってみました。
※記事を読む前に
VPSサーバーを借り、下記の設定が終了してあることを前提にしています。
【オレオレ証明書】自作WebDAVサーバーにWindows7で接続する【Windows7】
i文庫S、HDともに設定は同じだが・・・
注意したいのは、iPhoneはi文庫Sの他にi文庫というソフトがある。
これは旧式でWebDAVには接続できない。
なぜ旧式を未だにリリースしているのか理解に苦しむ。
値段も同じ350円なのに機能はSの方が上なので存在意義がないはずなのに。
間違って買ってしまう人もいると思うのだが。
元々のi文庫を捨て、i文庫Sをリリースして元々のi文庫ユーザーを怒らせた挙句にi文庫のリリースを取り下げない。
このソフト自体は非常に優れているが、作者のモラルはちょっとアレな気がする。
i文庫S
カテゴリ: ブック
価格: ¥350
i文庫HD
カテゴリ: ブック
価格: ¥800
設定方法
フォルダをタップし、+をタップ。
WebDAVをタップ。
WebDAV名を入力。
これはなんでも良いが、今回はWebDAVという名前にしている。
新しく出来たWebDAVをタップ。
自分のWebDAVアカウントを入力。
同期もオンにしておこう。
これでログイン出来た。
本を読みこめば終了。
iPadも設定方法は同じ。
栞の共有は無理
さすがに栞までは共有できない。
ホントはストリーミングで見られると一番いいんだけどね。
いちいちダウンロードするのがちょっと鬱陶しいかな。
でも便利なソフトです。
AirVideoMacクライアントをダウンロードしてみた。
そういえば、AirVideoって、MacやPC版のクライアントってないのかな?
あれば便利なのに。
と思ってググったらすぐに見つかった。
いちいち端末にダウンロードしなくていいのが便利でいいね。
※関連記事
【MyCloud】さくらVPSをAirVideoサーバーにする【ストリーミング】
Win版、Mac版両方あったが・・・
Win版はクライアントの他に必要なライブラリが必要なのが面倒だね。
Mac版はダウンロードしただけで使える。
普通に使える
当たり前だが、普通に動画を閲覧可能。
Playを押すと別画面で動画が立ち上がり、ウィンドウまたは全画面表示で動画が見られる。
こいつは便利だ。
Win版は知らん。
やっぱり欲しいと思ったものは誰かが作ってるものだねぇ。
クライアントさえあればいい
データは全部サーバー上にあるから、それを出力するクライアントプログラムさえあれば自分の環境を呼び出せる。
これこそクライアント・サーバー方式。
更に上はシンクライアントなんだが、これは動画再生などマルチメディアには向かないので企業向け。
サーバーでの一元管理を徹底すれば、PCの買い替え時も煩わしいデータ移行をする必要がない。
あれ?子のデータって何処だっけ?っていうのは時間の無駄。
command+F(WinだとCtrl+F)でサーバー上を検索して見つける!
コレ最強。
普段からファイル名に自分で法則を決めながら付けると更に探しやすい。
データの一元管理思想にどっぷり使っているうp主でした。
【セキュリティ】sshでのrootログインを禁止する【乗っ取り対策】
ファイアウォールも設定し、VPSサーバーもなかなか堅牢になってきた。
ただし、自分が遠隔でログイン出来るということは、パスワードさえわかれば誰でもログイン出来てしまうということなんだよね。
しかも、rootを開放していれば、ユーザー名がrootとわかっているんだから、パスワードさえ解析すればログインで来てしまう。
これはあまりいい状態とは言えない。
なので、別ユーザーを作り、そのユーザーでログインしてからrootになるように変更する。
そうすると、ユーザー名もわからないとログイン出来ないし、そのユーザー名がルートになれるかどうかもわからないから、ハッキングする側にとってはかなりハッキングがしにくくなる。
※注意 今回の設定は下記の記事の設定を終了したものとして書いています。
【さくら】VPSサーバーのパフォーマンスを向上させる。【DTI】
【Gmail】CentOS6.x(64bit)でimotenを設定して@docomo.ne.jpメールを使う【主にさくらインターネット編】
【iPhone】imotenの送信メールをSSL化する【docomoメール】
【オレオレ証明書】自作WebDAVサーバーにWindows7で接続する【Windows7】
【WebDAV】VPSをミュージックストリーミングサーバーにする【Subsonic】
【MyCloud】さくらVPSをAirVideoサーバーにする【ストリーミング】
【セキュリティ】さくらVPSにファイアウォールを適用する。【iptables】
ユーザーの作成とパスワードの設定
まず、ログインユーザーを作成する。
[root@ ~]# useradd nao(作成するユーザー名)
これでユーザー kuzunoha が作成された。
作りたいユーザー名で作成しよう。 新しく作ったユーザーにパスワードを設定する。
[root@ ~]# passwd nao(パスワードを設定するユーザー名)
ユーザー kuzunoha のパスワードを変更。
新しいパスワード: と出てくるので、パスワードを入力。
なるべく長いものが望ましい。 新しいパスワードを再入力してください: と出てくるので、もう1度入力する。 passwd: 全ての認証トークンが正しく更新できました。 と出れば正しく設定された。
ユーザーがrootになれるように設定する
ユーザーをwheelグループに追加
新しく作ったユーザーをwheelグループに追加し、root権限を取得できるようにする。
[root@ ~]# usermod -G wheel nao(wheelグループに追加するユーザー名)
ユーザーnaoはwheelグループに追加された。
rootになれるグループをwheelのみに設定
su(スーパーユーザー)の設定を変更する。
[root@ ~]# visudo
テキストが開くが、126行目(下から14行目)の
# %wheel ALL=(ALL) ALL
の#を消し、>
%wheel ALL=(ALL) ALL
にし、:wqで保存する。
wheelグループのみをスーパーユーザー(root)になれるよう設定
[root@ ~]# vi /etc/pam.d/su
開いたテキストの、
#auth include system-auth
の#を消し、
auth include system-auth
にする。
#%PAM-1.0
auth sufficient pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth sufficient pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
auth required pam_wheel.so use_uid
#auth include system-auth ←ここの#を消す
account sufficient pam_succeed_if.so uid = 0 use_uid quiet
account include system-auth
password include system-auth
session include system-auth
session optional pam_xauth.so
:wqで終了。
新しく作ったユーザーでログインしてみよう
実際作ったユーザーでログインする。 rootではなく、ユーザー名でログインし、ログイン出来るか確認しよう。
ログイン出来れば
[nao(ユーザー名)@ ~]$
と、別アカウントでログインされる。
スーパーユーザー(root)になってみよう
一般ユーザーをrootへ昇格させる。
[nao@ ~]$ su
rootのパスワードが求められるので、rootのパスワードを入力。
[root@ nao]#
これでrootになった。
rootログインの停止
一般ユーザーからログイン→root化が確認できた所で、sshでのrootログインを停止する。 sshdの設定ファイルを編集する。
[root@ ~]# vi /etc/ssh/sshd_config
42行目にある、
PermitRootLogin yes
を
PermitRootLogin no
に変更する。
sshdを再起動する
変更を適用するため、再起動する。
[root@ ~]# service sshd restart
sshd を停止中: [ OK ]
sshd を起動中: [ OK ]
これで変更は適用された。
sshからrootでログインしてみよう
パスワードが求められ、あれっ?って思うが、何度入力してもログインできないはずだ。
これで設定は完了。 これからは、一般ユーザーでログイン後、root化するように変更された。
rootになるにはログインするたびにsuをしなければならないが、セキュリティアップのため我慢。
インターネット上にあるサーバーであることを忘れずに
VPSは非常に自由で便利である反面、常に誰かに狙われているということも忘れずに。
機密データなどは絶対にローカルに保存し、インターネットに上げてはならない。 便利さは危険さを伴う。
面倒でも大事なデータは手元に保存すること。
【セキュリティ】さくらVPSにファイアウォールを適用する。【iptables】
VPSにデータを突っ込んで楽しく使えるようになったけど、自由な分、すべての管理を自分でやらなきゃいけない。
セキュリティを高く保ち、乗っ取りを防ぐのはユーザーの大切な義務。
必ず適用してセキュリティを高く保つ努力をしよう。
※注意
今回の設定は下記の記事の設定を終了したものとして書いています。
特にSSHの設定ポートの変更はセキュリティ上大変重要なので、必ず行っておいてください。
imotenを使っている人は送信メールのSSL化を必ず終わらせてください。
【さくら】VPSサーバーのパフォーマンスを向上させる。【DTI】
【Gmail】CentOS6.x(64bit)でimotenを設定して@docomo.ne.jpメールを使う【主にさくらインターネット編】
【iPhone】imotenの送信メールをSSL化する【docomoメール】
【オレオレ証明書】自作WebDAVサーバーにWindows7で接続する【Windows7】
【WebDAV】VPSをミュージックストリーミングサーバーにする【Subsonic】
【MyCloud】さくらVPSをAirVideoサーバーにする【ストリーミング】
iptables(ファイアウォール)の設定
さくらのVPSにはiptablesがすでにインストールしてあり、自動起動もするのだが、設定は何もされていない。
全くの無意味な存在。
なのでパケットフィルタリングの設定をする必要がある。
iptablesの編集
[root@ ~]# vi /etc/sysconfig/iptables エンターキー
何も書いていないまっさらなファイルが開くので、下記をコピペする。
—ここから—
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:FIREWALL – [0:0]
-A INPUT -j FIREWALL
-A FORWARD -j FIREWALL
-A FIREWALL -i lo -j ACCEPT
-A FIREWALL -s 10.0.0.0/8 -j DROP
-A FIREWALL -s 172.16.0.0/12 -j DROP
-A FIREWALL -s 192.168.0.0/16 -j DROP
-A FIREWALL -d 255.255.255.255 -j DROP
-A FIREWALL -d 224.0.0.1 -j DROP
-A FIREWALL -p icmp –icmp-type echo-request -m limit –limit 1/s –limit-burst 4 -j ACCEPT
-A FIREWALL -p udp –sport 53 -j ACCEPT
-A FIREWALL -p icmp –icmp-type any -j ACCEPT
-A FIREWALL -p 50 -j ACCEPT
-A FIREWALL -p 51 -j ACCEPT
-A FIREWALL -p udp –dport 5353 -d 224.0.0.251 -j ACCEPT
-A FIREWALL -p udp -m udp –dport 631 -j ACCEPT
-A FIREWALL -p tcp -m tcp –dport 631 -j ACCEPT
-A FIREWALL -m state –state ESTABLISHED,RELATED -j ACCEPT
# HTTPS 443, mail 465, SSH 10022, Subsonic 4040, AirVideo 45631
-A FIREWALL -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT
-A FIREWALL -m state –state NEW -m tcp -p tcp –dport 465 -j ACCEPT
-A FIREWALL -m state –state NEW -m tcp -p tcp –dport 10022 -j ACCEPT
-A FIREWALL -m state –state NEW -m tcp -p tcp –dport 4040 -j ACCEPT
-A FIREWALL -m state –state NEW -m tcp -p tcp –dport 45631 -j ACCEPT
-A FIREWALL -j REJECT –reject-with icmp-host-prohibited
COMMIT
—ここまで—
このコピペだとSSHのポートは10022に変更してあるが、別の番号にしているのならその番号を記入すること。
ここを間違うと遠隔ログインができなくなって泣きを見る。
SSHの設定ポートの変更の記事は10022にしてあるから10022にしてある。
SubSonicのデフォルトポートが8080、AirVideoが45631なので、そのまま記述している。
変えているのならそこも変更。
Webサーバーにもしていないので、80番も閉じている。
穴は少ないほうがいい。
WebDAVは443、メールは465のSSLポートを介して使う。
もし送信メールのSSL化なんてイラネって人は、
-A FIREWALL -m state –state NEW -m tcp -p tcp –dport 587 -j ACCEPT
を#HTTPS 443〜の下の行に足そう。
コピペをするときに注意したいのは、コードに無駄なスペースがあってはならない。
COMMIT以降には改行もあってはならない。
これだけは注意すること!
無駄なスペースや改行があるとエラーが出て起動しない。
iptablesの再起動
[root@ ~]# /etc/rc.d/init.d/iptables restart エンターキー
でiptablesをリスタートする。
iptables: ファイアウォールルールを消去中: [ OK ]
iptables: チェインをポリシー ACCEPT へ設定中filter [ OK ]
iptables: モジュールを取り外し中: [ OK ]
iptables: ファイアウォールルールを適用中: [ OK ]
と出れば成功。
[root@ ~]# iptables -L エンターキー
を行い、ずらっと文字列が出てくれば起動している。
実は結構攻撃されているVPS
sshを22番のままにしておくと、自動攻撃ツールが22番にビシバシ攻撃してきている。
パスワードを解析されると乗っ取られてしまうので、可及的速やかにポートだけでも変更しよう。