概要
OpenSSHは,暗号や認証の技術を使って遠隔地のコンピュータと安全に通信するためのソフトウェアです。システムの開発/運用もクラウド上で行うことが多い昨今,SSHはIT技術者に必須の技術です。本書は,OpenSSHクライアント/サーバの基本的な使い方と,TCPポートフォワード,認証エージェント転送,X11転送,多段SSHなどの応用的な使い方を説明します。セキュリティを確保するための注意点についても言及します。OpenSSH-4.2~6.6対応。Red Hat系/Debian系OS両対応。
こんな方におすすめ
- インフラエンジニア
- ネットワークエンジニア
- 運用エンジニア
- Webアプリケーション開発エンジニア
- IaaSなどのクラウドサービスを利用している技術者
- リモートからサーバに接続して作業行う技術者
目次
第1章 SSHとOpenSSHの概要
- 1-1 SSHの必要性
- 1-2 SSHとは
- 1-3 OpenSSHとは
- 1-4 プロトコルバージョンについて
- 1-5 OpenSSHが利用できる認証方式
第2章 OpenSSHの基本的な使い方
- 2-1 SSHクライアントのインストール,環境の準備
- 2-2 ログイン,コマンド実行
- 2-3 ファイルコピー,ファイル転送
- 2-4 OpenSSHに付属しているコマンド
第3章 一歩進んだOpenSSHの使い方
- 3-1 TCPポートフォワード
- 3-2 プロキシと多段SSH
- 3-3 SSHのセッションをコントロールする
- 3-4 その他の転送
- 3-5 簡易VPN
- 3-6 機能制限された公開鍵を使用する
- 3-7 ほかのアプリケーションとの連携
第4章 SSHクライアントの設定
- 4-1 クライアントコンフィグファイルの書き方
- 4-2 接続と通信に関する設定
- 4-3 転送に関する設定
- 4-4 認証に関する設定
- 4-5 その他の設定
第5章 SSHサーバの設定
- 5-1 インストール,環境の準備
- 5-2 サーバコンフィグファイルの書き方と確認のしかた
- 5-3 認証に関する設定
- 5-4 起動と動作環境に関する設定
- 5-5 ログインに関する設定
- 5-6 通信に関する設定
- 5-7 転送機能に関する設定
- 5-8 暗号に関する設定
- 5-9 Red Hat Enterprise Linux固有の設定
第6章 OpenSSHの落とし穴
- 6-1 SSHにまつわる脆弱性と攻撃
- 6-2 運用方法の再考
- 6-3 プロセス管理
第7章 設定事例集
- 7-1 公開鍵を使用した認証
- 7-2 証明書を使用した認証
- 7-3 ホストベースド認証
- 7-4 AuthenticationMethodsによる複数要素の認証
- 7-5 データベースに格納された公開鍵を使用して認証する
- 7-6 Google認証システムによる2要素認証
- 7-7 chroot環境にシェルログインできるようにする
- 7-8 sftp-serverの機能を制限する
- 7-9 SFTPしかできないアカウントの作成
- 7-10 鍵失効リスト
- 7-11 脆弱な公開鍵リスト(ブラックリスト)
- 7-12 暗号方式によるscpの転送速度の違い
- 7-13 DNS SSHFPを使用する
- 7-14 SSHゲートウェイを負荷分散させる
- 7-15 Windows環境でX11転送を使用する
- 7-16 SMB over SSH
- 7-17 TCP Wrappersを使用したアクセス制限
- 7-18 Netfilter(iptables)を使用したアクセス制限
- 7-19 必要最低限の設定例――安全な接続のための第一歩
付録
- 付録1 OpenSSHをコンパイルする
- 付録2 コマンドラインオプションの一覧表
- 付録3 ssh_config設定項目一覧
- 付録4 sshd_config設定項目一覧
- 付録5 OpenSSH-6p1におけるsshd_configのデフォルト値
サポート
正誤表
本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。
(2015年4月8日更新)
P.35 公開鍵の登録の実行例
誤 |
[localhost]$ cat .ssh/id_rsa | ssh username@remotehost 'cat >> .ssh/authorized_keys; chmod 600 .ssh/authorized_keys'
|
正 |
[localhost]$ cat .ssh/id_rsa.pub | ssh username@remotehost 'cat >> .ssh/authorized_keys; chmod 600 .ssh/authorized_keys'
|
P.67 図2-4-1
誤 |
[localhost]$ eval ssh-agent -s
|
正 |
[localhost]$ eval `ssh-agent -s`
|
P.216
誤 |
5-7-7 XAuthLocation(xauthyunの位置)
|
正 |
5-7-7 XAuthLocation(xauthの位置)
|
P.380
誤 |
XAuthLocation(xauthyunの位置).........216
XAuthLocation(xauthの位置)............150
|
正 |
XAuthLocation(xauthの位置).......150,216
|