sshd
の設定(その1)
とりあえずポートを変えてルートで入れなくする。 (秘密鍵でしか入れなくするのは終わってから)
/etc/ssh/sshd_config
で、以下の行を編集、もしくはコメントアウトを外す。
ポート番号は適当な値を入れる。
Port 12345 PermitRootLogin no PermitEmptyPasswords no
sshd
を再起動。
# service ssh restart
これ以降はsshでパスワードログインしてから作業する。
sshd
の設定(その2)
ssh-keygen -t rsa -b 2048 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
~/.ssh/id_rsa
(秘密鍵)は何らかの手段で手元に持ってくる。
次に、/etc/ssh/sshd_config
の以下の行を編集・コメントアウトを外す。
PasswordAuthentication no ChallengeResponseAuthentication no
sshd
の再起動
sudo service restart sshd
秘密鍵でログインできるかためす。
もろもろアップデート
# env ASSUME_ALWAYS_YES=YES pkg bootstrap # pkg update # pkg upgrade # freebsd-update fetch install
あると便利なものをインストール
sudo
# pkg install sudo # sudovi
sudoers
の以下の行のコメントアウトを外す。
%wheel ALL=(ALL) ALL
以下の行を追記。 タイムアウトを10分に伸ばしておく。
Defaults timestamp_timeout = 10
tmux
sudo pkg install tmux
zsh
ログインシェルをzsh
にする。
はじめにzshを起動するといろいろ聞かれていろいろ設定がつくられる。
sudo pkg install zsh chsh -s /usr/local/bin/zsh zsh
pf
の設定
/etc/rc.conf
に以下を追記
pf_enable="YES"
~/pf.conf.tmp
を以下の内容で作成する。
# const if = vtnet0 ssh = 12345 dns = 53 http = 80 https = 443 ntp = 123 # default block in all block out log all # ssh pass in on $if inet proto tcp from any to $if port $ssh flags S/SA keep state # dns pass out on $if proto udp from any to any port $dns # http, https pass out on $if proto tcp from any to any port {$http, $https} # ntp pass out on $if proto udp from any port $ntp to any port $ntp
# チェック pfctl -nf ~/pf.conf.tmp # 問題なければこれを設定ファイルとして使い、pfを有効に cp ~/pf.conf.tmp /etc/pf.conf sudo service pf start
もし追記するときは以下の手順で。
cp /etc/pf.conf pf.conf.tmp sudo vi pf.conf.tmp pfctl -nf pf.conf.tmp sudo cp pf.conf.tmp /etc/pf.conf sudo service pf reload
再起動
sudo reboot