pssh 和 pscp 都是用于在計算機網(wǎng)絡(luò)中進行批量操作的工具,但它們分別用于執(zhí)行命令和傳輸文件。以下是關(guān)于這兩個工具的概述:
pssh 是 "Parallel SSH" 的縮寫,用于在多臺遠程服務(wù)器上并行執(zhí)行命令。
pscp 是 putty提供的一個小工具PuTTY Secure Copy client,適用于ssh連接的兩臺機器間安全的傳輸文件,通過它可以方便的從windows上的文件上傳至linux服務(wù)器,也可以將linux服務(wù)器上的文件下載到windows上
總之,pssh 和 pscp 都是為了在計算機網(wǎng)絡(luò)環(huán)境中進行批量操作而設(shè)計的工具。pssh 用于在多臺遠程服務(wù)器上并行執(zhí)行命令,而 pscp 用于在 Windows 主機和遠程主機之間傳輸文件。無論是在管理服務(wù)器還是在文件傳輸方面,這兩個工具都可以提高效率并簡化任務(wù)。
sudo yum install pssh
請注意,安裝命令可能會因操作系統(tǒng)版本和軟件庫的不同而有所變化。
如果你需要手動下載和安裝 pssh,可以訪問 pssh 項目的官方源代碼庫或發(fā)布頁面。你可以在以下鏈接中找到相關(guān)信息:
pssh -h hosts.txt -l username -A -i "your-command"
在 pssh 命令中,有許多參數(shù)可以幫助你控制并定制你在遠程服務(wù)器上執(zhí)行的任務(wù)。以下是一些常見的 pssh 命令參數(shù)的講解:
這些是一些常見的參數(shù),還有其他更多的參數(shù)和選項可用于定制 pssh 命令的行為。為了獲得詳細的參數(shù)說明和示例,你應(yīng)該查閱 pssh 的官方文檔或使用命令行中的 --help 參數(shù)來獲取幫助信息。不同版本的 pssh 可能會有略微不同的參數(shù)和功能,所以最好參考最新的文檔來獲得準確的信息。
示例用法:
# pssh -h hosts.txt -l myuser [-A] -i "sudo yum update && sudo yum upgrade -y"
pssh -h iplist -l root -i "hostname"
# - `-p <parallel-count>`:指定并行連接的數(shù)量。這決定了同時連接的遠程服務(wù)器數(shù)目。默認的并發(fā)數(shù)(也稱為并發(fā)度)通常是 32。
pssh -h iplist -l root -p 10 -i "hostname"
# -o,將結(jié)果輸出對應(yīng)的目錄下,每個主機一個獨立的文件,例如:cat /tmp/outdir/local-168-182-110
pssh -h iplist -l root -o /tmp/outdir -i "hostname"
# `-O <option>`:設(shè)置 SSH 連接選項。可以使用多次以設(shè)置不同的選項。
# 例如,你可以使用 -O "StrictHostKeyChecking=no" 來禁用 SSH 主機密鑰的嚴格檢查。
pssh -h iplist -l root -O "StrictHostKeyChecking=no" -o /tmp/outdir -i "hostname"
在這個示例中,pssh 命令將從 hosts.txt 文件中讀取主機列表,在用戶名 "myuser" 下登錄,交互式地要求輸入密碼,然后在所有遠程服務(wù)器上執(zhí)行給定的命令(更新和升級軟件包)。
需要注意的是,在使用之前,你需要在系統(tǒng)上安裝 pssh。它通常可以通過 Linux 發(fā)行版的包管理器進行安裝。另外,pssh 可能還有更高級的功能和選項,超出了本文所介紹的內(nèi)容,所以請務(wù)必查閱文檔,全面了解其功能。
pscp 是 PuTTY 工具集的一部分,通常你需要安裝整個 PuTTY 工具集,而不僅僅是 pscp。以下是在不同操作系統(tǒng)上安裝 PuTTY 工具集的基本步驟:
前往 PuTTY 官方網(wǎng)站的下載頁面:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
下載 PuTTY 安裝程序,通常是一個 .msi 文件。
運行下載的安裝程序,按照安裝向?qū)У闹甘具M行安裝。安裝過程中可能會詢問你是否要安裝其他 PuTTY 工具,例如 pscp、plink 等。請確保選擇安裝這些附加工具。
sudo yum install putty
以下是一些常見的 pscp 命令參數(shù)的講解:
命令用法: pscp [參數(shù)] 源文件1 [源文件2…] [用戶名@]服務(wù)器地址:目標文件
命令用法: pscp [參數(shù)] [用戶名@服務(wù)器地址]:源文件 目標文件
以下是一些常見的 pssh 命令參數(shù)的講解:
【命令用法:】pscp [參數(shù)] 源文件1 [源文件2…] [用戶名@]服務(wù)器地址:目標文件
示例如下:
# 1、傳單個文件
pscp 111.txt root@192.168.192.110:/root/
# 2、傳多個文件
pscp 111.txt 222.txt root@192.168.192.110:/root/
scp /home/person/hww/abc.sql root@192.168.1.1:/home/person/hww
# 3、傳文件夾,傳文件夾需要加上參數(shù)-r
pscp -r mywindir root@192.168.192.110:/root/
【溫馨提示】不支持通配符。
【命令用法】pscp [參數(shù)] [用戶名@服務(wù)器地址]:源文件 目標文件
示例如下:
# 1、傳單個文件,從Linux 機器上拉取文件
pscp root@192.168.192.110:/root/001.cpp ./
# 2、傳多個文件,從Linux 機器上拉取文件
pscp root@192.168.192.110:/root/*.cpp ./
# 3、傳文件夾,傳文件夾需要加上參數(shù)-r
pscp -r root@192.168.192.110:/root/mydir ./
# 4、PS 指定端口
pscp -P 222 root@192.168.192.110:/root/001.cpp ./
pssh 工具用的比較多,pscp用得比較少,這兩個工具的介紹就先到這里了,有任何疑問請關(guān)注我公眾號:大數(shù)據(jù)與云原生技術(shù)分享,進行技術(shù)交流,如本篇文章對您有所幫助,麻煩幫忙一鍵三連(點贊、轉(zhuǎn)發(fā)、收藏)~
一、簡介Vsftp的兩種工作模式:
(1) PORT(主動模式)
PORT中文稱為主動模式,工作的原理: FTP客戶端連接到FTP服務(wù)器的21端口,發(fā)送用戶名和密碼登錄,登錄成功后要list列表或者讀取數(shù)據(jù)時,客戶端隨機開放一個端口(1024以上),發(fā)送 PORT命令到FTP服務(wù)器,告訴服務(wù)器客戶端采用主動模式并開放端口;FTP服務(wù)器收到PORT主動模式命令和端口號后,通過服務(wù)器的20端口和客戶端開放的端口連接,發(fā)送數(shù)據(jù),原理如下圖:
主動模式
(2) PASV(被動模式)
PASV是Passive的縮寫,中文成為被動模式,工作原理:FTP客戶端連接到FTP服務(wù)器的21端口,發(fā)送用戶名和密碼登錄,登錄成功后要list列表或者讀取數(shù)據(jù)時,發(fā)送PASV命令到FTP服務(wù)器, 服務(wù)器在本地隨機開放一個端口(1024以上),然后把開放的端口告訴客戶端, 客戶端再連接到服務(wù)器開放的端口進行數(shù)據(jù)傳輸,原理如下圖:
被動模式
二、安裝過程:
1.)簡易安裝
1.[root@hwg1227 /]# rpm -qa | grep vsftp 2.[root@hwg1227 /]# yum install vsftpd* -y 3.[root@hwg1227 /]# rpm -ql vsftpd 4.[root@hwg1227 /]# cd /etc/vsftpd 5.[root@hwg1227 vsftpd]# ll total 20 -rw-------. 1 root root 125 Mar 1 2013 ftpusers -rw-------. 1 root root 361 Mar 1 2013 user_list -rw-------. 1 root root 4599 Mar 1 2013 vsftpd.conf -rwxr--r--. 1 root root 338 Mar 1 2013 vsftpd_conf_migrate.sh 6.[root@hwg1227 vsftpd]# cp vsftpd.conf vsftpd.conf.bak 7.[root@hwg1227 vsftpd]# vi vsftpd.conf 8. [root@hwg1227 vsftpd]# cat vsftpd.conf.bak |grep -v ^# anonymous_enable=YES local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES
9.[root@hwg1227 vsftpd]# cat vsftpd.conf.bak |grep -v ^# >vsftpd.conf /將ftp配置文件過濾導(dǎo)入到vsftpd.conf下
10.[root@hwg1227 vsftpd]# vi vsftpd.conf 11.[root@hwg1227 vsftpd]# /etc/init.d/vsftpd start Starting vsftpd for vsftpd: [ OK ] 12.[root@hwg1227 vsftpd]# netstat -tnlp 13.[root@hwg1227 vsftpd]# netstat -tnlp | grep vsftpd 14.[root@hwg1227 vsftpd]# ps -ef |grep vsftpd /查看ftp進程 15.[root@hwg1227 vsftpd]# cd /var/ftp/pub /ftp的共享目錄路徑
16.在我的電腦輸入ftp://192.168.0.26
share
17.到此初步的FTP共享設(shè)置完成。
2.)VSFTP虛擬用戶配置:
在home 目錄下創(chuàng)建3個用戶 hr admin it 并設(shè)置密碼
1.[root@hwg1227 /]# cd /home 2.[root@hwg1227 home]# mkdir vsftpd 3.[root@hwg1227 home]#cd vsftpd 4.[root@hwg1227 vsftpd]# mkdir hr admin it 5.[root@hwg1227 vsftpd]# ll total 12 drwxr-xr-x. 2 root root 4096 Apr 16 21:23 admin drwxr-xr-x. 2 root root 4096 Apr 16 21:23 hr drwxr-xr-x. 2 root root 4096 Apr 16 21:23 it
6.在home目錄下創(chuàng)建一個loguser.txt文件,然后再安裝一個認證加密的軟件pam db4
7.[root@hwg1227 home]# cat loguser.txt hr hr01 admin ad01 it it01 8.[root@hwg1227 home]# yum -y install pam* db4* 9.[root@hwg1227 home]# db_load -T -t hash -f /home/loguser.txt /etc/vsftpd/vsftpd_login.db /生成加密文件 10.[root@hwg1227 home]# ll /etc/vsftpd/ 總計 36 -rw------- 1 root root 125 2013-01-09 ftpusers -rw------- 1 root root 361 2013-01-09 user_list -rw------- 1 root root 233 04-17 09:17 vsftpd.conf -rw------- 1 root root 4579 04-17 09:16 vsftpd.conf.bak -rwxr--r-- 1 root root 338 2013-01-09 vsftpd_conf_migrate.sh -rw-r--r-- 1 root root 12288 04-17 09:29 vsftpd_login.db
11.[root@hwg1227 home]# chmod 600 /etc/vsftpd_login.db /給文件600權(quán)限(設(shè)置一下數(shù)據(jù)庫文件的訪問權(quán)限)
12.配置PAM文件,編輯文件/etc/pam.d/vsftpd.vu文件。
[root@hwg1227 home]# ll /etc/pam.d/ -rw-r--r-- 1 root root 97 2007-03-15 system-config-nfs -rw-r--r-- 1 root root 118 2009-09-03 system-config-samba -rw-r--r-- 1 root root 97 2010-01-27 system-config-securitylevel -rwxr-xr-x 1 root root 118 2010-03-31 system-config-services -rw-r--r-- 1 root root 329 2013-01-09 vsftpd [root@hwg1227 vsftpd]# ll /etc/pam.d/vsftpd -rw-r--r-- 1 root root 329 2013-01-09 /etc/pam.d/vsftpd 13. [root@hwg1227 vsftpd]#vi /etc/pam.d/vsftpd 14.[root@hwg1227 vsftpd]# cat /etc/pam.d/vsftpd /這里主機是32位的 如果是64位是/lib64/security/pam_userdb.so #%PAM-1.0 auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login session optional pam_keyinit.so force revoke auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed auth required pam_shells.so auth include system-auth account include system-auth session include system-auth session required pam_loginuid.so
15.為虛擬用戶創(chuàng)建本地系統(tǒng)用戶,新建一個系統(tǒng)用戶vsftpd,用戶家目錄為/home/vsftpd, 用戶登錄終端設(shè)為/bin/false(即使之不能登錄系統(tǒng))
[root@hwg1227vsftpd]# useradd vsftpd -d /home/vsftpd -s /bin/false [root@hwg1227 vsftpd]# chown -R vsftpd:vsftpd /home/vsftpd [root@hwg1227 home]# ll 總計 16 -rw-r--r-- 1 root root 36 04-17 09:21 loguser.txt drwxr-xr-x 5 vsftpd vsftpd 4096 04-17 09:20 vsftpd drwxr-xr-x 2 root root 4096 04-10 20:47 zl 16.[root@hwg1227 home]# vi /etc/vsftpd/vsftpd.conf listen=YES
#使vsftpd處于獨立啟動監(jiān)聽端口模式
anonymous_enable=NO
#禁止匿名用戶訪問
dirmessage_enable=YES
#激活目錄信息,當遠程用戶更改目錄時,將出現(xiàn)提示信息
xferlog_enable=YES
#啟用上傳和下載日志功能
xferlog_file=/var/log/vsftpd.log
#日志文件存放目錄
xferlog_std_format=YES
#是否使用標準的ftpd xferlog日志文件格式
chroot_local_user=YES
#設(shè)置所有的本地用戶可以chroot
guest_enable=YES
#訪客模式開啟
guest_username=vsftpd
#訪客使用的系統(tǒng)賬號
user_config_dir=/etc/vsftpd/vsftpd_user_conf
#用戶的配置文件
pam_service_name=vsftpd
#認證用戶的數(shù)據(jù)庫文件
local_enable=YES
#開啟本地用戶
17.[root@hwg1227 home]# mkdir /etc/vsftpd/vsftpd_user_conf 18.[root@hwg1227 home]# cd /etc/vsftpd/vsftpd_user_conf 19.[root@hwg1227 vsftpd_user_conf]# touch hr admin it 20.[root@hwg1227 vsftpd_user_conf]# cat hr local_root=/home/vsftpd/hr [root@hwg1227 vsftpd_user_conf]# cat amin local_root=/home/vsftpd/admin [root@hwg1227 vsftpd_user_conf]# cat it write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES local_root=/home/vsftpd/it 21.[root@hwg1227 vsftpd_user_conf]# cd /home/vsftpd/hr [root@hwg1227 hr]#touch abc.txt [root@hwg1227 hr]#echo "this is hr files" >abc.txt [root@hwg1227 admin]# touch def.txt [root@hwg1227 admin]# echo "this is admin files" >def.txt [root@hwg1227 it]#touch ggc.txt [root@hwg1227 it]#echo "this is admin files" >ggc.txt
22.在瀏覽器輸入ftp://192.168.0.26來測試安裝的正確性,到此處安裝結(jié)束。
有時候在工作時需要臨時傳遞一些文件需要使用FTP的方式共享文件也是挺方便的,2種模式的共享方式各有優(yōu)缺點,最重要的事你選擇最快最正確的方式來完成工作才是關(guān)鍵。