導航:首頁 > IDC知識 > linuxsftp伺服器搭建

linuxsftp伺服器搭建

發布時間:2020-10-25 02:28:15

1、linux 怎樣連sftp伺服器

SFTP本身沒有單獨的守護進程,它必須使用sshd守護進程(埠號默認是22)來完成相應的連接操作,所以從某種意義上來說,SFTP並不像一個伺服器程序,而更像是一個客戶端程序。

啟動ssh服務、sftp服務
執行命令 /etc/init.d/sshd start 注意這里需要在絕對路徑下執行sshd start。

2、linux搭建的FTP伺服器,用戶怎麼自己修改密碼?

用戶自己是無法更改ftp賬戶密碼的,只有管理員才能更改 管理員操作: A 登錄Linux主機後,運行命令:」useradd ftpadmin -s /sbin/nologin 「。該賬戶路徑默認指向/home/ftpadmin目錄;如果需要將用戶指向其他目錄,請運行命令:useradd ftpadminlinux搭建的FTP伺服器,用戶怎麼自己修改密碼?

3、Linux中使用shell腳本訪問sftp伺服器,密鑰不會用

密鑰用於建立SSH互信環境,本地公鑰需要分發到遠端伺服器目錄,可實現本地主機到專遠端SFTP伺服器的無訪問.
1. 生成密鑰對,取得本地公鑰,如:id_dsa.pub
2. 登錄到遠端SFTP伺服器用戶HOME目錄的.ssh文件夾
3. 將id_dsa.pub的內容追加到遠端服屬務器.ssh/autorized_keys文件尾部並保存
4. 嘗試與本地主機用戶SFTP到遠程伺服器: sftp user@server_addr

4、windows 下cmd 通過sftp命令 怎樣訪問linux伺服器下的文件目錄並下載,為什麼我的sftp用不了

裝了openssh才會有sftp命令
你還是裝個支持sftp的客戶端吧,比如Cuteftp pro、SecureFX之類的

5、linux下 如何寫一個shell 使用sftp發送文件到指定伺服器 每次要手工輸入

你可以試試下面的方法,把sftp內的操作都寫到EOF裡面

sftp -oPort=$PORT $USERNAME@$IP <<EOF
cd $FTP2DIR
mkdir $DATA_DATE
cd $DATA_DATE
put $EXPORT_LOCAL_DIR/$data_file_name
put $EXPORT_LOCAL_DIR/$verf_file_name
exit
close
bye
EOF

6、linux下shell腳本用sftp傳文件,但是要通過代理伺服器出去。怎麼配置

這個是伺服器和程序方面的問題哦, 不過可以幫助搞定一下的啊 , 能看一下wo的網名嗎?在線的幫解決一下 啊

7、如何檢測linux系統下ftp伺服器是否開啟

檢測linux系統下ftp伺服器是否開啟的方法如下:

1、第一步,打開一台Linux的電腦,進入到輸入shell指令版的命令行狀態下,權如下圖所示。

2、第二步,使用鍵盤在命令行中輸入:」service vsftp status「這個指令,指令的意思是查看ftp伺服器的狀態,如下圖所示。

3、第三步,輸入完成之後,點擊」回車鍵「運行該指令,就會顯示ftp伺服器的開關狀態,比如下圖就是「inactive」狀態,表示ftp伺服器處於關閉狀態,如下圖所示。

8、如何用sftp上傳文件到linux伺服器上

伺服器上安裝vsftpd就是ftp服務,並開啟允許root賬戶
本地使用FlashFXP這樣的客戶端上傳;

伺服器上安裝vsftpd並開啟root賬戶允許
(非必要不建議開啟root賬戶)
yum -y install vsftpd

sed -i 's/root/#root/' /etc/vsftpd/ftpusers
sed -i 's/root/#root/' /etc/vsftpd/user_list
/etc/init.d/vsftpd restart

本地使用flashfxp連接

9、怎麼開啟linux伺服器的sftp服務

可以按照如下方式進行設置:

1、創建sftp組,groupadd sftp,創建完成之後使用cat /etc/group命令組的信息。

2、創建一個sftp用戶mysftp並加入到創建的sftp組中,同時修改mysftp用戶的密碼,useradd -g sftp -s /bin/false mysftp,passwd mysftp 。

3、新建/data/sftp/mysftp目錄,並將它指定為mysftp組用戶的home目錄,mkdir -p /data/sftp/mysftp,usermod -d /data/sftp/mysftp mysftp。

4、編輯配置文件/etc/ssh/sshd_config,vi /etc/ssh/sshd_config,將如下這行用#符號注釋掉。

5、設置Chroot目錄許可權,chown root:sftp /data/sftp/mysftp,chmod 755 /data/sftp/mys。

6、新建一個目錄供stp用戶mysftp上傳文件,這個目錄所有者為mysftp所有組為sftp,所有者有寫入許可權所有組無寫入許可權,mkdir /data/sftp/mysftp/upload,chown mysftp:sftp /data/sftp/mysftp/upload,chmod 755 /data/sftp/mysftp/upload。

7、關閉selinux並重啟sshd服務,然後測試。

8、在其他伺服器上進行驗證,sftp 用戶名@ip地址。

拓展資料

1、sftp是Secure File Transfer Protocol的縮寫,安全文件傳送協議。可以為傳輸文件提供一種安全的網路的加密方法。sftp 與 ftp 有著幾乎一樣的語法和功能。SFTP 為 SSH的其中一部分,是一種傳輸檔案至 Blogger 伺服器的安全方式。

2、其實在SSH軟體包中,已經包含了一個叫作SFTP(Secure File Transfer Protocol)的安全文件信息傳輸子系統,SFTP本身沒有單獨的守護進程,它必須使用sshd守護進程(埠號默認是22)來完成相應的連接和答復操作,所以從某種意義上來說,SFTP並不像一個伺服器程序,而更像是一個客戶端程序。

10、如何在linux下配置ssh和sftp使用不同的埠號?

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 restart
service sftpd restart

與linuxsftp伺服器搭建相關的知識