最佳答案

1、兩個deamon

要實現ssh和sftp分離,分別監聽不同的埠,可以透過建立兩個‘/usr/sbin/sshd’後臺程式,一個監聽22埠(ssh),一個監聽20022埠(sftp),為了區分ssh和sftp服務的後臺程式,這裡將ssh服務的後臺程式保持為/usr/sbin/sshd,而將sftp服務的後臺程式改為/usr/sbin/sftpd。/usr/sbin/sftpd是/usr/sbin/sshd的一個連結,其內容完全相同(ln -sf /usr/sbin/sshd /usr/sbin/sftpd)。

2、兩個service

SLES12使用systemd管理系統服務,ssh服務對應/usr/lib/systemd/system/sshd.service檔案,實現sftp服務時可以將/usr/lib/systemd/system/sshd.service 複製到 /etc/systemd/system/sftpd.service,然後修改sftpd.service檔案內容。(使用修改好的sftpd.service檔案即可)

3、其他檔案系統的ssh服務是透過安裝openssh實現的,可以透過rpm -ql openssh檢視該rpm包含哪些檔案。總結實現ssh和sftp分離的相關的檔案有:

ssh服務 sftp服務

/usr/lib/systemd/system/sshd.service /etc/systemd/system/sftpd.service (透過修改/usr/lib/systemd/system/sshd.service檔案得到)

/etc/pam.d/sshd /etc/pam.d/sftpd (透過複製 /etc/pam.d/sshd檔案得到)

/etc/ssh/sshd_config /etc/ssh/sftpd_config (透過複製/etc/ssh/sshd_config檔案得到)

/usr/sbin/rcsshd /usr/sbin/rcsftpd (ln -sf /usr/sbin/service /usr/sbin/rcsftpd)

/usr/sbin/sshd /usr/sbin/sftpd (ln -sf /usr/sbin/sshd /usr/sbin/sftpd)

/etc/sysconfig/ssh /etc/sysconfig/sftp (透過修改/etc/sysconfig/ssh檔案得到)

至此,我們已經實現了兩個服務。

但是,ssh服務和sftp服務並沒有真正的分離,此時已然可以透過22號埠使用ssh服務和sftp服務,而新開的20022埠也可以使用ssh服務(ssh -p 20022 username@serverip )和sftp服務(sftp -o Port=20022 username@serverip )。

4、關閉22號埠下的sftp服務編輯/usr/sbin/sshd的配置檔案/etc/ssh/sshd_config檔案,將Subsystem引數註釋掉,然後重啟sshd同時也可以設定可訪問22號埠的使用者白名單:編輯/etc/ssh/sshd_config檔案,設定AllowGroups引數(假設設定為AllowGroups sshonly),限制僅AllowGroups組內的使用者可透過22號埠ssh登入系統(對於需要ssh登入系統的使用者可透過usermod -A sshonly username將其加入到AllowGroups組內)

5、“關閉20022號埠下的ssh服務”sftp作為一個子服務,它的開啟依賴於ssh服務,因此不能從本質上關閉ssh服務而只開啟sftp服務。可以用以下方式來規避:/usr/sbin/sftpd的配置檔案/etc/ssh/sftpd_config中包含Subsystem引數配置(推薦使用Subsystem sftp internal-sftp -l INFO -f AUTH)/etc/ssh/sftpd_config中包含AllowGroups引數(假設為AllowGroups sftponly),限制僅AllowGroups組內的使用者可以訪問20022埠將AllowGroups組內的使用者的shell改為/bin/false(usermod -s /bin/false username),使AllowGroups組內的使用者僅能sftp登入系統(如果一個使用者即需要ssh,又需要sftp,則不能將其shell改為/bin/false)

6、使用者白名單配置配置之後,需將系統內需要ssh訪問系統的使用者加入到sshonly組內,需將系統內需要sftp訪問系統的使用者加入到sftponly組,同時需要ssh和sftp的使用者則sshonly和sftponly組都要加入。

7、 重啟ssh服務和sftp服務,並設定開機啟動

service sshd restartservice sftpd restart

要在Linux下配置SSH和SFTP使用不同的埠號,您可以按照以下步驟進行操作:

1. 開啟終端並以root使用者身份登入到Linux系統。

2. 編輯SSH配置檔案:使用文字編輯器(如vi或nano)開啟SSH伺服器配置檔案 `/etc/ssh/sshd_config`。

```

sudo vi /etc/ssh/sshd_config

```

3. 在配置檔案中找到 `Port` 行,該行定義了SSH伺服器監聽的埠號,預設情況下為22。

4. 更改SSH埠號:將 `Port` 的值更改為您想要用於SSH連線的新埠號。請確保選擇一個未被其他服務佔用的埠號。

5. 儲存並關閉檔案:在vi編輯器中,按下 `Esc` 鍵,然後輸入 `:wq` 並按下 `Enter` 儲存並退出。

6. 重啟SSH服務:執行以下命令來重新啟動SSH服務以使更改生效。

```

sudo systemctl restart sshd

```

7. 配置SFTP使用不同的埠號:預設情況下,SFTP使用SSH的埠號進行連線。如果您希望為SFTP設定不同的埠號,可以考慮使用專門的SFTP伺服器軟體,如vsftpd或ProFTPD,並在其配置檔案中指定所需的埠號。

請注意,在更改SSH和SFTP的埠號之後,您需要確保相應的防火牆規則允許新埠的傳入連線。確保您的網路和系統安全性,例如使用強密碼、限制登入嘗試次數和禁用root遠端登入等。

這些步驟僅適用於常見的Linux發行版,具體操作可能因不同的發行版而有所不同。

要在Linux下配置SSH和SFTP使用不同的埠號,您需要進行以下步驟:


1. 開啟SSH配置檔案(一般位於/etc/ssh/sshd_config)。


2. 在檔案中找到“Port”行,並更改SSH的埠號為您想要使用的埠號(例如,2222)。


3. 儲存並關閉檔案。


4. 重啟SSH服務以使更改生效(例如,使用命令sudo service ssh restart)。


5. 開啟SFTP伺服器配置檔案(一般位於/etc/ssh/sshd_config)。


6. 在檔案中找到“Subsystem sftp”行,並在該行的末尾新增一個新的埠引數(例如,“-p 2223”)。


7. 儲存並關閉檔案。


8. 重啟SFTP伺服器以使更改生效(例如,使用命令sudo service ssh restart)。


這樣,您就可以透過不同的埠號訪問SSH和SFTP服務。配置不同的埠號有助於提高系統的安全性,因為攻擊者往往會掃描預設埠號,而將埠號修改為非預設值可以減少惡意訪問的風險。

繼續學習常見問答

創業賺大錢如何獲得聲望

幾年前還在讀大學的時候,我與一位同伴一直努力想憑我們自己力量開辦公司,之後我開始意識到利用資源的重要性。如果有條溝擋住了你的去路,你可以在上面搭塊板子走過去。如果你認為凡事都可以憑自己力量解決,那麼你註定要失敗。你可能善於程式設計,但你只是...


小本生意做什麼好

當下比較流行的小本生意主要有汽車美容、開網店、開精品店、開特色餐飲店等。有哪些小本生意可做?這些行業投資比較少,風險也比較低,是適合大眾創業的經典專案。各專案具體情況如下:1、汽車美容:隨著市場汽車數量的日益增加,汽車美容行業發展的相當不錯...


不想出去打工和老婆在家裡做點什麼掙點錢啊

我告訴你吧!你先再打一會工,然後向銀行貸款,再借點錢你再去鎮上上開一個超市(500平米就夠了)不能鄉村和城市(鄉村賺不到錢,城市成本要很大)然後在超市裡賣東西,不要賣太貴的,再賣點蔬菜和肉,生鮮,也不要太多,畢竟是鎮上的.蔬菜你就趁你打工期...


如何在iphone上恢復備份的通訊錄

不知道你是具體要恢復什麼資料呢?下面提供幾個通用方法,可以恢復,微信聊天記錄,通訊錄,照片,簡訊等資料。iCloud裡面的資料是跟手機上面同步的,如果你刪除了iCloud裡面的資料,手機上的檔案也會一起消失的,如果想要恢復誤刪除的檔案資料,...


蘋果手機13 pro max自帶通訊錄app被刪掉了怎麼找回

1可以透過以下方法找回蘋果手機13promax自帶通訊錄app。2首先,可以嘗試在AppStore中搜索並下載類似的通訊錄應用程式,例如Contacts+、Truecaller等。這些應用程式可以提供類似的功能,並且可以幫助您管理聯絡人。3...


蘋果手機用icloud怎麼恢復通訊錄

1、網頁登入AppleID賬戶,登入iCloud官方管理頁面。2、登入成功以後請點選首頁面中的“設定”。3、接下來在iCloud的設定頁面左下方,點選“高階”項。4、選擇想要回退的日期,點選右側的“恢復”即可。5、如果確定要恢復的話,...


2021年1月31號過年,過的是哪年

過的是2021這一年,春節,即農曆新年,是一年之歲首、傳統意義上的年節。俗稱新春、新年、新歲、歲旦、年禧、大年等,口頭上又稱度歲、慶歲、過年、過大年。春節歷史悠久,由上古時代歲首祈年祭祀演變而來。萬物本乎天、人本乎祖,祈年祭祀、敬天法祖,報...


面容id不可用怎麼解決蘋果

1.如下圖所示,當顯示面容ID不可用時,可以重啟一下手機即可。2.以iphone11,ios16.4系統為例,重啟方法如下:同時長按電源鍵和任一音量鍵,並向右滑動關機,再長按電源鍵開機重啟。3.若依然無法解決問題,則重新錄入面容即可。開啟設...


顯示卡驅動怎麼更改啊

更改顯示卡驅動的方法可能略有不同,具體取決於您使用的作業系統和顯示卡型別。以下是一些常見的更改顯示卡驅動的步驟:首先,您需要下載並安裝新的顯示卡驅動程式。您可以在顯示卡製造商的網站上找到適合您顯示卡型號和作業系統的最新驅動程式。在下載和安裝...


怎麼把顯示卡驅動裝回以前的版本

方法:1、開啟“控制面板”,右上角“檢視方式”切換到“小圖示”,再點選下方的“裝置管理器”。2、以還原攝像頭驅動為例,先滑鼠左鍵雙擊展開“影象裝置”,滑鼠右鍵單擊“……C270”,在彈出的右鍵選單中點選“屬性”。3、點選“驅動程式”,再點選...