超下書き記事。時間があったら清書します。
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を実行すればリモートリポジトリが更新される。