2015年12月27日日曜日

iOS最強のRSSリーダー

随分前からRSSリーダーを使っており、中でもbylineは記事をキャッシュでき、尚且つ動作が軽快で使いやすかったため重宝していたのだが、iOS9からはやたらとクラッシュして使えなくなってしまった。しかも更新もされない。
と思っていたら、ここに来て新しいアプリとして復活!!
Phantom Fish「Byline 5」
https://appsto.re/jp/Gaiz4.i
初版リリースということもあり、動作がやや不安定だが嘗てのUIに改良を加えての復活。
以前はできなかったフィードの追加もできるようになっている。
RSSを使う人は是非オススメです。

2015年12月11日金曜日

HPMicroserver Freebsdインストール

超下書き記事。時間があったら清書します。

FreeBSDをインストールした後Mountrootで止まる場合
? Enterでデバイス名を確認し、
utf:/dev/da0p2/を入力する。これで出来なかった場合は、出てきたデバイス名を順番に入力していけばいつか起動するものに当たる。
起動した後は、viでetc/fstabを編集し、Rootを上記の者に、SWAPも適宜変更する。

# dmesg
ずらずらメッセージが流れて一番最後に今接続したデバイスの情報が記載されている。
USBメディアは「da*」というデバイス名になっているので、「*」の部分の数字を確認する。
ここでは「da0」とする。

UFSフォーマットする。
# newfs /dev/da0

マウントする。
# mount /dev/da0 /mnt

複数デバイスをマウントする場合はマウント場所を別途作る。
# mkdir /mnt/ufs
# mount /dev/da0 /mnt/ufs

ZFSを再起動後も自動でマウントするには/etc/rc.confに
zfs_enable="YES"を 記載する必要がある。

echo 'zfs_enable="YES"'>> /etc/periodic.conf
[rc.conf]の初期設定(オリジナル)ファイルは[/etc/defaults/rc.conf]に存在。

ZFSの設定はここ参照
http://ik-fib.com/2014/02/freebsd10-install/
OS再インストール後のZFSストレージのインポートは下記の通り
zpool import←インポートされてないZFSストレージのリストアップ
   pool: zpool0
     id: 4383566041817703211
  state: ONLINE
 action: The pool can be imported using its name or numeric identifier.
 config:

        zpool0      ONLINE
          raidz2-0  ONLINE
            ada1    ONLINE
            ada2    ONLINE
            ada3    ONLINE
            ada4    ONLINE
            ada5    ONLINE
            ada6    ONLINE
            ada7    ONLINE
# zpool import zpool0←上記例だとzpool0をマウント。
マウントポイントは以前マウントしていた場所で設定される。



Sambaの設定はこれを参照(初回は新規作成)
/usr/local/etc/smb4.conf

[global]
workgroup = WORKGROUP
server string = hoge
security = user
hosts allow = 192.168.
netbios name = hogehoge
map to guest = Bad User
load printers = no
log file = /var/log/samba4/log.%m
max log size = 50
dns proxy = no
printing = bsd
#↓Apacheからも見えるように
create mask = 760
directory mask = 770
#↓シンボリックリンク対応にしたかったけど下記設定でもできなかった。いつか調べる
wide links = yes
unix extensions = no
follow symlinks = yes

[share]
path = /home/share
browseable = yes
writable = yes
guest only = yes
guest ok = yes

[user1]
path = /home/user1
browseable = no
writable = yes
valid users = user1

設定をしたらsambaで扱うフォルダのパーミッションを設定
chmod 777 sambaのフォルダ
↑777じゃないと認証が必要な場合は通らない

FreeBSDにユーザー追加
adduser

ユーザー認証(FreeBSD上のアカウントをSambaで使えるようにする)
pdbedit -a -u john

sambaを設定したら再起動を行う
/usr/local/etc/rc.d/samba_server restart


apache24をインストールし、Webdavをオンにする。
フォルダをsambaからもWebdavからもApacheからも見えるようにするには、パーミッションの設定が必須。
sambaから書き込まれるファイルやフォルダはデフォルトだとnobody:wwwになっているため、Apacheから読み書きできない。その為、/usr/local/etc/smb4.confを編集し、
force create mode = 760
force directory mode = 770
などの設定が必要となる。

http://www.ne.jp/asahi/hishidama/home/tech/unix/samba.html
参照

apacheのhttpd.confの場所
/usr/local/etc/apache24/httpd.conf

Apacheをリバースプロキシにして特定のURLをLAN内の別のサーバーに転送する場合
/usr/local/etc/apache24/httpd.confで、
ProxyPass /hoge2/ http://192.168.x.xx/
ProxyPassReverse /hoge2/ http://192.168.x.xx/


設定を変えたら再読み込み
/usr/local/etc/rc.d/apache24 reload

SSL化
大体
http://www.lifewithunix.jp/notes/2015/09/28/how-to-install-https-apache24-on-freebsd10-2/
ここに書いてあるとおりにする

SSLに必要な署名ファイルたちは
http://www.kyoji-kuzunoha.com/2013/08/startssl-certificate.html
ここのように設定する

注意すべき点は/extra/http-ssl.conf のVirtualhostの中のポート番号をSSLのポートに設定するのと、DocumentRootのパスを公開するディレクトリに設定しないとSSLアクセス出来ない。
また、証明書と秘密鍵のペアが違うとSyntax OKとは出るが、サーバーは起動しない。


インストールされている package のアップグレード
# pkg upgrade

インストールされている package の検証(セキュリティ)
# pkg audit -F

2. FreeBSD入れて最初にすること
2.2. ユーザのシェル基本設定
# vi ~/.cshrc
setenv  LANG ja_JP.UTF-8
set prompt = "%n@%m %c# "

2.5. portsnap
/etc/portsnap.confにて、不要なportsを切ってから開始すべき。組み込みルータにおける多言語、audio、multimedia、games等。

初回
# portsnap fetch extract

2度め以降
# portsnap fetch update


ZFSのエラー通知

ZFSには標準でチェック用のperiodic scriptが含まれており、それを有効にするだけで毎日チェック→通知をしてくれるそうです。
スクリプト本体の場所は、/etc/periodic/daily/404.status-zfs です。

そして毎日実行を有効にするために以下のコマンドで設定ファイルに記載します。

echo 'daily_status_zfs_enable="YES"'>> /etc/periodic.conf


sSMTP,root宛メールの転送設定
sendmailを設定しようと思いましたが、root宛のメールを転送したいだけだったので、送信だけのsSMTPを試してみました。
sendmailの停止設定

まだ特にsendmailの設定はしていないので起動することはないと思いますが、sSMTPはsendmailの代行として動く点も多いので、競合しないよう念のため止めて起きます。

echo 'sendmail_enable="NO"'>>/etc/rc.conf
echo 'sendmail_submit_enable="NO"'>>/etc/rc.conf
echo 'sendmail_outbound_enable="NO"'>>/etc/rc.conf
echo 'sendmail_msp_queue_enable="NO"'>>/etc/rc.conf

ssmtpをインストール
# cd /usr/ports/mail/ssmtp
# make install clean
# make replace

最後のmake replaceで/etc/mail/mailer.confを修正して、sendmailからssmtpに置き換えを行ってくれるようです。
ssmtpの設定

ssmtp自体の設定とroot当てのメールをgmailに転送する設定を行います。
– /usr/local/etc/ssmtp/ssmtp.conf

root=youremail@gmail.com
mailhub=smtp.gmail.com:587
AuthUser=youremail@gmail.com
AuthPass=yourpassword
UseSTARTTLS=YES

このとき、googleの二段階認証を使っている場合、AuthPassにはログインパスワードではなく、googleアカウントのセキュリティページで発行できる「アプリケーション固有のパスワード」を設定する必要があります。
mail送信のテスト

以下のコマンドで適当なメールを送って正しく送信できるかを確認します。

$ mail -v root
Subject: <件名>
適当な本文
適当な本文
(Ctrl+Dで終了を入力)

pkg updateでリモートリポジトリを更新したあとにpkg upgradeと実行することで、インストールしたソフトウェアをまとめてアップグレードできる。pkg updateでは先に/usr/local/sbin/pkgをアップグレードするように求められることがある。その場合、/usr/local/sbin/pkgをアップグレードした後で、もう一度pkg updateを実行すればリモートリポジトリが更新される。