FreeBSD を新規インストールした後にやるべき 10 のこと
このチュートリアルでは、 新しくインストールしたFreeBSD オペレーティング システムで実行する必要がある初期設定と、コマンド ラインから FreeBSD を管理する方法の基本について説明します。
要件
- FreeBSD 11.1 インストールガイド
1. FreeBSD システムをアップデートする
オペレーティング システムを新規インストールした後、すべてのシステム管理者が最初に実行する必要があるのは、最新のセキュリティ パッチとカーネル、パッケージ マネージャー、およびソフトウェア パッケージの最新バージョンでシステムが最新であることを確認することです。
FreeBSD を更新するには、root 権限でシステムのコンソールを開き、次のコマンドを実行します。
freebsd-update fetch
freebsd-update install
「ポート 」パッケージ マネージャーとインストールされているソフトウェアを更新するには、以下のコマンドを実行します。
pkg update
pkg upgrade
2. エディターと Bash をインストールする
コマンドラインからシステムを管理する作業を容易にするために、次のパッケージをインストールする必要があります。
- Nano テキスト エディタ – ee は FreeBSD のデフォルトのテキスト エディタです。
- Bourne Again シェル – Linux から FreeBSD への移行をよりスムーズにしたい場合。
- Bash 補完 –
[tab]
キーを使用してコンソールに入力されたコマンドを自動補完するために必要です。
提示されたすべてのユーティリティは、以下のコマンドを発行してインストールできます。
pkg install nano bash bash-completion
3. FreeBSD での安全な SSH
デフォルトでは、FreeBSD SSH サービスはroot アカウントによるリモート ログインの自動実行を許可しません。 SSH 経由のリモート root ログインを禁止する措置は、主にサービスとシステムを保護するために設計されていますが、場合によっては、root による SSH 経由の認証が必要になる場合があります。
この動作を変更するには、以下のスクリーンショットに示すように、SSH メイン設定ファイルを開き、PermitRootLogin 行を no
から yes
に更新します。
nano /etc/ssh/sshd_config
ファイルの抜粋:
PermitRootLogin yes
その後、SSH デーモンを再起動して変更を適用します。
service sshd restart
構成をテストするには、次の構文を使用して、Putty ターミナルまたはリモート Linux マシニングからログインできます。
[email [FreeBSD Server IP]
4. FreeBSD SSH パスワードなしログイン
新しい SSH キーを生成するには、次のコマンドを発行します。パブリックを別のサーバー インスタンスにコピーし、パスワードなしでリモート サーバーに安全にログインできます。
ssh-keygen –t RSA
ssh-copy-id -i /root/.ssh/id_rsa.pub [email
ssh [email
5. FreeBSD に Sudo をインストールして設定する
Sudo は、一般ユーザーがスーパーユーザー アカウントのセキュリティ権限でコマンドを実行できるように設計されたソフトウェアです。 Sudo ユーティリティは、FreeBSD にはデフォルトではインストールされません。
FreeBSD に sudo をインストールするには、次のコマンドを実行します。
pkg install sudo
通常のシステム アカウントが root 権限でコマンドを実行できるようにするには、/usr/local/etc/ ディレクトリにある sudoers 設定ファイルを開いて、visudo を実行して編集します。指示。
ファイルのコンテンツ内を移動し、通常はルート行の後に次の行を追加します。
your_user ALL=(ALL) ALL
sudoers ファイルを編集するには、必ず visudo コマンドを使用してください。 Visudo ユーティリティには、このファイルの編集中にエラーを検出する機能が組み込まれています。
その後、キーボードの :wq!
を押してファイルを保存し、root 権限を付与したユーザーでログインし、コマンドの前に sudo を追加して任意のコマンドを実行します。
su - yoursuer
sudo pkg update
通常のアカウントに root 権限を与えるために使用できるもう 1 つの方法は、wheel というシステム グループに通常のユーザーを追加し、 を削除して sudoers ファイルから Wheel グループのコメントを解除することです。 #
記号は行の先頭にあります。
pw groupmod wheel -M your_user
visudo
次の行を /usr/local/etc/sudoers ファイルに追加します。
%wheel ALL=(ALL=ALL) ALL
6. FreeBSD でのユーザーの管理
新しいユーザーを追加するプロセスは非常に簡単です。 adduser コマンドを実行し、対話型プロンプトに従ってプロセスを完了するだけです。
ユーザー アカウントの個人情報を変更するには、ユーザー名に対してchpass コマンドを実行し、ファイルを更新します。 :wq!
キーを押して、vi エディターで開いたファイルを保存します。
chpass your_user
ユーザーのパスワードを更新するには、passwd コマンドを実行します。
passwd your_user
アカウントのデフォルトのシェルを変更するには、まずシステム内に存在するシェルをすべてリストし、次に示すようにchsh コマンドを実行します。
cat /etc/shells
chsh -s /bin/csh your_user
env #List user environment variables
7. FreeBSD 静的 IP の構成
通常の FreeBSD 永続的なネットワーク設定は、/etc/rc.conf ファイルを編集することで操作できます。 FreeBSD 上で静的 IP アドレスを使用してネットワーク インターフェイスを設定するには。
まず ifconfig -a コマンドを実行してすべての NIC のリストを表示し、編集するインターフェイスの名前を特定します。
次に、/etc/rc.conf ファイルを手動で編集し、DHCP 行をコメント化し、以下に示すように NIC の IP 設定を追加します。
#ifconfig_em0="DHCP"
ifconfig_em0="inet 192.168.1.100 netmask 255.255.255.0"
#Default Gateway
defaultrouter="192.168.1.1"
新しいネットワーク設定を適用するには、次のコマンドを発行します。
service netif restart
service routing restart
8. FreeBSD DNS ネットワークの構成
DNS ネームサーバー リゾルバーは、以下の例に示すように /etc/resolv.conf ファイルを編集することで操作できます。
nameserver your_first_DNS_server_IP
nameserver your_second_DNS_server_IP
search your_local_domain
マシン名を変更するには、/etc/rc.conf ファイルからホスト名変数を更新します。
hostname=”freebsdhost”
FreeBSD でネットワーク インターフェイスに複数の IP アドレスを追加するには、/etc/rc.conf ファイルに以下の行を追加します。
ifconfig_em0_alias0="192.168.1.5 netmask 255.255.255.255"
その後、ネットワーク サービスを再起動して変更を反映します。
service netif restart
9. FreeBSD サービスの管理
FreeBSD では service コマンドを使用してサービスを管理できます。システム全体で有効なサービスをすべてリストするには、次のコマンドを発行します。
service -e
/etc/rc.d/ システム パスにあるすべてのサービス スクリプトを一覧表示するには、以下のコマンドを実行します。
service -l
ブート初期化プロセス中に FreeBSD デーモンを有効または無効にするには、sysrc コマンドを使用します。 SSH サービスを有効にする場合は、/etc/rc.conf ファイルを開き、次の行を追加します。
sshd_enable=”YES”
または、同じことを行う sysrc コマンドを使用します。
sysrc sshd_enable=”YES”
システム全体でサービスを無効にするには、以下に示すように、無効になったデーモンに NO
フラグを追加します。デーモンのフラグでは大文字と小文字が区別されません。
sysrc apache24_enable=no
FreeBSD 上の一部のサービスには特別な注意が必要であることに注意してください。たとえば、Syslog デーモン ネットワーク ソケットのみを無効にする場合は、次のコマンドを実行します。
sysrc syslogd_flags="-ss"
Syslog サービスを再起動して、変更を適用します。
service syslogd restart
システム起動時にSendmail サービスを完全に無効にするには、次のコマンドを実行するか、/etc/rc.conf ファイルに追加します。
sysrc sendmail_enable="NO"
sysrc sendmail_submint_enable="NO"
sysrc sendmail_outbound_enable="NO"
sysrc sendmail_msp_queue_enable="NO"
10. ネットワークソケットの一覧表示
FreeBSD で開いているポートのリストを表示するには、sockstat コマンドを使用します。
FreeBSD 上のすべての IPv4 ネットワーク ソケットをリストします。
sockstat -4
FreeBSD 上のすべての IPv6 ネットワーク ソケットを表示します。
sockstat -6
以下のスクリーンショットに示すように、2 つのフラグを組み合わせてすべてのネットワーク ソケットを表示できます。
sockstat -4 -6
FreeBSD 上で接続されているすべてのソケットをリストします。
sockstat -c
リスニング状態のすべてのネットワーク ソケットと Unix ドメイン ソケットを表示します。
sockstat -l
sockstat ユーティリティ以外にも、netstat または lsof コマンドを実行してシステム ソケットやネットワーク ソケットを表示することもできます。
lsof ユーティリティはデフォルトでは FreeBSD にインストールされません。 FreeBSD ポート リポジトリからインストールするには、次のコマンドを発行します。
pkg install lsof
lsof コマンドを使用してすべての IPv4 および IPv6 ネットワーク ソケットを表示するには、次のフラグを追加します。
lsof -i4 -i6
netstat ユーティリティを使用して FreeBSD 上でリスニング状態にあるすべてのネットワーク ソケットを表示するには、次のコマンドを発行します。
netstat -an |egrep 'Proto|LISTEN'
または、リスニング状態で開かれているソケットの名前を表示するには、-n
フラグを指定せずにコマンドを実行します。
netstat -a |egrep 'Proto|LISTEN'
これらは、FreeBSD システムを日常的に管理するために知っておく必要がある基本的なユーティリティとコマンドのほんの一部です。