Linux—常用服務器構建—ftp、nfs、ssh、telent

常用服務器構建

1. ftp

  FTP 是用來在兩臺計算機之間傳輸文件,是 Internet 中應用非常廣泛的服務之一。它可根據實際需要設置各用戶的使用權限,同時還具有跨平臺的特性,即在 UNIXLinuxWindows 等操作系統中都可實現 FTP 客戶端和服務器,相互之間可跨平臺進行文件的傳輸。因此,FTP 服務是網絡中經常採用的資源共享方式之一。FTP 協議有 PORTPASV 兩種工作模式,即主動模式被動模式

  FTP(File Transfer Protocol)即文件傳輸協議,是一種基於 TCP 的協議,採用客戶/服務器模式。通過 FTP 協議,用戶可以在 FTP 服務器中進行文件的上傳或下載等操作。雖然現在通過 HTTP 協議下載的站點有很多,但是由於 FTP 協議可以很好地控制用戶數量和寬帶的分配,快速方便地上傳、下載文件,因此 FTP 已成爲網絡中文件上傳和下載的首選服務器。同時,它也是一個應用程序,用戶可以通過它把自己的計算機與世界各地所有運行 FTP 協議的服務器相連,訪問服務器上的大量程序和信息。FTP 服務的功能是實現完整文件的異地傳輸。特點如下:
  (一)FTP 使用兩個平行連接:控制連接和數據連接。控制連接在兩主機間傳送控制命令,如用戶身份、口令、改變目錄命令等。數據連接只用於傳送數據。
  (二)在一個會話期間,FTP 服務器必須維持用戶狀態,也就是說,和某一個用戶的控制連接不能斷開。另外,當用戶在目錄樹中活動時,服務器必須追蹤用戶的當前目錄,這樣,FTP就限制了併發用戶數量。
  (三)FTP 支持文件沿任意方向傳輸。當用戶與一遠程計算機建立連接後,用戶可以獲得一個遠程文件也可以將一本地文件傳輸至遠程機器。

1.1 ftp 服務器

  FTP 服務器(File Transfer Protocol Server)是在互聯網上提供文件存儲和訪問服務的計算機,它們依照 FTP 協議提供服務。 FTPFile Transfer Protocol(文件傳輸協議)。顧名思義,就是專門用來傳輸文件的協議。簡單地說,支持 FTP 協議的服務器就是 FTP 服務器。

1. 安裝 vsftpd 服務器
sudo apt-get install vsftpd

  vsftpd 是 “very secure FTP daemon(非常安全的 FTP 守護程序/進程)” 的縮寫,安全性是它的一個最大的特點。vsftpd 是一個 UNIX 操作系統上運行的服務器的名字,它可以運行在諸如 LinuxBSDSolarisHP-UNIX 等系統上面,是一個完全免費的、開發源代碼的 ftp 服務器軟件,支持很多其他的 FTP 服務器所不支持的特徵。比如:非常高的安全性需求、帶寬限制、良好的可伸縮性、可創建虛擬用戶、支持 IPv6、速率高等。

2. 配置 vsftpd.conf 文件

  當我們重新安裝一個軟件時,都要修改一下軟件的基本配置,爲了我們使用起來更方便,所以安裝一個服務器,也需要修改一下服務器的默認配置。

sudo vi /etc/vsftpd.conf (etc 是一個 root 目錄,操作 ect 下的文件都要 root 權限。 .conf 是配置文件)

  添加下面設置:

#(允許匿名用戶訪問) YES 大小寫都可以
anonymous_enable=YES 
#(匿名用戶登錄到服務器以後,匿名用戶所在的根目錄爲/home/uesrname/ftp,
#換一句話說,就是我這個服務器共享的目錄是/home/uesrname/ftp,
#也就是別的用戶通過ftp登錄到我這個服務器,所能看到的就是目錄/home/uesrname/ftp中的內容,
#這個目錄必須要已經存在!!!)
anon_root=/home/uesrname/ftp
#(匿名用戶登錄我這個服務器不需要密碼,可以直接訪問)
no_anon_password=YES
#(允許匿名用戶進行寫操作)
write_enable=YES
#(允許匿名用戶上傳東西)
anon_upload_enable=YES
#(允許匿名用戶創建目錄)
anon_mkdir_write_enable=YES
#(修改匿名用戶上傳文件後對文件操作的權限)
anon_umask=0022
3. 重啓服務器,重新加載 /etc/vsftpd.conf 配置文件

  當服務器配置都修改好並且已經保存了之後,需要重啓一下服務器,重新加載 /etc/vsftpd.conf 配置文件,所修改的配置才能生效。

#Ubuntu 12.04 下
sudo /etc/init.d/vsftpd restart
#Ubuntu 14.04 下
sudo /lib/init/upstart-job vsftpd restart
4. 進入你的 /home/username/ftp 目錄下創建一個空目錄,供用戶上傳
cd ~/ftp
mkdir anonymous
chmod 777 anonymous (使匿名用戶足夠的操作權限)
5. 測試上傳功能,登陸 ftp 服務器,進入到 anonymous 目錄
ftp IP(你要連接的主機的地址)
cd anonymous
6. 上傳命令,可以把你當前目錄下的文件上傳到 ftp 服務器的 anonymous 目錄
put somefile	(上傳)
get somefile	(下載)

1.2 ftp 客戶端

  Ubuntu 默認已經安裝 ftp 客戶端,ftp 賬戶登錄不安全,約等於明文傳輸,會被截取賬號信息;ftp 不能下載/上傳文件夾。

1.3 lftp 客戶端

  lftp 也是一種 ftp 客戶程序。它是以文本方式操作的,但是比起圖形界面更爲方便。lftp 幾乎具有 bash 的所有方便功能,Tab 補全,bookmarkqueue, 後臺下載等可以得到支持。用法與 ftp 類似,主要的指令如下:

put 		上傳文件
mput 		上傳多個文件
get 		下載文件
mget 		下載多個文件
mirror 		下載整個目錄及其子目錄
mirror –R 	上傳整個目錄及其子目錄
!command 	調用本地 shell 執行命令 command

  注意,有的發行版可能缺省沒有安裝 lftp 工具,需要用戶自己安裝。如果是 DebianUbuntu 系統,則安裝 lftp 軟件包。

sudo apt-get install lftp

2. nfs

1. 安裝 nfs 服務器

sudo apt-get install nfs-kernel-server

2. 設置 /etc/exports 配置文件

sudo vi /etc/exports

  添加這行配置

/home/用戶名/nfs *(rw,sync,no_root_squash)

3. 在用戶目錄下創建 nfs 目錄

mkdir /home/用戶名/nfs

4. 重啓服務器,重新加載配置文件

sudo /etc/init.d/nfs-kernel-server restart

5. 在 /home/ 用戶名 /nfs 目錄下創建測試文件 hello

cd /home/用戶名/nfs
touch hello

6. 測試服務器,把服務器共享目錄 nfs 掛在到 /mnt 節點

sudo mount -t nfs -o nolock -o tcp IP:/home/用戶名/nfs /mnt

7. 進入 /mnt 目錄可以看到 hello 文件,表示構建成功

8. 卸載網絡共享目錄

sudo umount /mnt

3. ssh

1. 安裝 ssh 服務器

sudo apt-get install openssh-server

2. 遠程登陸

ssh 用戶名@IP

4. telnet

  明文傳輸數據,意思就是不加密傳輸數據,這樣傳輸是不安全的,請大家自行測試在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章