トップ 新規 編集 差分 一覧 ソース 検索 ヘルプ RSS ログイン

FreeBSDTips

インストール後の設定

[FreeBSD]

カーネルレベルを設定

  • /etc/rc.conf
kern_securelevel="1"
kern_securelevel_enable="YES"

もしくは/etc/sysctl.conf

kern.securelevel=1

テンポラリをnodevとnosuidに

  • /etc/fstab
/tmpをrw,nodev,nosuid

toorアカウントを無効化

vipwでtoorを#でコメントアウト
  • /etc/rc.conf
syslogd_flags="-ss -v"
portmap_enable="NO"
inetd_enable="NO"
log_in_vain="YES"

時刻合わせ

  • /etc/ntp.conf
server ntp.ring.gr.jp maxpoll 15 prefer
server ntp2.jst.mfeed.ad.jp maxpoll 17
server ntp1.sakura.ad.jp maxpoll 17
pidfile         /var/run/ntpd.pid 
driftfile       /var/db/ntp.drift
logfile /var/log/ntp.log
logconfig       -syncstatus
restrict default ignore
restrict 127.0.0.1
restrict 192.168.0.0 mask 255.255.0.0 nopeer nomodify notrap notrust
restrict 210.173.160.27 nomodify notrap noquery
restrict 210.173.160.57 nomodify notrap noquery
restrict 210.173.160.87 nomodify notrap noquery
  • /etc/rc.conf
xntpd_enable="YES"
xntpd_program="/usr/sbin/ntpd"
xntpd_flags="-p /var/run/ntpd.pid -c /etc/ntp.conf"
ntpdate_enable="YES"
ntpdate_program="/usr/sbin/ntpdate"
ntpdate_flags="-sbv 210.173.160.57" #ntp2.jst.mfeed.ad.jp

起動時にpppやmpdが接続されていないとntpdateに失敗するので、LAN内にntpdをたててそこを指定するほうが良い。

clockspeedの場合

sntpclock 203.139.30.195 | clockview
sntpclock 203.139.30.195 | clockadd

crontabを許可するユーザーを指定

  • /var/cron/allow

直接端末を操作するときにrootパスワードを要求するように

  • /etc/ttys
console none                            unknown off insecure
    • もしくはsysutils/comconsoleをmake installする。

コマンド実行履歴を取る

touch /var/account/acct
accton /var/account/acct

もしくは/etc/rc.confに

accounting_enable="YES"

Ctrl-Alt-Delを無効

  • カーネル設定ファイル
options         SC_DISABLE_REBOOT

quotaの有効化

  • カーネル設定ファイル
options         QUOTA
  • /etc/rc.conf
enable_quotas="YES"
check_quotas="YES"

ホームディレクトリのパーミッションを変更

chmod 0750 /root

プロセスの隠ぺい

  • /etc/sysctl.conf
kern.ps_showallprocs=0

portsを最新に

    • tar.gzで一気に置き換える
cd /usr
mkdir /tmp/distfiles
mv /usr/ports/distfiles/* /tmp/distfiles/
fetch ftp://ftp.jp.FreeBSD.org/pub/FreeBSD/FreeBSD-current/ports.tar.gz
rm -rf /usr/ports
tar zxf /usr/ports.tar.gz
rm /usr/ports.tar.gz
mv /tmp/distfiles/* /usr/ports/distfiles/
    • cvsupで更新する
      • cvsupをインストールする

packageのほうがお勧め。

pkg_add -r cvsup-without-gui-16.1h

あとでportsからcvsup-without-guiを入れてもかまわない

cd /usr/ports/net/cvsup-without-gui
make install clean
      • supfileの準備
cd /usr
mkdir sup
cp /usr/share/examples/cvsup/*-supfile /usr/sup/*
      • 近所のcvsupサーバーのhostを

http://www.jp.freebsd.org/mirror.html#cvsupから探す。

      • sysutils/fastest_cvsupを使うとpingの値が低いサーバーをリストアップしてくれる
      • 野良cvsupサーバー

cvsup-mirrorを使うと野良cvsupサーバーが立てられるので、ホストが多い場合は有効

  1. http://www.allbsd.org/#pub-cvsup
  2. http://www.tierra.ne.jp/~yamayasu/diary/?date=20060324#p04

にある。

      • サーバー用途ならSTABLEではなくRELEASEを使った方が無難。standard-supfileを使う。 *default tag=RELENG_4_10に書き換えるのを忘れずに
*default   host=cvsup3.jp.FreeBSD.org # 
*default   base=/usr
*default   prefix=/usr
*default   release=cvs
*default   tag=RELENG_4_10  # 4.10-RELEASE
*default   delete use-rel-suffix
#*default   compress
src-all
      • ports-supfileのhostを修正する
*default   host=cvsup3.jp.FreeBSD.org # 
*default   base=/usr
*default   prefix=/usr
*default   release=cvs
*default   tag=.  # current ports
*default   delete use-rel-suffix
#*default   compress
ports-all
      • /usr/sup/refuseに除外するものを書く。#によるコメントアウトは使えないので注意
ports/games
ports/chinese
ports/french
ports/german
ports/hebrew
ports/hungarian
ports/korean
ports/portuguese
ports/russian
ports/ukrainian
ports/vietnamese
src/games
doc/de
doc/de_*
doc/el
doc/el_*
doc/es
doc/es_*
doc/fr
doc/fr_*
doc/it
doc/it_*
doc/nl
doc/nl_*
doc/no
doc/no_*
doc/pt
doc/pt_*
doc/pl
doc/pl_*
doc/ru
doc/ru_*
doc/sr
doc/sr_*
doc/zh
doc/zh_*
    • cvsupで更新する
cvsup -g -L 2 /usr/sup/stable-supfile
cvsup -g -L 2 /usr/sup/ports-supfile
    • /etc/make.confで更新する。(/usr/srcや/usr/portsでmake updateするとcvsup)
      • /etc/defaults/make.conf から該当する個所をコピーしてくると楽。

 portupgrade

    • portsをcvsupで最新にしてから、portupgradeをインストール
cd /usr/ports/sysutils/portupgrade
make install clean
  • /usr/local/etc/pkgtools.conf で各種portsのコンパイルoption(KNOB)を管理できる
MAKE_ARGS = {
	'japanese/samba' => '-DWITH_RECYCLE -DWITHOUT_CUPS -DWITH_MSDFS -DBATCH',
	'net/djbdns' => '-DWITH_IPV6 -DFORCE_PACKAGE',
	'net/net-snmp' => '-DBATCH' ,
	'net/zebra' => '-DBATCH' ,
	'print/ghostscript-gnu' => '-DBATCH -DWITHOUT_X11',
	'shells/scponly' => '-DWITH_SCPONLY_RSYNC -DWITH_SCPONLY_WINSCP',
	'www/apache2' => '-DWITH_SUEXEC',
}

ただしportinstallやportupgradeを使う時だけ反映される。手動makeのときは/etc/make.conf?

  • portsデータベースを更新
portsdb -uU
    • portupgrade -avFCRでインストールされているportsをコンパイルし直す。
CPUTYPE=i686
CFLAGS= -O -pipe
COPTFLAGS= -O -pipe
#WITH_IPV6=yes
#WITH_APACHE2=yes
      • SUPの項目を設定しておけばcd /usr/src; make updateでcvsup出来る。

coreファイルを所定の場所に吐かせる

  • /tmp/coreを作り、stickyを立てておく。
mkdir -p /tmp/core
chown root:wheel /tmp/core
chmod 1777 /tmp/core
sysctl -w kern.corefile="/tmp/core/%N.%P.%U.core"

もしくは/etc/sysctl.confに

kern.corefile="/tmp/core/%N.%P.%U.core"

Proxy越しのcvsup

  • proxy hostでcvsupして、/usr/srcをexportsするのがスマート?
  • IPが届く端末でcvsup-mirrorをインストールして、各端末はここからcvsupするとトラフィックが減る
setenv SOCKS5_SERVER server:port
    • man cvsupを参考に
runsocks cvsup -P m -g -L 2 /usr/locale/etc/cvsup/sup/stable-supfile @M3novm

カーネルチューン

  • /usr/src/sys/i386/conf/LINTを参考にカーネル再構築

# options NMBCLUSTERS=8192

options CPU_ENABLE_SSE
  • soft updatesの有効化(4.5R以前)
    • mount状況に応じて。シングルユーザーモードで。
tunefs -n enable /usr
tunefs -n enable /var
  • /etc/sysctl.conf
kern.ps_showallprocs=0
net.inet.tcp.inflight_enable=1

以下は基本的には必要なし。

#vfs.vmiodirenable=1
kern.maxfiles=65536
#net.inet.tcp.delayed_ack=0 #Q&A 1582,1926
net.inet.ip.portrange.last=30000
kern.ipc.somaxconn=8192
kern.ipc.maxsockbuf=1048576
net.inet.tcp.rfc1323=1
net.inet.tcp.sendspace=65536
net.inet.tcp.recvspace=65536
net.inet.udp.recvspace=166400
net.inet.udp.maxdgram=36864
net.local.stream.sendspace=65536
net.local.stream.recvspace=65536
  • /boot/loader.conf
hw.ata.tags=1
autoboot_delay="1"
#kern.ipc.nmbclusters=4096

make world

UPS

misc

最終更新時間:2008年11月28日 08時42分11秒