架設網站伺服器須知 - 如何限制 SFTP 的登入位置

2020-04-27
    內容大綱

SFTP是甚麼,跟FTP一樣嗎?

SFTP(Secure File Transfer Protocol)基本語法和FTP差不多。SFTP是SSH的一部分,在SSH軟體包中,已經包含了SFTP的安全文件傳輸子系統,SFTP本身沒有單獨的守護進程,它必須使用sshd守護進程(Port 默認是22)來完成相應的連接操作(FTP 使用的 Port 為 21);由於這種傳輸方式使用了加密/解密技術,文件傳送相對來說是很安全的,但是它的傳輸效率比FTP要低得多。

要如何設定SFTP登入的資料夾?

SFTP可以針對使用者或是群組進行限制,這邊兩種都會進行說明。

 

1. 那首先我們先來創立一個群組 userGroup 跟使用者 userName 當作範例

groupadd userGroup -g 1000

useradd userName -u 1000 -g 1000 -d /home/userName

 

2. 現在有兩種選擇,一是讓ftp使用者ftp進入後為家目錄,或者為其他任何一個目錄,先介紹家目錄,我們首先要把 /home/userName 的許可權屬主設定為 root:userGroup ,換句話說就是使用者SFTP登入後的根目錄所在目錄,和這個目錄所有的上層目錄,其所屬主必須是root,/home 的許可權至少應為755,當然linux系統預設就是這個。

然後 /home/userName 預設情況下 userName:userGroup ,許可權為700,現在應該改為 root:userGroup 許可權755

chown root:userGroup /home/userName

chmod 755 /home/userName

 

3. 修改 sshd_config 的值,通常sshd_config 的位置會在 /etc/ssh/sshd_config

vi /etc/ssh/sshd_config

 

進入後需要將下面這一行字註解,不然無法啟動 sshd 的功能

Subsystem sftp    /usr/libexec/openssh/sftp-server

 

然後在下面加入這幾行,可以針對使用者登入位置進行設定

Match User userName

    ChrootDirectory /home/userName/

    ForceCommand internal-sftp

    AllowTcpForwarding no

    X11Forwarding no

 

或是加入以下幾行,針對群組的用戶登入位置進行設定

Match Group userGroup

    ChrootDirectory /home/userName/

    ForceCommand internal-sftp

    AllowTcpForwarding no

    X11Forwarding no

 

ChootDirectory 就是使用者能進入的資料夾了,那是不是設定讓使用者使用 /home 以外的資料夾,答案是可以的,但記得,設定的資料夾所有上層的目錄所屬都要設定成 root ,不然就會碰到sftp連線馬上被關閉的情況。

 

4. 修改完後記得重啟 sshd

systemctl reload sshd


2020-06-18

網站我們必需要自己架伺服器嗎?

    內容大綱

網頁設計完成即將安裝上線時,通常有兩種方式可供選擇主機方式:
(一)自行架設伺服器:

此種方法就是自行再購買一台電腦作為該站的伺服器,且需二十四小時都不能關機,一旦關機網站將會無法運作。自行架設花費的需求會比較昂貴,例如:伺服器軟硬體、防火牆、網路租用費、MIS管理工程師、其它支出(如:不斷電系統、發電機)。
特色為資料維護技術完全自己掌握、但投入及維護成本高、可與企業內部資訊系統結合應用、適合中大型且有專業人員之企業。

(二)租用虛擬主機空間:

一般中小型公司網站大都是採用此租用模式,費用較低,每一年必須支付1000~5000費用不等,視網站的需求而選擇的主機規格、流量而有不同費用。
特色為投入成本較低、適合一般資訊提供量較少且不資訊部門或資訊專業人員之中小企業、所有的連線及維護都由廠商代勞,以資源共享的方式來節省購買單一主機的花費模式,此種方式較為經濟,您也不需放置實體的伺服器在公司內部。

 

(三)租用獨立或是雲端主機空間:

有點像是AWS和GCP ,好處是速度飛快,一般虛擬主機大約同時上線50~80人是極限,並且中國大陸是無法看到的,但是如果是AWS和GCP,大約可以同時100人以上,並且可以隨著行銷活動快速調整方案和規格,在網站架設中,可思科技是最推這個方案的!

如果對自己架伺服器有興趣的朋友,可以參考右側的相關文章喔!那邊都有教學!


相關資訊

其它資訊