目錄
一、FTP Server
1.1.簡介
1.2.FTP基礎
1.2.1.控制端口
1.2.2.數據端口
1.3.FTP Server默認配置
1.3.1.安裝vsftp
1.3.2.準備分發的文件
1.3.3.啟動服務
1.3.4.關閉防火墻
1.4.FTP Client(默認僅能下載文件)
1.4.1.LinuxFTP客戶端程序1:lftp
1)安裝客戶端工具
2)訪問服務器
3)查看并下載
1.4.2.LinuxFTP客戶端程序2:wget
1.4.3.啟動上傳功能
配置文件簡介
1)檢查禁用匿名賬戶登錄開啟
2)配置上傳指令
3)創建上傳目錄
4)客戶端測試
5)系統用戶的配置
匿名開放模式
本地用戶模式
虛擬用戶模式
6)其他系統客戶機的訪問
二、NFS Server
2.1.名詞解釋
2.1.1.案例環境
2.2.NAS(存儲端)(關閉防火墻)
2.2.1.安裝NFS服務器
2.2.2.配置NFS服務器
2.2.3.啟動NFS服務器
2.3.web1客戶端(關閉防火墻)
2.3.1.安裝NFS客戶端
2.3.2.查看存儲端共享
2.3.3. 手動掛載
2.3.4.查看掛載
2.3.5.使用web客戶端查看web服務器
2.4.測試網站訪問
三、SSH SERVER
3.1.簡介
3.2.SSH 服務器實戰
1、登錄CentOS
2、查詢SSH是否安裝
3、SSH服務管理
4、使用SSH遠程管理
5、免密登錄
一、FTP Server
1.1.簡介
FTP(File Transfer Protocol,文件傳輸協議) 是 TCP/IP 協議組中應用層的協議之一,作用是提供文件共享服務。
互聯網上大多數的媒體資源和軟件資源。都是通過FTP服務器傳遞的。
軟件包:vsftpd
1.2.FTP基礎
1.2.1.控制端口
????????控制端口(command)21/tcp
1.2.2.數據端口
????????數據端口(data) 20/tcpf
1.3.FTP Server默認配置
1.3.1.安裝vsftp
yum install -y vsftpd
1.3.2.準備分發的文件
touch /var/ftp/test_ftp.txt
注意:FTP服務器的主目錄:“/var/ftp/",是FTP程序分享內容的本機目錄。
1.3.3.啟動服務
# systemctl start vsftpd
# systemctl enable vsftpd
查看:netstat -anpt
1.3.4.關閉防火墻
# systemctl stop firewalld
# systemctl disable firewalld
# setenforce 0
????????vim /etc/selinux/config
????????修改內容為:SELINUX = disabled
1.4.FTP Client(默認僅能下載文件)
任何系統的firefox,IE。
????????1.客戶機打開瀏覽器
????????2.輸入“ftp://服務器IP地址”
????????默認僅能下載文件,無法上傳文件。
1.4.1.LinuxFTP客戶端程序1:lftp
1)安裝客戶端工具
????????yum -y install lftp
這里安裝如果出問題,檢查一下yum源。騰訊云可以用。
[root@hadooptest yum.repos.d]# cat CentOS-Base.repo
# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#[os]
name=Qcloud centos os - $basearch
baseurl=http://mirrors.cloud.tencent.com/centos/$releasever/os/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-7[updates]
name=Qcloud centos updates - $basearch
baseurl=http://mirrors.cloud.tencent.com/centos/$releasever/updates/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-7[centosplus]
name=Qcloud centosplus - $basearch
baseurl=http://mirrors.cloud.tencent.com/centos/$releasever/centosplus/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-7[cr]
name=Qcloud centos cr - $basearch
baseurl=http://mirrors.cloud.tencent.com/centos/$releasever/cr/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-7[extras]
name=Qcloud centos extras - $basearch
baseurl=http://mirrors.cloud.tencent.com/centos/$releasever/extras/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-7[fasttrack]
name=Qcloud centos fasttrack - $basearch
baseurl=http://mirrors.cloud.tencent.com/centos/$releasever/fasttrack/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-7
[root@hadooptest yum.repos.d]#
2)訪問服務器
????????lftp 服務器的IP地址
3)查看并下載
[root@hadooptest yum.repos.d]# lftp 192.168.75.147
lftp 192.168.75.147:~> ls
-rw-r--r-- ? ?1 0 ? ? ? ?0 ? ? ? ? ? ? ?25 Jul 21 21:15 ftp_test.txt
drwxr-xr-x ? ?2 0 ? ? ? ?0 ? ? ? ? ? ? ? 6 May 11 ?2016 pub
# 下載文件
lftp 192.168.75.147:/> get ftp_test.txt
25 bytes transferred
lftp 192.168.75.147:/> get pub/
get: Access failed: 550 Failed to open file. (pub/)
lftp 192.168.75.147:/> get pub
# 下載目錄
lftp 192.168.75.147:/> mirror pub
Total: 1 directory, 0 files, 0 symlinks
lftp 192.168.75.147:/>
1.4.2.LinuxFTP客戶端程序2:wget
檢查是否安裝wget
[root@hadooptest ftp_test]# wget ftp://192.168.75.147/ftp_test.txt
--2025-07-21 21:52:08-- ?ftp://192.168.75.147/ftp_test.txt
? ? ? ? ? ?=> “ftp_test.txt”
正在連接 192.168.75.147:21... 已連接。
正在以 anonymous 登錄 ... 登錄成功!
==> SYST ... 完成。 ? ?==> PWD ... 完成。
==> TYPE I ... 完成。 ?==> 不需要 CWD。
==> SIZE ftp_test.txt ... 25
==> PASV ... 完成。 ? ?==> RETR ftp_test.txt ... 完成。
長度:25 (非正式數據)
100%[=================================================================================================================>] 25 ? ? ? ? ?--.-K/s ? in 0s
2025-07-21 21:52:08 (6.31 MB/s) - “ftp_test.txt” 已保存 [25]
-O 指定文件名和路徑。
[root@hadooptest ftp_test]# wget ftp://192.168.75.147/ftp_test.txt -O /tmp/ftp.sh
--2025-07-21 21:53:04-- ?ftp://192.168.75.147/ftp_test.txt
? ? ? ? ? ?=> “/tmp/ftp.sh”
正在連接 192.168.75.147:21... 已連接。
正在以 anonymous 登錄 ... 登錄成功!
==> SYST ... 完成。 ? ?==> PWD ... 完成。
==> TYPE I ... 完成。 ?==> 不需要 CWD。
==> SIZE ftp_test.txt ... 25
==> PASV ... 完成。 ? ?==> RETR ftp_test.txt ... 完成。
長度:25 (非正式數據)
100%[=================================================================================================================>] 25 ? ? ? ? ?--.-K/s ? in 0s
2025-07-21 21:53:04 (4.73 MB/s) - “/tmp/ftp.sh” 已保存 [25]
[root@hadooptest ftp_test]# cat /tmp/ftp.sh
hello world
this is ftp`
[root@hadooptest ftp_test]# wget http://nginx.org/download/nginx-1.10.2.tar.gz
1.4.3.啟動上傳功能
配置文件簡介
用于設定FTP服務器功能開啟或關閉的文件
# vim /etc/vsftpd/vsftpd.conf
1)檢查禁用匿名賬戶登錄開啟
目的:啟用/禁用匿名賬號
anonymous:匿名的;不具名的;不知姓名的;沒有特色的;名字不公開的
anonymous_enable=YES
//是否允許匿名用戶登錄ftp
2)配置上傳指令
啟動上傳文件的能力
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES
# 允許匿名用戶進行文件上傳
anon_upload_enable=YES
# 啟動創建目錄的能力
anon_mkdir_write_enable=YES
# 如果設置為YES,則允許匿名用戶執行除上載和創建目錄之外的寫入操作,例如刪除和重命名。通常不建議這樣做,但包括完整性。
anon_other_write_enable=YES
# 默認權限掩碼
anon_umask=022
# 匿名用戶主目錄
anon_root=/var/ftp
# 匿名用戶訪問速率
anon_max_rate=0
重啟ftp程序
systemctl restart vsftpd
3)創建上傳目錄
注意:上傳文件時,一定要來這個目錄。
mkdir /var/ftp/upload
chmod 777 /var/ftp/upload
4)客戶端測試
新建一個測試文件
LINUX系統訪問登錄FTP
lftp 192.168.75.147
上傳文件 anonymous_user.txt
進入之后
cd upload
put anonymous_test.txt
注意:這里報Access failed,說明當前upload目錄并沒有權限,所以我們需要給文件目錄賦權。并且還需要將SELinux置為0
上傳文件:
使用lftp給FTP上傳目錄
創建目錄
上傳目錄
# 下載遠程目錄到本地(默認)
mirror [遠程目錄] [本地目錄] ?# 上傳本地目錄到遠程(-R反向同步)
mirror -R [本地目錄] [遠程目錄]
5)系統用戶的配置
匿名用戶的訪問,用戶之間是沒有限制的。可以共同訪問資源。系統用戶訪問就很好的根據用戶權限。區分了訪問的資源。
匿名開放模式
匿名開放模式是一種最不安全的認證模式,任何人都可以無需密碼驗證而直接登錄到FTP服務器。這種模式一般用來訪問不重要的公開文件。
本地用戶模式
本地用戶模式是通過Linux系統本地的賬戶密碼信息進行認證的模式,相較于匿名開放模式更安全,而且配置起來相對簡單。但是如果被黑客破解了賬戶的信息,就可以暢通無阻地登錄FTP服
務器,從而完全控制整臺服務器。
虛擬用戶模式
虛擬用戶模式是這三種模式中最安全的一種認證模式,它需要為FTP服務單獨建立用戶數據庫文件,虛擬出用來進行口令驗證的賬戶信息,而這些賬戶信息在服務器系統中實際上是不存在的,
僅供FTP服務程序進行認證使用。這樣,即使黑客破解了賬戶信息也無法登錄服務器,從而有效降低了破壞范圍和影響。
使用本地用戶模式
# 禁止匿名訪問模式
anonymous_enable=NO
# 是否允許本地用戶登錄 FTP
local_enable=[YES|NO]
# 是否開放本地用戶的其他寫入權限
write_enable=[YES|NO]
# 本地用戶上傳文件的 umask 值
local_umask=022
6)其他系統客戶機的訪問
二、NFS Server
2.1.名詞解釋
NFS:Network File System 網絡文件系統,Linux/Unix系統之間共享文件的一種協議,NFS 的客戶端主要為Linux支持多節點同時掛載,以及并發寫入。
作用:提供文件共享服務,為 Web Server 配置集群中的后端存儲
2.1.1.案例環境
nas 192.168.142.133
NAS(Network Attached Storage:網絡附屬存儲)按字面簡單說就是連接在網絡上,具備資料存儲功能的裝置,因此也稱為“網絡存儲器”。
web1 192.168.75.210
關閉防火墻
#vi /etc/selinux/config
SELINUX=disabled
# setenforce 0
# systemctl stop firewalld
# systemctl disable firewalld
2.2.NAS(存儲端)(關閉防火墻)
Network Attached Storage:網絡附屬存儲,NFS是NAS的一種
2.2.1.安裝NFS服務器
這里測試了騰訊的yum源可以安裝nfs軟件,所以換一下源。
# yum -y install nfs-utils
# mkdir /root/webdata
存儲網站代碼,放置一個測試頁面。
2.2.2.配置NFS服務器
/etc/exports文件包含NFS服務器上可供NFS客戶端訪問的本地物理文件系統表的內容文件由服務器的系統管理員維護。
# vim /etc/exports
/webdata 192.168.75.0/24(rw)
注釋
/webdata指的是發布資源的目錄
192.168.75.0/24允許訪問NFS的客戶機
(rw)可讀可寫
2.2.3.啟動NFS服務器
# systemctl start nfs-server
# systemctl enable nfs-server
檢查NFS輸出是否正常
# exportfs -v
-v 檢查輸出的目錄
/root/webdata
192.168.75.0/24(rw,wdelay,no_root_squash,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash)
2.3.web1客戶端(關閉防火墻)
WEB1服務器
2.3.1.安裝NFS客戶端
# yum -y install nfs-utils httpd
# service httpd start
# service httpd enable
2.3.2.查看存儲端共享
# showmount -e 192.168.75.147
// 查詢NFS服務器可用目錄
查看的結果
2.3.3. 手動掛載
# mount -t nfs 192.168.75.147:/root/webdata
/var/www/html/
注釋
mount -t nfs 192.168.142.133:/root/webdata
/var/www/html
掛載命令 類型 nfs類型 nfs服務器地址:nfs輸出目錄
本地目錄
發現掛載不起:
no_root_squash 會賦予客戶端 root 完全權限,僅在可信局域網 中使用,生產環境建議用 root_squash 并通過普通用戶權限控制訪問。
2.3.4.查看掛載
# df
2.3.5.使用web客戶端查看web服務器
真機打開瀏覽器瀏覽網頁即可。
2.4.測試網站訪問
# firefox 192.168.75.147
在命令行中輸入 firefox 192.168.75.147 的作用是 啟動 Firefox 瀏覽器并嘗試訪問 IP 地址為 192.168.75.147 的服務器所提供的 Web 服務(默認通過 HTTP 協議訪問 80 端口)。
三、SSH SERVER
3.1.簡介
有沒有感覺在服務器的字符界面,進行選取,復制,粘貼,翻頁很不方便。所以就可借助SSH(安全外殼協議)遠程操作和管理系統,不僅方便而且安全可靠。
3.2.SSH 服務器實戰
1、登錄CentOS
2、查詢SSH是否安裝
查看SSH是否安裝。
輸入命令:rpm -qa | grep ssh/yum list installed | grep ssh
注:若沒安裝SSH則可輸入:yum install openssh-server安裝
3、SSH服務管理
配置文件管理:vim /etc/ssh/sshd_config
禁止root用戶遠程登錄
????????可設置為:?PermitRootLogin no
若需要允許root通過密鑰登錄(禁止密碼登錄)
????????可設置為:PermitRootLogin prohibit-password
結果:
Port 22:登錄端口22
啟動服務
????????(默認啟動)systemctl start sshd
查看端口
????????netstat -antp | grep sshd
????????22號端口提供者SSH服務
開機啟動
????????(默認啟動)systemctl enable sshd
4、使用SSH遠程管理
#ssh 賬戶名@IP地址
5、免密登錄
環境:192.168.142.134
業務服務器-數量非常大:192.168.142.129
跳板機
1.使用129遠程134需要使用密碼
2.在129生成秘鑰并傳遞給134
生成秘鑰
傳遞秘鑰
3.使用129遠程134-免密