㈠ linux中sftp默認登錄的埠號是多少
1、使用sftp默認的埠號進行登錄
aiuap_cj@cuchc802:~> sftp [email protected]
[email protected]'s password:
Connected to 10.124.163.133.
sftp>
備注:可以連接,但是並沒有顯示當前的埠號.
2、使用-P 埠號的方式進行登錄
aiuap_cj@cuchc802:~> sftp -P 21 [email protected]^Caiuap_cj@cuchc802:~> sftp -P 22 [email protected]@10.124.163.133's password: Connected to 10.124.163.133.
sftp>
備注:發現21埠是無法連接的,使用22埠就能進行連接,所以,默認的sftp埠號22,同時呢,如果其他的sftp伺服器的埠號修改之後,可以通過-P來指定要通過哪個埠號連接。
(1)sftp命令加埠擴展閱讀
linux修改sftp埠的方法:
SSH配置文件有兩個都放在/etc/ssh/ssh_config和/etc/ssh/sshd_config在ssh_config中,找到#port22,在其下面就加入port 8080;
同時,在sshd_config中,找到#port 22,在其下面就加入port8080(與上面相同)
之後重啟sshservice sshd restart。
㈡ sftp是主動式還是被動式ftp 使用的埠是22還是115
sftp是ssh內含的協議,只要sshd伺服器啟動了,它就可用,它本身不需要ftp伺服器啟動。 FTP伺服器和客戶端要進行文件傳輸,就需要通過埠來進行。FTP協議需要的埠一般包括兩種:
控制鏈路--------TCP埠21
所有你發往FTP伺服器的命令和伺服器反饋的指令都是通過伺服器上的21埠傳送的。
數據鏈路--------TCP埠20
數據鏈路主要是用來傳送數據的,比如客戶端上傳、下載內容,以及列目錄顯示的內容等。 FTP伺服器和客戶端要進行文件傳輸,就需要通過埠來進行。FTP協議需要的埠一般包括兩種:
控制鏈路--------TCP埠21
所有你發往FTP伺服器的命令和伺服器反饋的指令都是通過伺服器上的21埠傳送的。
數據鏈路--------TCP埠20
數據鏈路主要是用來傳送數據的,比如客戶端上傳、下載內容,以及列目錄顯示的內容等。 FTP伺服器和客戶端要進行文件傳輸,就需要通過埠來進行。FTP協議需要的埠一般包括兩種:
控制鏈路--------TCP埠21
所有你發往FTP伺服器的命令和伺服器反饋的指令都是通過伺服器上的21埠傳送的。
數據鏈路--------TCP埠20
數據鏈路主要是用來傳送數據的,比如客戶端上傳、下載內容,以及列目錄顯示的內容等。 FTP連接的兩種方式
在數據鏈路的建立上,FTP Server 為了適應不同的網路環境,支持兩種連接模式:主動模式(Port)和被動模式(Pasv)。其實這兩種連接模式主要是針對數據鏈路進行的,和控制鏈路無關。
主動模式
主動模式是這樣工作的:客戶端把自己的高位埠和伺服器埠21建立控制鏈路。所有的控制命令比如Is或get都是通過這條鏈路傳送的。
當客戶端需要伺服器端給它傳送數據時,客戶端會發消息給伺服器端,告訴自己的位置和打開的高位埠(一般大於1024的埠都就叫高位埠),等候伺服器 的20埠和客戶端打開的埠進行連接,從而進行數據的傳輸。當伺服器端收到信息後,就會和客戶端打開的埠連接,這樣數據鏈路就建立起來了。
採用主動模式連接伺服器的客戶端,當它位於NAT或者防火牆的保護之後時會碰到連接失敗的問題。這是因為當防火牆接到伺服器發送過來的信息的時候,並不知道應該發送給內部網路中的哪一台客戶端造成的。
被動模式
被動模式是這樣工作的:當客戶端發送數據請求後,伺服器也會發信息給客戶端,告訴客戶端:伺服器在本地打開了一個高位埠P,你現在來連接我吧。當客戶端收到該信息時,就會去連接伺服器端的埠P,連接成功後,數據鏈路就建立了。
從上面的解釋中我們可以看到,兩種模式主要的不同是數據連接建立的不同。對於Port模式,是客戶端在本地打開一個埠等伺服器去連接建立數據連接,而Pasv模式就是伺服器打開一個埠等待客戶端去建立一個數據連接。
㈢ Linux 從A用sftp連接B
Linux 從A用sftp連接B的命令是:sftp -oPort=60001 [email protected]。使用-o選項來指定埠號。-oPort=遠程埠號sftp> get /var/www/fuyatao/index.php /home/fuyatao/。這條語句將從遠程主機的 /var/www/fuyatao/目錄下將 index.php。
然後下載到本地 /home/fuyatao/目錄下。
sftp> put /home/fuyatao/downloads/Linuxgl.pdf/var/www/fuyatao/
這條語句將把本地 /home/fuyatao/downloads/目錄下的 linuxgl.pdf文件上傳至遠程主機/var/www/fuyatao/ 目錄下。
linuxftp遠程連接命令是:
1. 連接ftp伺服器:格式:ftp [hostname| ip-address]在linux命令行下輸入:ftp 192.168.26.66
伺服器詢問你用戶名和口令,分別輸入用戶名和相應密碼,待認證通過即可。
2、下載文件:下載文件通常用get和mget這兩條命令。a) get格式:get [remote-file] [local-file]
將文件從遠端主機中傳送至本地主機中。
3、上傳文件:a) put格式:put local-file [remote-file],將本地一個文件傳送至遠端主機中。
4、斷開連接:bye:中斷與伺服器的連接。ftp> bye (回車)。
㈣ 如何在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
㈤ 誰知道在SUSE10 下 修改sftp埠的方法 例如SSH的為22埠 修改為8080埠,急!
不是在其配置文件中么?
SSH配置文件有兩個都放在/etc/ssh/ssh_config和/etc/ssh/sshd_config
在ssh_config中,找到#port
22,在其下面就加入port 8080
同時,在sshd_config中,找到#port 22,在其下面就加入port
8080(與上面相同)
之後重啟ssh
service sshd restart
㈥ windows sftp 怎麼用
windows下filezilla使用sftp(ssh-2)
puttygen.exe生成的密鑰文件(ssh-2
rsa)
分別有公鑰和私鑰
伺服器端:~/.ssh/authorized_keys
把公鑰復制到這個openssh認證文件裡面。
客戶端filezilla:
編輯->設置->sftp->添加密碼文件->選擇剛才生成的私鑰文件。
文件->站點管理器->新建站點->填寫ip和埠->選擇sftp->登錄類型"一般"
,然後用戶填寫root,密碼留空即可。
點擊連接,出現下面錯誤:
命令:
keyfile
"rsa-key-filezilla.ppk"
命令:
open
"[email protected]"
22
命令:
pass:
錯誤:
認證失敗。
錯誤:
嚴重錯誤
錯誤:
無法連接到伺服器
關鍵是同樣的私鑰,放在winscp和pageant都可以正常認證連接啊。
難道是這種加密類型filezilla不支持???
尋找wiki
果然是ssh-2
rsa加密的問題,filezilla如果要支持ssh-2
rsa加密,需要putty的其他工具,首先要把密鑰轉換成putty的ppk格式,這個我之前就是用這個工具做的密鑰,所以沒有問題,然後還需要用pageant做代理才能正常使用,在pageant中託管密鑰,然後開啟filezilla就可以選擇sftp並正常使用了。
㈦ 伺服器把ssh的埠號改了,在linux終端怎麼用sftp連接
從技術角度來分析,幾個要求:
1、從安全方面看,sftp會更安全一點
2、線上伺服器提供在線服務,對用戶需要控制,只能讓用戶在自己的home目錄下活動
3、用戶只能使用sftp,不能ssh到機器進行操作
提供sftp服務,可以用系統自帶的internal-sftp,也可以使用vsftpd,這里需求不多,直接選用internal-sftp。
限制用戶只能在自己的home目錄下活動,這里需要使用到chroot,openssh 4.8p1以後都支持chroot,我現在用的是CentOS 6.3,自帶的openssh已經是5.3p1,足夠了。
可以輸入:
# ssh -V
來查看openssh的版本,如果低於4.8p1,需要自行升級安裝,不在這里具體介紹了。
假設,有一個名為sftp的組,這個組中的用戶只能使用sftp,不能使用ssh,且sftp登錄後只能在自己的home目錄下活動
1、創建sftp組
# groupadd sftp
2、創建一個sftp用戶,名為mysftp
# useradd -g sftp -s /bin/false mysftp
# passwd mysftp
3、sftp組的用戶的home目錄統一指定到/data/sftp下,按用戶名區分,這里先新建一個mysftp目錄,然後指定mysftp的home為/data/sftp/mysftp
# mkdir -p /data/sftp/mysftp
# usermod -d /data/sftp/mysftp mysftp
4、配置sshd_config
編輯 /etc/ssh/sshd_config
# vim +132 /etc/ssh/sshd_config
找到如下這行,並注釋掉
Subsystem sftp /usr/libexec/openssh/sftp-server
添加如下幾行
Subsystem sftp internal-sftp
Match Group sftp
ChrootDirectory /data/sftp/%u
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
解釋一下添加的幾行的意思
Subsystem sftp internal-sftp
這行指定使用sftp服務使用系統自帶的internal-sftp
Match Group sftp
這行用來匹配sftp組的用戶,如果要匹配多個組,多個組之間用逗號分割
當然,也可以匹配用戶
Match User mysftp
這樣就可以匹配用戶了,多個用戶名之間也是用逗號分割,但我們這里按組匹配更靈活和方便
ChrootDirectory /data/sftp/%u
用chroot將用戶的根目錄指定到/data/sftp/%u,%u代表用戶名,這樣用戶就只能在/data/sftp/%u下活動,chroot的含義,可以參考這里:http://www.ibm.com/developerworks/cn/linux/l-cn-chroot/
ForceCommand internal-sftp
指定sftp命令
AllowTcpForwarding no
X11Forwarding no
這兩行,如果不希望該用戶能使用埠轉發的話就加上,否則刪掉
5、設定Chroot目錄許可權
# chown root:sftp /data/sftp/mysftp
# chmod 755 /data/sftp/mysftp
錯誤的目錄許可權設定會導致在log中出現」fatal: bad ownership or modes for chroot directory XXXXXX」的內容
目錄的許可權設定有兩個要點:
1、由ChrootDirectory指定的目錄開始一直往上到系統根目錄為止的目錄擁有者都只能是root
2、由ChrootDirectory指定的目錄開始一直往上到系統根目錄為止都不可以具有群組寫入許可權
所以遵循以上兩個原則
1)我們將/data/sftp/mysftp的所有者設置為了root,所有組設置為sftp
2)我們將/data/sftp/mysftp的許可權設置為755,所有者root有寫入許可權,而所有組sftp無寫入許可權
6、建立SFTP用戶登入後可寫入的目錄
照上面設置後,在重啟sshd服務後,用戶mysftp已經可以登錄,但使用chroot指定根目錄後,根應該是無法寫入的,所以要新建一個目錄供mysftp上傳文件。這個目錄所有者為mysftp,所有組為sftp,所有者有寫入許可權,而所有組無寫入許可權
# mkdir /data/sftp/mysftp/upload
# chown mysftp:sftp /data/sftp/mysftp/upload
# chmod 755 /data/sftp/mysftp/upload
7、重啟sshd服務
# service sshd restart
到這里,mysftp已經可以通過sftp客戶端登錄並可以上傳文件到upload目錄。
如果還是不能在此目錄下上傳文件,提示沒有許可權,檢查SElinux是否關閉,可以使用如下指令關閉SElinux
關於Linux命令的介紹,看看《linux就該這么學》,具體關於這一章地址3w(dot)linuxprobe/chapter-02(dot)html
修改/etc/selinux/config文件中的SELINUX="" 為 disabled ,然後重啟。或者
# setenforce 0
㈧ 如何在 Linux 系統中如何更改 SFTP 埠
SFTP(SSH文件傳輸協議)是一種安全文件協議,用於通過加密連接在兩個主機之間傳輸文件。 它還允許您對遠程文件執行各種文件操作並恢復文件傳輸。
SFTP可以替代舊版FTP協議。 它具有FTP的所有功能,但連接更加安全。
本文介紹了如何在Linux中更改默認的SFTP埠。 我們還將向您展示如何配置防火牆以允許在新埠上使用。
SFTP是SSH的子系統,並提供與SSH相同級別的安全性。
默認的SFTP埠為22。
更改默認的 SFTP / SSH 埠可以降低自動攻擊的風險,從而為伺服器增加一層額外的安全保護。
下面的步驟詳細講解了如何更改SFTP默認埠:
在Linux中,低於1024的埠號是為知名服務保留的,只能由root綁定。 盡管可以將1-1024范圍內的埠用於SSH服務以避免埠分配問題,但建議選擇1024以上的埠。
本示例說明如何將SFTP/SSH埠更改為2222,但是您可以選擇自己喜歡的任何埠。
更改SFTP / SSH埠之前,您需要在防火牆中打開新埠。
如果您正在使用UFW(Ubuntu中的默認防火牆),請運行以下命令以打開埠:
在 CentOS 中,默認的防火牆管理工具是 FirewallD 。 要打開埠,請輸入以下命令:
CentOS用戶還需要調整SELinux規則以允許新的SSH埠:
如果您使用的是另一個運行 iptables 的 Linux發行版 ,請打開新的埠運行:
SSH伺服器配置存儲在 /etc/ssh/sshd_config 文件中。 使用文本編輯器打開文件:
搜索以埠22開頭的行。通常,該行使用井號(#)注釋掉。 刪除哈希號,然後輸入新的SSH埠號:
編輯配置文件時要非常小心。 錯誤的配置可能會阻止SSH服務啟動。
完成後,保存文件並重新啟動SSH服務以使更改生效:
在CentOS中,SSH服務名為sshd:
驗證SSH守護程序正在偵聽新埠:
ss -an | grep 2222
輸出應如下所示:
要指定埠號,請使用 -P 選項調用 sftp 命令 ,後跟新的埠號:
如果使用的是GUI SFTP客戶端,只需在客戶端界面中輸入新埠。
默認的SFTP埠為22。但是,您可以將埠更改為所需的任何數字。
如果您定期連接到多個系統,則可以通過在SSH配置文件中定義所有連接來簡化工作流程。
如有任何疑問,請隨時發表評論。
㈨ sftp怎麼指定埠號
配置SFTP 發送埠的步驟在BizTalk Server 管理控制台中,創建新的發送埠或雙擊現有發送埠以對其進行修改。有關詳細信息,請參閱如何創建發送埠。配置所有發送埠選項,並為「常規」選項卡「傳輸」部分的「類型」選項指定「SFTP」。在「常規」選項卡的「傳輸」部分中,單擊「配置」按鈕。在「SFTP 傳輸屬性」對話框的「常規」選項卡上,指定以下值:02 使用此選項 執行此操作 ConnectionLimit指定伺服器允許的並行打開的最大連接數。0 表示無限制。AccessAnySSHServerHostKey如果設置為 True,則發送埠接受來自伺服器的任何 SSH 公共主機密鑰。如果設置為 False,則埠會將該主機密鑰與在「SSHServerHostKey」屬性中指定的密鑰進行匹配。默認值:FalseClientAuthenticationMode指定發送埠用於對連接 SSH 伺服器的客戶端進行身份驗證的身份驗證方法。如果設置為「密碼」,則必須在「密碼」屬性中指定值。如果設置為 PublicKeyAuthentication,則必須在 PrivateKey 屬性中指定用戶的私鑰。此外,如果該私鑰受密碼保護,則還要為 PrivateKeyPassword 屬性指定密碼。默認值: 密碼Password如果將 ClientAuthenticationMode 設置為「密碼」,則指定 SFTP 用戶密碼。PrivateKey如果將 ClientAuthenticationMode 設置為 PublicKeyAuthentication,則指定 SFTP 用戶的私鑰。PrivateKeyPassword指定私鑰密碼,如果在 PrivateKey 屬性中指定的密鑰要求這樣做。SSHServerHostKeyFingerprint如果將 AccessAnySSHServerHostKey 屬性設置為 False,則指定適配器用於對伺服器進行身份驗證的伺服器指紋。如果指紋不匹配,則連接會失敗。用戶名指定安全 FTP 伺服器的用戶名。AppendIfExists如果目標位置已存在要傳輸到安全 FTP 伺服器的文件,則此屬性用於指定是否應將所傳輸文件中的數據附加到現有文件中。如果設置為 True,則附加數據。如果設置為 False,則覆蓋目標伺服器上的文件。默認值:FalseFolderPath指定進行文件復制的安全 FTP 伺服器上的文件夾路徑。埠指定在其上進行文件傳輸的安全 FTP 伺服器的埠地址。ServerAddress指定安全 FTP 伺服器的伺服器名稱或 IP 地址。TargetFileName指定將文件傳輸到安全 FTP 伺服器時使用的名稱。你還可以將宏用於目標文件名。先後單擊「確定」兩次以保存設置。
㈩ 如何使用 SFTP 安全地傳輸文件
1.常用登陸方式:
格式:sftp @
通過sftp連接,埠為默認的22,指定用戶。
2.查看sftp支持的命令
使用help命令,查看支持的命令,如:
sftp>help
(其中命令前面有「l」表示本地執行,其他表示在所登錄的遠程主機上面執行)
3.基本的使用
sftp主要是用來傳輸文件的,包括上傳文件(從本機到遠程主機) ,下載文件(從遠程主機到本機)。
(1)文件下載
get [-Ppr] remote [local]
如:get test.cpp ./Project/
將遠程當前目錄下的文件test.cpp下載到本地當前目錄的Project文件夾中。
(2)文件上傳
put [-Ppr] local [remote]
如:put /home/liu/Software/RHEL_5.5\ x86_64.iso /home/xudong/Blog/
將本地/home/liu/Software/目錄下的ios文件傳送到遠程登陸主機的/home/xudong/Blog/目錄下。
(3)其他命令
可以使用命令還是有幾個的,如ls、lls;cd、lcd;pwd、lpwd等。具體查看help輸出吧。