○ dropbearのインストール 4 Router

*複数のsshアクセスルートを確保し、相互のメンテナンスに利用します
*opensshと同等に、サーバへのSECUREな接続を目指します
*dropbear-0.52をソースからインストールし、設定します
*opensshで作成した公開鍵を読み込んで使用します
*make はメンテナンスマシンで行っています

**以降はコメントです
*ソースの取得、削除は略します
*エディタ、ファイラーの操作は省略します
*ソースを展開したら説明文 (英文) を読みましょう
*Enterキーを省略します

*ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
*設定ファイルで "#" で始まる行はコメントとして解釈されます

○関連サイト

:dropbear-0.52.tar.bz2 (http://matt.ucc.asn.au/dropbear/dropbear.html)

○参照ファイル

パッケージの追加
最初の設定 (Router)

○インストール環境

:OS CentOS 5.5
:selinux permissive
:インストール先  /usr/local/ (デフォルト)
:作業 /usr/src
:言語 LANG=en_US.UTF-8
:ユーザー rootで実行

*メンテナンスの場合は一般ユーザから行います



○dropbear-0.52

○ソースの展開・インストール

# cd /usr/src
# tar jxvf dropbear-0.52.tar.bz2
# chown -R root:root dropbear-0.52
# cd dropbear-0.52
# make clean
# ./configure CFLAGS="-O2 -march=pentium3" \
--sysconfdir=/etc --localstatedir=/var

*CFLAGS="-O2 -march=pentium3" (CPU最適化オプション)
*該当しない場合は指定しない

# vi options.h

*options.hの修正(下記参照)

# make
# make install
# cp dbclient.1 /usr/local/share/man/man1
# cp {dropbear.8,dropbearkey.8} /usr/local/share/man/man8
# cd /usr/src
# tar jcvf dropbear-0.52-rt-100519.tar.bz2 dropbear-0.52/

*専用ディレクトリの作成

# mkdir /etc/dropbear

:/usr/src/dropbear-0.52/options.h

*SFTPSERVER_PATHをopensshのインストールに合わせる

#ifndef SFTPSERVER_PATH
#define SFTPSERVER_PATH "/usr/local/libexec/sftp-server"
#endif

*dropbearのインストールに合わせる

#define _PATH_SSH_PROGRAM "/usr/local/bin/dbclient"

*DEFAULT_PATHをopensshに合わせる

#define DEFAULT_PATH "/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin"

○dropbearデーモンの起動

: /etc/sysconfig/dropbear

*"-s"パスワードログインの禁止
*"-w"rootログインの禁止
*"-p 192.168.0.1:922"接続を待ち受けるアドレス:ポート

OPTIONS="-s -w -p 192.168.0.1:922"

: /étc/rc.d/init.d/dropbear (詳細別記)

*dropbearデーモンを起動します

# service dropbear start
# chkconfig --add dropbear

*起動の確認

# ps ax | grep dropbear
# netstat -lnp | grep dropbear

○公開鍵の作成

*~/.ssh/authorized_keysを読み込みます (サーバ側)
*公開鍵の作成はssh-keygen(openssh)で行います --省略--

○selinuxへの対応 (selinuxが有効の場合)

:新規インストールファイルのselinuxラベルを修正

# restorecon -Rv /etc
# restorecon -Rv /var
# restorecon -Rv /usr/local
# restorecon -RFv /home

○iptablesの設定

*Netfilter (iptables) で制御している場合、ポートを開けてください

Netfilter (iptables) の設定参照



○クライアントからの接続

○sshでの接続

*~/.ssh/known_hostsに情報が保存されている場合は削除します(クライアント側)
*ポート番号を指定してアクセスします

$ ssh -p 922 sola@venus.528p.com



○xinetdで起動 (参考)

○dropbearデーモンの停止

*dropbearがデーモンモードで起動している場合、停止します

# service dropbear stop
# chkconfig --del dropbear

○鍵の作成

*/etc/dropbearに鍵が存在しない場合、作成します

# cd /etc/dropbear
# dropbearkey -t rsa -f dropbear_rsa_host_key
# dropbearkey -t dss -f dropbear_dss_host_key

○/etc/servicesの修正

*dropbearの設定を追加します (接続ポートを指定します)

dropbear        922/tcp

○/etc/hosts.allowの修正

*dropbearの設定を追加します (localからの接続のみ許可します)

dropbear: 192.168.0.

○/etc/xinetd.d/dropbearの追加

*dropbearの設定を追加します (localからの接続のみ許可します)
* "-i" サービスプログラムモード (inetd,xinetdなどから起動する場合)

service dropbear
{
    socket_type     = stream
    only_from       = 192.168.0.0/24
    wait            = no
    user            = root
    protocol        = tcp
    server          = /usr/local/sbin/dropbear
    server_args     = -i -s -w
    disable         = no
}

○xinetdの再起動

# service xinetd restart

*起動の確認

# netstat -lnp | grep xinetd

○ Copyright(c) 528p.com All Rights Reserved.