1、系統環境介紹
1.1 系統版本
debian-9.6.0-amd64-netinst
1.2 系統內核
Linux lnnkee 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux
2、安裝編譯環境
apt install -y gcc g++ libssl-dev build-essential libtool automake zlib*
3、下載安裝包
wget https://cdn.openbsd.org./pub/OpenBSD/OpenSSH/portable/openssh-7.9p1.tar.gz
4、配置安裝環境
4.1 配置sshd權限
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin #修改/etc/passwd文件,在其中加入即可
4.2 創建安裝目錄
mkdir /usr/local/ssh
5、編譯安裝openssh
mkdir /usr/local/ssh tar xvf openssh-7.9p1.tar.gz ./configure --prefix=/usr/local/ssh --sysconfdir=/usr/local/ssh make && make install
6、配置文件說明
6.1 啓動sshd服務
/usr/local/ssh/sbin/sshd #啓動SSH運行服務
6.2 配置root訪問登陸
PermitRootLogin yes #配置文件爲/usr/local/ssh/etc/sshd_config,配置此條目爲允許root登陸
7、配置systemctl啓動腳本
7.1 配置sshd服務啓動腳本
sshd.service服務存放位置爲/lib/systemd/system/sshd.service,
之後,新建軟連接,ln -s /lib/systemd/system/sshd.service /etc/systemd/system/sshd.target.wants/
sshd.service配置文件如下:
#[Unit]部分主要是對這個服務的說明,內容包括Description和After,Description#用於描述服務,After用於描述服務類別 [Unit] Description=ssh system After= #[Service]部分是服務的關鍵,是服務的一些具體運行參數的設置,這裏Type=forking #是後臺運行的形式,PIDFile爲存放PID的文件路徑,ExecStart爲服務的具體運行命令, #ExecReload爲重啓命令,ExecStop爲停止命令,PrivateTmp=True表示給服務分配獨 #立的臨時空間,注意:[Service]部分的啓動、重啓、停止命令全部要求使用絕對路徑,使 #用相對路徑則會報錯! [Service] Type=simple PIDFile=/var/run/sshd.pid ExecStart=/usr/local/ssh/sbin/sshd ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true #[Install]部分是服務安裝的相關設置,可設置爲多用戶的 [Install] WantedBy=multi-user.target
7.2 配置開機啓動
systemctl enable sshd.service #使某服務自動啓動 systemctl disable sshd.service #使某服務不自動啓動 systemctl status sshd.service #檢查服務狀態
8、參考資料
#配置sshd.service啓動腳本
#解決Type=simple或forking
https://www.cnblogs.com/zdz8207/p/linux-systemctl.html # systemctl配置開機啓動