Oracle VM VirtualBox をインストールしてみた(過去ログ再掲)

MBRクラッシュの前に、ワードでバックアップしていたログを見つけたので再掲です。


CentOS7 のお勉強もまあ、多少はね。Oracle VM VirtualBox ダウンロード ↓

http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html?ssSourceSiteId=otnjp

VirtualBOX 最新版は、4.3.26 (2015年5月13日現在)のインストール画面。

virtualbox01

ネットワークアダプタに [VirtualBox Host-Only Network ] を加えますかと聞かれている。ここは [Yes] で。

virtualbox02

[Install] をクリック、インストールしますか、インストールしちゃいましょうよ。

virtualbox03

[VirtualBox] 起動画面で[新規]ボタンを押して、メモリサイズを入力、ここは1024MBと入力、[次へ] 。

virtualbox16

[仮想マシンの作成] [仮想ハードドライブを作成する] にチェックして [作成]

virtualbox17

テキストボックス[名前] 欄には、[centos] (何でも構いません) [タイプ] 欄には [Linux] [バーション] 欄には、[Red Hat (64 Bit) ] を入力選択する。

virtualbox04CentOS7-x86_64-*.iso は最小構成、Fullバージョンなどお好きなものをダウンロードして、どうぞ。

http://ftp.riken.jp/Linux/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1503-01.iso

http://ftp.riken.jp/Linux/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1503-01.iso

 

あらかじめWindows7などで焼いた、OSイメージ DVD をドライブに挿入して、左ペインの[ストレージ]タブをクリック、

virtualbox05

[コントローラ IDE] [空] をクリック、右の [CD/DVD] ドライブの [IDE セカンダリマスタ] 横のメディアアイコンをクリック、ドライブのOSイメージを選択します。

ア、ちょっと待てぃ!左ペインの [ネットワーク] タブをクリック、[アダプター2]タブをクリックして、[VirtualBox Host-Only Network] を選択、[OK] ボタンを押して 設定完了です。

virtualbox06

お待たせ。

virtualbox07

バッファオーバーフロー防御設定でハマった・・・orz。

Linux には、バッファオーバーフロー攻撃を防御するため、exec-shield 設定が設けられています。

  1. マークされたバイナリを有効にし、以外は無効
  2. マークされたバイナリを無効にし、以外は有効
  3. 常に有効

デフォルトの設定値を確認すると CentOS では、1になっています。

# cat /proc/sys/kernel/exec-shield
1

この設定値を、2 (有効) にするには、echo コマンドで

# echo 2 > /proc/sys/kernel/exec-shield

とします。

またこの設定を永続的にするには、

vi /etc/sysctl.conf
[最下行に以下を追記]
kernel.exec-shield = 2

・修正後

# sysctl -p

とします。しかしこの設定は、以下のリンクにもある通り kernel パニックになり最悪、システムが起動しなくなる恐れがあります。

http://ja.528p.com/linux/centos/B007-security_tips.html

実際、当方の環境で上記設定を施したところ、certmonger サービス起動不能となりフリーズしました。試みに、grub 画面からシングルユーザーモードで起動、

startx

コマンドを打つと、/bin/dbus-daemon: failed: Permission denied となりXウィンドウが起動しませんでした。grub の kernel オプションで、[ exec-shield=0 を与えると良い ] とあるのでその通りにやってみましたが、キーレイアウトが違うのか、オプションを読み込んでいない感じでした。

バックアップの HDD に換装してシステム復旧したのですが、どうしても諦められません。

もう一度、HDD を元に戻してシングルユーザーモードから、

vi /etc/sysctl.conf
[以下設定を削除]
kernel.exec-shield = 2
# sysctl -p
# chkconfig certmonger off
# reboot

と、叩いたところ無事起動しました。ついでに、SELinux のリラベルも行われて postfix も自動起動してくれるようになりました。めでたし、めでたし。

何故かPostfixでメール送信できない・・・orz。

たぶん、

  1. レジストラのSMTPサーバにパスワード蹴られてる。
  2. BindでDNS設定してないでしょ!って怒られてる。
  3. Postfix のパスワード暗号化ができてない。

だと思うんですけど。「Thunderbirds are go !」はダメみたいですね。

認証サーバーを起動する

# yum install cyrus-sasl-plain
# service saslauthd start
# chkconfig saslauthd on

認証を暗号化する

# yum install cyrus-sasl-md5
# vi /etc/sasl2/smtpd.conf
mech_list: plain login cram-md5 digest-md5 [追記]

SMTP認証用のユーザーとパスワードを設定する

# saslpasswd2 -c -u centos.forceofwill.jp gusachan
password:   [パスワード入力]
Again (for verification)    [確認用パスワード]

パスワードファイルのアクセス権を変更する

# chgrp postfix /etc/sasldb2
# service postfix reload

postfix check で main.cf の文法チェックは OK なんすよねぇ。

はぇ~デフォルトの main.cf からの変更を結果表示するコマンドもあるんですね。

# postconf -n

http://linux.kororo.jp/cont/server/postfix.php

inet_interfaces = all
inet_protocols = ipv4
home_mailbox = Maildir/
mail_owner = postfix
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mydomain = forceofwill.jp
myhostname = centos.forceofwill.jp
mynetworks = 192.168.24.0/24, 127.0.0.0/8
mynetworks_style = subnet
myorigin = $mydomain
relayhost = [smtp.secureserver.net]

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
disable_vrfy_command = yes
html_directory = no
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
message_size_limit = 10485760
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.6.6
sample_directory = /etc/postfix

[以下追記]
smtp_sasl_mechanism_filter = plain
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions =
         permit_sasl_authenticated,
         permit_mynetworks,
         reject_unauth_destination
smtpd_sasl_local_domain = $myhostname
unknown_local_recipient_reject_code = 550

もう、ふて寝してやる。悲しいなぁ~。

非対応リムーバブルディスクをWindows 7のライブラリに追加する方法

EPSONノートではHDD容量が128GBと少ないので、CDから取り込んだ .wma 楽曲ファイルが15GBもありディスクを圧迫しかねません。近頃のタブレットPC やiPhone では容量不足でSDカードを増設しているよという方もいらっしゃるかもしれません。

Windows7 の MediaPlayer でライブラリとして追加する方法がありましたのでご紹介します。

非対応リムーバブルディスクをWindows 7のライブラリに追加する方法

http://www.lifehacker.jp/2011/05/110407win7_removabledrive.html

これで、ミュージックライブラリの [対象フォルダ] としてSD カードにマウントした [ミュージック] フォルダを選択することが出来ました。私は、マイミュージックもすべてSD カードに移しました。

musicLibrary

あと、 Windows MediaPlayer の[ツール] → [オプション] → [音楽の取り込み] → [取り込んだ音楽を保存する場所] をSD カードにマウントした [ミュージック] フォルダに設定するのも忘れずに。

ホームディレクトリの公開

CentOS6 では、SELinux によりホームディレクトリの公開は制限されていました。apache にアクセス許可させる場合は、SELinux = Permissive にするように、一時避難的に下記の設定が必要でした。

[root@centos ~]# setenforce 0

試みに、httpd_enable_homedirs の論理パラメータを、getsebool コマンドを使って確認すると、

[root@centos ~]# getsebool httpd_enable_homedirs
httpd_enable_homedirs --> off

アクセス禁止になっています。設定を on に変更するには、setsebool コマンドで

# setsebool httpd_enable_homedirs on

にする必要があります。しかし、この設定はシステムを再起動すると元に戻ってしまいます。永続的に設定するには、-P オプションを指定します。

# setsebool -P httpd_enable_homedirs on

SELinux のお勉強もまあ、多少はね。

Linux サーバーセキュリティ 徹底入門 / 中島能和

51jemnVucZL__AA324_PIkin4,BottomRight,-33,22_AA346_SH20_OU09_

近頃、お気に入りの曲

Linux サーバーに興味が沸いたきっかけは、ひかりTV の海外ドラマ「パーソン・オブ・インタレスト」(2015年6月現在シーズン4終了)  (2015年6月現在シーズン4吹き替え版再放送)でした。

現代のサイバーテロ、監視社会といったテーマを1時間に収めたサスペンスドラマで、1シーズン22話の連続放送を見てこれは!と思いました。

そんな放送の合間に、配信会社AXN お薦めの曲として紹介していたのが「Take Me Home」でした。(AXN tune もサイト終了してしまって寂しいです。)

シーズン5 の配信が待ち遠しいですね。

CG-WLR300NX

以前、安かったので何かのついでに Amazon.co.jp で入手していた CG-WLR300NX のマニュアルを確認。

http://corega.jp/prod/wlr300nx/pdf/wlr300nx_detail_a.pdf

すでに運用している、CG-WLR300NM のダブルチャンネル、マルチAP 機能も実装して遜色ないようです。

20150610201814

スマホやDSなどのゲーム端末を Wi-Fi でお手軽にネットワーク接続したいときになにげに便利ですね。

/home/*/public_html/ 設定

Apache でユーザーディレクトリごとにwordpress 公開する設定で迷ったのでめも。

参考 Apache/一般ユーザーの$HOME/public_htmlを公開する設定方法

Apache のhttpd.conf の、公開したいユーザーディレクトリを UserDir enabled gusachan と追記

#UserDir Public_html コメントを外す

UserDir disabled
UserDir enabled gusachan
UserDir public_html

/home/*/public_html/ 設定は、デフォルトでOK。しかし、Index.html ファイルがない場合、ディレクトリ一覧を表示する Indexes オプションは – を付けて表示しない設定にしたほうが良いかもです。

<Directory /home/*/public_html>
 AllowOverride FileInfo AuthConfig Limit
 Options MultiViews -Indexes SymLinksIfOwnerMatch IncludesNoExec
 <Limit GET POST OPTIONS>
 Order allow,deny
 Allow from all
 </Limit>
 <LimitExcept GET POST OPTIONS>
 Order deny,allow
 Deny from all
 </LimitExcept>
 </Directory>

ユーザーディレクトリのパーミッションは以下。

[root@centos home]# chmod o+x gusachan

[public_html] ディレクトリ以下に、wordpress/ フォルダをインストールする。所有権を apache グループの apache ユーザーに。

[root@centos public_html]# chown -R apache:apache wordpress/

これで、アドレス http://ホストネーム/~gusachan/wordpress/ でアクセスできました。