WindowsからNASへ巨大ファイル転送時にエラーが出る場合、Windows(クライアント)側のレジストリを編集することで対策できる。
regeditで
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters\
を開き、Parametersフォルダで右クリックし、新規→DWORD (32 ビット) 値で、「SessTimeout」という項目を作り、値を10進数で600以上にする。
これで転送中のタイムアウトエラーがなくなる。
参考:
WindowsからNASへファイル転送時エラー「アクセス中に問題が発生しました」の解決方法
LTFS-LE クライアントの構成
2017年8月10日木曜日
2016年5月19日木曜日
Microserver FreeBSD10.3でNASとWebサーバーを構築する3 samba設定編
OSインストール、ZFSストレージ設定まで終わったら、今度はsambaを設定し、NASとして使えるようにする。
まずはsambaインストールから。
samba4.3.8が出ているのでこれをインストール
初回はsambaの設定ファイルを作成。
設定が終わったらsambaをrc.dに登録し、起動できるようにする。
なお、上記の[user1]のような設定をした場合は、user1の名前でFreeBSD上にアカウントを作り、sambaにも登録する必要がある。また、Windowsからアクセスする場合、このユーザー名とパスワードはWindowsのものと同一である必要がある。
FreeBSDにユーザー追加
ユーザー認証(FreeBSD上のアカウントをSambaで使えるようにする)
この時、Windowsのユーザー名とそのパスワードも一致させる必要がある。
その上で、sambaで使うフォルダの所有者とパーミッションを設定する必要がある。
引用・参照
FreeBSD 10 + samba 4で、Windowsからeveryoneアクセス可能な共有フォルダを作成
http://symfoware.blog68.fc2.com/blog-entry-1423.html
まずはsambaインストールから。
# pkg search samba p5-Samba-LDAP-0.05_2 Manage a Samba PDC with an LDAP Backend p5-Samba-SIDhelper-0.0.0_3 Create SIDs based on G/UIDs samba-nsupdate-9.8.6_1 nsupdate utility with GSS-TSIG support samba-virusfilter-0.1.3_1 On-access anti-virus filter for Samba samba36-3.6.25_3 Free SMB and CIFS client and server for Unix samba36-libsmbclient-3.6.25_2 Shared lib from the samba package samba36-nmblookup-3.6.25 NetBIOS Name lookup tool samba36-smbclient-3.6.25 Samba "ftp-like" client samba41-4.1.22_2 Free SMB/CIFS and AD/DC server and client for Unix samba42-4.2.11 Free SMB/CIFS and AD/DC server and client for Unix samba43-4.3.8 Free SMB/CIFS and AD/DC server and client for Unix
samba4.3.8が出ているのでこれをインストール
# pkg install samba43
初回はsambaの設定ファイルを作成。
# vi /usr/local/etc/smb4.conf [global]←samba全体設定 workgroup = WORKGROUP server string = FreeBSD security = user hosts allow = 192.168.←同一LANからのアクセスのみ許可 netbios name = hogehoge←他のPCから見られるサーバー名 map to guest = Bad User load printers = no log file = /var/log/samba4/log.%m max log size = 50 dns proxy = no printing = bsd create mask = 760 directory mask = 770 wide links = yes unix extensions = no follow symlinks = yes [share]←個別設定。ここではゲストアクセス可、読み書きOK設定 path = /tank/homeserver/test1 browseable = yes writable = yes guest only = yes guest ok = yes [user1]←個別設定例2。特定ユーザーのみアクセス可、サーバーを参照してもパスを直接打たないかぎり表示もされない設定 path = /tank/homeserver/user1 browseable = no←ここでパス直打ち以外の表示を拒否 writable = yes←ユーザーは書き込み可能 valid users = user1←ここで指定したユーザーのみアクセス可
設定が終わったらsambaをrc.dに登録し、起動できるようにする。
# echo 'samba_server_enable="YES"'>> /etc/rc.conf # /usr/local/etc/rc.d/samba_server restart
なお、上記の[user1]のような設定をした場合は、user1の名前でFreeBSD上にアカウントを作り、sambaにも登録する必要がある。また、Windowsからアクセスする場合、このユーザー名とパスワードはWindowsのものと同一である必要がある。
FreeBSDにユーザー追加
# adduser
ユーザー認証(FreeBSD上のアカウントをSambaで使えるようにする)
# pdbedit -a -u user1
この時、Windowsのユーザー名とそのパスワードも一致させる必要がある。
その上で、sambaで使うフォルダの所有者とパーミッションを設定する必要がある。
# chown -R user1 /tank/homeserver/user1 # chmod -R 770 /tank/homeserver/user1以上で、Windowsから、\\hogehoge\user1とアクセスした際に、アクセスできるようになっているはずである。
引用・参照
FreeBSD 10 + samba 4で、Windowsからeveryoneアクセス可能な共有フォルダを作成
http://symfoware.blog68.fc2.com/blog-entry-1423.html
Microserver FreeBSD10.3でNASとWebサーバーを構築する2 ZFSストレージ設定編
せっかくFreeBSDで運用するので、売りであるZFSを使う。いくつかモードが有るのだが、HDD4台で運用する場合、冗長性と容量を確保できるRaidz1を用いた。
といっても一つの記事にする必要もないぐらい簡単で、下記コマンドで作成できる。
なお、OSを再インストールした場合、ZFSを再びマウントするには、
zpool importで、マウントされてないがインポート可能なZFSストレージのリストアップを行い、
zpool import プール名でマウントする。マウントポイントは以前の場所となる。この場合で言う/tank/にマウントされる。
マウントされたことはzfs listやzpool listで確認できる。
参考・引用
CentOS 7 + ZFS でファイルサーバを作成
http://lazy-dog.hatenablog.com/entry/2014/08/17/033038
ZFSを使いたかったので、FreeBSD 10.0をインストールしてNAS構築
http://ik-fib.com/2014/02/freebsd10-install/
Oracle Solaris 11 ZFSを使ってみよう(構築・運用ガイド)
https://www.fujitsu.com/jp/documents/products/computing/servers/unix/sparc/technical/document/01_ZFS.pdf
といっても一つの記事にする必要もないぐらい簡単で、下記コマンドで作成できる。
zpool create -m {マウント先} {プール名} {RAID レベル} {デバイス 1} {デバイス 2} ...
zpool create -m /tank/ tank raidz1 ada1 ada2 ada3
以上で/tank/にマウントされるRaidz1ストレージができる。なお、OSを再インストールした場合、ZFSを再びマウントするには、
# zpool import
pool: zpool0
id: 4383566041817703211
state: ONLINE
action: The pool can be imported using its name or numeric identifier.
config:
zpool0 ONLINE
raidz1-0 ONLINE
ada1 ONLINE
ada2 ONLINE
ada3 ONLINE
# zpool import zpool0
# zfs list
NAME USED AVAIL REFER MOUNTPOINT
zpool0 47.3M 12.5T 368K /zpool0
zpool0/gzip 4.78M 12.5T 4.78M /zpool0/gzip
zpool0/gzip-9 4.76M 12.5T 4.76M /zpool0/gzip-9
zpool0/lz4 6.13M 12.5T 6.13M /zpool0/lz4
zpool0/main 15.8M 12.5T 15.8M /zpool0/main
zpool0/zle 13.9M 12.5T 13.9M /zpool0/zle
# zpool list
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
zpool0 19T 71.8M 19.0T 0% 1.00x ONLINE -
↑解説zpool importで、マウントされてないがインポート可能なZFSストレージのリストアップを行い、
zpool import プール名でマウントする。マウントポイントは以前の場所となる。この場合で言う/tank/にマウントされる。
マウントされたことはzfs listやzpool listで確認できる。
参考・引用
CentOS 7 + ZFS でファイルサーバを作成
http://lazy-dog.hatenablog.com/entry/2014/08/17/033038
ZFSを使いたかったので、FreeBSD 10.0をインストールしてNAS構築
http://ik-fib.com/2014/02/freebsd10-install/
Oracle Solaris 11 ZFSを使ってみよう(構築・運用ガイド)
https://www.fujitsu.com/jp/documents/products/computing/servers/unix/sparc/technical/document/01_ZFS.pdf
Microserver FreeBSD10.3でNASとWebサーバーを構築する1 OSインストール編
この記事は、主にHP Microserverで、できるだけ簡単にFreeBSDを用いてNASとWebサーバー構築し、実用的に運用することを目的としている。以下の様な作りを目指す。
HP MicroserverでUSBメモリ2つあるいは3つをOS用にし、ストレージ用にHDD4台で運用。
USBメモリは安いが耐久性が弱いことが多いので、RaidZ-Mirrerを使い冗長性を確保。
ストレージHDDは容量と冗長性を確保するためRaid-Z1で運用。
Portは入れず、Packageだけで管理する。(ゼロデイ攻撃に弱くなるが、運用は簡単になる)
NASアクセス時、日本語ファイルを文字化けさせない
特にPortを入れないあたり、セキュリティに関して万全とはいえないので、自己責任で行うこと。
ただ、Packageでも実用上十分な堅牢性や機能性は確保できるのではないかと思う。
なお、前提知識としてある程度のネットワークやUNIXコマンドの知識のほか、viエディタを使えることが必要である。(多分この記事を読みながら調べれば済むはず)
ド素人では難しいが、PC中級者以上ならばできるのではないかと思う。
OSインストール
USBメモリを用いてインストールする。OS領域にUSBメモリを2つ使う場合、インストール先USB2つと、それとは別にインストール用USBが必要。
下記サイトより自分のマシンに合ったイメージをダウンロードし、インストール用USBにイメージを書き込む。大抵の場合はamd64-memstick.imgを選択すれば問題ない。
https://www.freebsd.org/ja/where.html
イメージのUSBへの書き込みはWin32DiskImagerを使う。
下記サイトからダウンロードする。
https://osdn.jp/projects/sfnet_win32diskimager/
USBに書き込んだら、インストール用USB、インストール先USBを刺してPCを起動。

このままEnterを押す。

Installを選択してEnter

YesでEnter

自分の使っているキーボードを選択してEner。(jp.106.kbd keymapを選択すればたいてい問題ない)
その後Continue with~(自分の選択したキーマップ)でEnter

ここでホスト名を入れる。今回は自宅サーバー用にドメインを取得していたのでそれを入力した。特にない場合は空欄でOKでも平気だったはず。

ここはlib32だけを選択した状態でEnter。選択はスペースキーで行う。不要なgames等はチェックを外す。(上記画面とは違うことに注意)
今回は、手軽に運用することを目的とするので、ソースからビルドするPorts treeはチェックを外した。 必要なソフトはパッケージで入手することになる。

インストール先のパーティション設定。今回はUSBを複数用いてZFSのMirrorモードを使うので、ZFSを選択しEnter

Pool Type/Disks:を選択しEnter
Mirrorを選択しEnter

インストール先のストレージを選択しEnter
これで 再びこの画面に戻り、Installを押すとインストールが開始されるはずなのだが、私の場合途中でエラーが出てしまった。どうやらPool Nameがzrootのままでは勧めないとの事だったので、適当な名前zroot1等にしてインストールしたらうまく行った。

しばらくこのような画面が続く。しばらく待機。

この画面まで来たら、rootのパスワードを設定。打ち間違えないように確認のパスワードもタイプする。

ネットワークカードを選択しEnter

IPv4で運用する場合Yes。大抵の場合はまだIPv4なのでOKを押す。

DHCPサーバーから適当なIPアドレスを割り当てる場合はYesを。特定のIPアドレスを使う場合はNOを選択し、次に進む

前画面でNOを選択した場合はここでIPアドレスを設定。

IPv6を使う場合はYesを、渡しの場合はまだ使わないのでNOを選択した。

DNSの設定。iSearchは自分のドメイン名を入力。なければ空欄でもいいかも。
IPv6はNoを押した場合、画像のようなIPv6DNSは表示されずIPv4DNSの設定だけになる。一つは設定が必要。大抵の場合DNSはルータのアドレスを入れればよい。

時刻の設定。大抵の場合NOを押す。

タイムゾーンの設定。自分が住んでいる国(AsiaのJapanese)を選択。

有効にするサービスの設定。sshdとpowerdはチェックを入れておく。10.3ではこの他にcrashdにデフォルトでチェックが入っていたのでそのまま有効にした。
ユーザーの追加でEnter

ユーザー名だけ任意の名前で入れたら、あとはEnterのまますすめる。途中、パスワードを撃ちこむだけそこは任意の文字列を入力。あとは何も考えずにそのままEnter
利用するユーザーの登録が終わったらnoを入力しEnter。

このままセットアップを完了してよければExitを選択しEnter

追加の設定をするか聞かれるが、特に必要なければNoを選んでEnter
再起動時するので、電源が切れた段階でインストール用USBを外す。
ここまで行けば、あとはリモートから管理できる・・・とおもいきや、次の設定を行うまでリモートからsuコマンドが使えず管理者コマンドが使用できないので、再起動したらrootでログインして次の設定を行う。 自分のユーザー名がhogeの場合
# vi /etc/group (変更前) wheel:*:0:root (変更後) wheel:*:0:root,hoge
これで変更を保存し終了すればリモート管理ができる。お疲れ様でした。
2024年4月18日追記
固定IPアドレスの設定
(現在のネットワーク設定とネットワークカード名の確認)
# ifconfig (設定ファイルの編集) # vi /etc/rc.conf (変更後) # 固定 IPv4 アドレスとサブネットマスク
ifconfig_em0="inet 10.0.0.30/24"
#ネットワークサービス再起動
# service netif restart
SSHDのポート変更
# vi /etc/ssh/sshd_config
(変更前) #Port 22 (変更後) Port 30022
(SSHD再起動)
# service sshd restart
参考(画像引用)
FreeBSD のインストール
https://www.freebsd.org/doc/ja_JP.eucJP/books/handbook/bsdinstall.html
メモ: FreeBSDでsuを使うにはユーザをwheelグループに所属させる
http://d.hatena.ne.jp/torazuka/20110505/wheel
初期設定 : ネットワークの設定
https://www.server-world.info/query?os=FreeBSD_14&p=initial_conf&f=3
FreeBSD: sshdの設定変更
https://www.zabutone.com/freebsd-sshd-configuration/
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ストレージのインポートは下記の通り
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を実行すればリモートリポジトリが更新される。
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を実行すればリモートリポジトリが更新される。
2015年11月25日水曜日
Samba、Webdav、Apacheの文字化けを解消する方法(FreeBSD10.2)
HPMicroserverが以前格安で手に入ったのでFreeBSDでサーバー構築したが、同じフォルダに対してSambaとWebdavアクセスを併用し、クライアントにWindows、Mac、iOS、Linuxが混在すると、どうしても文字化けする。それを解決する方法を紹介する。ちなみに、私の環境はFreeBSD 10.2である。
方法:
Sambaで文字コードを指定しないこと
その上で、Apacheの設定ファイルhttpd.confの<Directory "/hoge">にIndexOptions Charset=UTF-8を追記すること。
たったこれだけ。
これだけで、文字化けから解消される。
また、PuttyからSSHでログインする際は、ウィンドウ→変換のリモートの文字セットをUTF-8にしておく。
一応、私が使用している設定を一部載せておく。
Sambaの設定はこれを参照
/usr/local/etc/smb4.conf
[global]
workgroup = WORKGROUP
server string = FreeBSD
security = user
hosts allow = 192.168.
netbios name = hoge
map to guest = Bad User
load printers = no
log file = /var/log/samba4/log.%m
max log size = 50
dns proxy = no
max protocol = SMB2
printing = bsd
↑ここにcharsetのオプションを記載しない
[hogehoge]
path = /home/hogehoge
browseable = yes
writable = yes
guest only = yes
guest ok = yes
force create mode = 760
force directory mode = 770
Sambaでアクセスするフォルダ(hoge)はパーミッションを770もしくは777にする。Sambaでユーザー認証を用いる場合は777にしないと動作しなかった。
ただし、管理人自身FreeBSDに精通しているとは言い難いので、ほかにも必要な設定があったのかもしれない。 (うちではとりあえずこれで動きました)
やっていることは全てUTF-8に統一しているだけなので、CharsetにUTF-8を全てのクライアントOS用に記載してもよいのかもしれない。
時間があればMicroserverでFreeBSD+ZFSでサーバー構築する方法を書こうと思います。
一時期格安で販売されていたので、意外と宝の持ち腐れになっている人もいるのではないかと思う。FreeNASではできることが制限されるし。
方法:
Sambaで文字コードを指定しないこと
その上で、Apacheの設定ファイルhttpd.confの<Directory "/hoge">にIndexOptions Charset=UTF-8を追記すること。
たったこれだけ。
これだけで、文字化けから解消される。
また、PuttyからSSHでログインする際は、ウィンドウ→変換のリモートの文字セットをUTF-8にしておく。
一応、私が使用している設定を一部載せておく。
Sambaの設定はこれを参照
/usr/local/etc/smb4.conf
[global]
workgroup = WORKGROUP
server string = FreeBSD
security = user
hosts allow = 192.168.
netbios name = hoge
map to guest = Bad User
load printers = no
log file = /var/log/samba4/log.%m
max log size = 50
dns proxy = no
max protocol = SMB2
printing = bsd
↑ここにcharsetのオプションを記載しない
[hogehoge]
path = /home/hogehoge
browseable = yes
writable = yes
guest only = yes
guest ok = yes
force create mode = 760
force directory mode = 770
Sambaでアクセスするフォルダ(hoge)はパーミッションを770もしくは777にする。Sambaでユーザー認証を用いる場合は777にしないと動作しなかった。
ただし、管理人自身FreeBSDに精通しているとは言い難いので、ほかにも必要な設定があったのかもしれない。 (うちではとりあえずこれで動きました)
やっていることは全てUTF-8に統一しているだけなので、CharsetにUTF-8を全てのクライアントOS用に記載してもよいのかもしれない。
時間があればMicroserverでFreeBSD+ZFSでサーバー構築する方法を書こうと思います。
一時期格安で販売されていたので、意外と宝の持ち腐れになっている人もいるのではないかと思う。FreeNASではできることが制限されるし。
2014年9月15日月曜日
センチュリーのシンプルNAS BOXをiOSからも便利に使う
シンプルNAS BOX PLUS+ CSS35NASPが格安NASとして売られているが、メディアサーバーとして中々便利に使える。
これとRaspbmcをインストールしたRaspberry Piを組み合わせると、テレビからもメディアサーバーのファイルが見られて便利。
ただ、iOS用のNAS標準クライアントアプリが非常につかいづらい。
単にWebDAVでアクセスするだけなので、WebDAV Navigatorというアプリで繋ぐと良い。無料のWebDAVクライアントでは、これが一番使いやすいと思った。
https://itunes.apple.com/jp/app/webdav-navigator/id382551345?mt=8
追記:
iOS8系だと音がイヤフォンからしか出ない模様。7.12なら問題なく動作。
iOSといいWindowsといい8系は糞。
これとRaspbmcをインストールしたRaspberry Piを組み合わせると、テレビからもメディアサーバーのファイルが見られて便利。
ただ、iOS用のNAS標準クライアントアプリが非常につかいづらい。
単にWebDAVでアクセスするだけなので、WebDAV Navigatorというアプリで繋ぐと良い。無料のWebDAVクライアントでは、これが一番使いやすいと思った。
https://itunes.apple.com/jp/app/webdav-navigator/id382551345?mt=8
追記:
iOS8系だと音がイヤフォンからしか出ない模様。7.12なら問題なく動作。
登録:
投稿 (Atom)