dropbear是一種開源軟體,可以替代openssh實作遠端連接配接,下面簡單講述一下這款軟體的安裝配置步驟
第一步 編譯安裝
1擷取源檔案 解壓
[[email protected] ~]#tar xf dropbear-2013.58.tar.bz2
2安裝
切換目錄
[[email protected] ~]# cd dropbear-2013.58
執行腳本
[[email protected] ~]# ./configure
在安裝過程中可能會出現安裝環境的問題.
例如 :沒安裝gcc編譯器,安裝過程中出現下面情況

此時可以用yum安裝
[[email protected] dropbear-2013.58]# yum install gcc gcc-c++
仍可能會有麻煩
此時要安裝zlib的支包
[[email protected] dropbear-2013.58]#yum -y install zlib-devel
再執行腳本後就沒問題了
3裝載
[[email protected] dropbear-2013.58]# make PROGRAMS="dropbear dbclient dropbearkey scp"
[[email protected] dropbear-2013.58]# make PROGRAMS="dropbear dbclient dropbearkey scp" install
可看到dropbear,dbclient,dropbearkey,scp已安裝上
第二步 編輯服務腳本
#vim /etc/rc.d/ini.d/dropbear
#!/bin/bash
#描述dropbear
# description: dropbear ssh daemon
#定義啟動關閉次序
# chkconfig: 2345 66 33
#啟動時要指定的密鑰檔案
dsskey=/etc/dropbear/dropbear_dss_host_key
rsakey=/etc/dropbear/dropbear_rsa_host_key
#鎖檔案
lockfile=/var/lock/subsys/dropbear
#pid檔案
pidfile=/var/run/dropbear.pid
#程式檔案
dropbear=/usr/local/sbin/dropbear
#密鑰檔案
dropbearkey=/usr/local/bin/dropbearkey
#腳本中會調用函數 先判斷函數是否存在
[ -r /etc/rc.d/init.d/functions ] && . /etc/rc.d/init.d/functions
[ -r /etc/sysconfig/dropbear ] && . /etc/sysconfig/dropbear
#有預設值則使用預設值 否則用1024
keysize=${keysize:-1024}
#定義監聽端口
port=${port:-22}
# 第一個函數 生成密鑰
gendsskey() {
# 判斷密鑰檔案所在目錄是否存在 不存在則建立
[ -d /etc/dropbear ] || mkdir /etc/dropbear
#顯示開始生成密鑰
echo -n "Starting generate the dss key: "
# 生成密鑰
$dropbearkey -t dss -f $dsskey &> /dev/null
RETVAL=$? #取上面指令傳回值
if [ $RETVAL -eq 0 ]; then #如果傳回值為0 即建立成功
success
echo
return 0
else
failure
echo
return 1 #如果沒執行成功 傳回值1來判定
fi
}
genrsakey() {
[ -d /etc/dropbear ] || mkdir /etc/dropbear
echo -n "Starting generate the rsa key: "
$dropbearkey -t rsa -s $keysize -f $rsakey &> /dev/null
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
success
echo
return 0
else
failure
echo
return 1
fi
}
#啟動服務
start() {
#判斷密鑰是否存在不存在就生成
[ -e $dsskey ] || gendsskey
[ -e $rsakey ] || genrsakey
#用鎖檔案是否存在判定密鑰生成
if [ -e $lockfile ]; then
echo -n "dropbear daemon is already running: "
success
echo
exit 0
fi
echo -n "Starting dropbear: " #顯示 dropbear啟動
daemon --pidfile="$pidfile" $dropbear -p $port -d $dsskey -r $rsakey
RETVAL=$? #用指令狀态傳回值判斷上面指令是否執行成功
echo
if [ $RETVAL -eq 0 ]; then #如果傳回值為0 即執行成功
touch $lockfile #建立鎖檔案
return 0
else
rm -f $lockfile $pidfile #如果沒執行成功 删除鎖檔案和pid檔案
return 1
fi
}
stop() {
if [ ! -e $lockfile ]; then #如過鎖檔案不存在
echo -n "dropbear service is stopped: " #顯示dropbear服務停止
success
echo
exit 1
fi
echo -n "Stopping dropbear daemon: "
killproc dropbear #停止dropbear程序
RETVAL=$?
echo
if [ $RETVAL -eq 0 ]; then #如果服務停止
rm -f $lockfile $pidfile #删除檔案
return 0
else
return 1
fi
}
status() {
if [ -e $lockfile ]; then
echo "dropbear is running..."
else
echo "dropbear is stopped..."
fi
}
usage() {
echo "Usage: dropbear
{start|stop|restart|status|gendsskey|genrsakey}"
}
# 用case語句和位置變量調用函數
case $1 in
start)
start ;;
stop)
stop ;;
restart)
stop
start
;;
status)
status
;;
gendsskey)
gendsskey
;;
genrsakey)
genrsakey
;;
*)
usage
;;
esac
第三步 後續工作
1 增加dropbear服務
[[email protected] ~]# chkconfig --add dropbear
2 給腳本賦執行權利
[[email protected] ~]# chmod +x /etc/init.d/dropbear
3 檢視下效果
修改下配置檔案再看一下
轉載于:https://blog.51cto.com/baglinux/1374269