Linux下FTP和TFTP服務配置
FTP和TFTP是我們經常使用的檔案傳輸協議。在Linux中,sftp協議由於其安全性的優點,被作為預設的連結協議。但是,一些場合下,我們依然需要使用ftp和tftp協議進行檔案傳輸。本篇主要介紹配置方法,供有需要的朋友待查。
1、 環境準備
我們選擇Linux 2.6核心進行測試。
[root@SimpleLinuxUp ~]# uname -r
2.6.18-128.el5
當前OS執行在level 3模式下。
[root@SimpleLinuxUp ~]# grep init /etc/inittab
# inittab This file describes how the INIT process should set up
# 0 - halt (Do NOT set initdefault to this)
# 6 - reboot (Do NOT set initdefault to this)
id:3:initdefault:
# System initialization.
si::sysinit:/etc/rc.d/rc.sysinit
預設情況下,tftp伺服器包是安裝上的,而FTP伺服器沒有安裝。
[root@SimpleLinuxUp Server]# rpm -qa | grep ftp
tftp-server-0.42-3.1
ftp-0.17-35.el5
lftp-3.5.1-2.fc6
2、TFTP伺服器安裝配置
TFTP是一種比較特殊的檔案傳輸協議。相對於FTP和目前經常使用的SFTP,TFTP是基於TCP/IP協議簇,用於進行簡單檔案傳輸,提供簡單、低開銷的傳輸服務。TFTP的埠設定為69。
相對於常見的FTP,TFTP有兩個比較好的優勢:
ü TFTP基於UDP協議,如果環境中沒有TCP協議,是比較合適的;
ü TFTP執行和程式碼佔用記憶體量比較小;
預設情況下,Linux內部是安裝了tftp伺服器包的。但是預設是不啟動的。
[root@SimpleLinuxUp ~]# chkconfig --list tftp
tftp off
啟用和禁用tftp服務是透過配置檔案/etc/xinetd.d/tftp,將其中引數設定。
[root@SimpleLinuxUp ~]# vi /etc/xinetd.d/tftp
# default: off
# description: The tftp server serves files using the trivial file transfer \
# protocol. The tftp protocol is often used to boot diskless \
# workstations, download configuration files to network-aware printers, \
# and to start the installation process for some operating systems.
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot -c
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
配置檔案中,將disable預設值從yes改為no。適當修改server_args引數,主要是其中的tftp根目錄地址。
Tftp服務是不需要單獨啟動的,是作為xinetd服務的一個附屬物件連帶啟動。
[root@SimpleLinuxUp ~]# service xinetd status
xinetd (pid 2194) is running...
[root@SimpleLinuxUp ~]# cd /
[root@SimpleLinuxUp /]# mkdir /tftpboot
mkdir: cannot create directory `/tftpboot': File exists
[root@SimpleLinuxUp /]# cd /tftpboot/
[root@SimpleLinuxUp tftpboot]# cd ..
[root@SimpleLinuxUp /]# chmod -R 777 /tftpboot/
由於連線使用UDP埠,我們將防火牆和SELinux配置關閉。
[root@SimpleLinuxUp /]# service iptables stop
[root@SimpleLinuxUp /]# service iptables status
Firewall is stopped.
對xinetd服務重啟,連帶將tftp服務啟動。
[root@SimpleLinuxUp /]# service xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
[root@SimpleLinuxUp /]# chkconfig --list tftp
tftp on
使用netstat判斷UDP埠開啟。
[root@SimpleLinuxUp /]# netstat -nlp | grep udp
udp 0 0 0.0.0.0:772 0.0.0.0:* 1868/rpc.statd
udp 0 0 0.0.0.0:775 0.0.0.0:* 1868/rpc.statd
udp 0 0 0.0.0.0:69 0.0.0.0:* 3869/xinetd
(篇幅原因,有省略……)
從遠端伺服器啟動連線,筆者從windows環境客戶端啟動。TFTP是可以不輸入使用者名稱和密碼的,所以對於安全檔案傳輸是不滿足的。
C:\Documents and Settings\liuzy>tftp
Transfers files to and from a remote computer running the TFTP service.
TFTP [-i] host [GET | PUT] source [destination]
-i Specifies binary image transfer mode (also called
octet). In binary image mode the file is moved
literally, byte by byte. Use this mode when
transferring binary files.
host Specifies the local or remote host.
GET Transfers the file destination on the remote host to
the file source on the local host.
PUT Transfers the file source on the local host to
the file destination on the remote host.
source Specifies the file to transfer.
destination Specifies where to transfer the file.
測試客戶端與伺服器根目錄之間的檔案互相複製傳輸。
C:\Documents and Settings\liuzy>tftp 192.168.0.100 put cogtrwin.ini
Transfer successful: 536 bytes in 1 second, 536 bytes/s
[root@SimpleLinuxUp tftpboot]# ls -l
total 12
-rw-rw-rw- 1 nobody nobody 507 Jan 28 10:39 cogtrwin.ini
drwxrwxrwx 4 root root 4096 Dec 26 09:46 linux-install
D:\>tftp 192.168.0.100 get cogtrwin.ini
Transfer successful: 536 bytes in 1 second, 536 bytes/s
TFTP是一種簡單的檔案傳輸解決方案。
3、FTP配置
目前成熟系統設計中,都將FTP協議和傳輸定性為非安全傳輸協議。它和telnet登入方式,逐漸為SFTP和SSH協議所取代。在Linux流行版本中,SFTP已經成為預設配置專案。
在Linux發行版的光碟中,已經包括了vsftp伺服器安裝包,是需要手工安裝。
--判斷沒有安裝vsftp
[root@SimpleLinuxUp ~]# rpm -qa | grep vsftp
載入安裝光碟到一個目錄中。
[root@SimpleLinuxUp /]# ls -l | grep rdcom
drwxr-xr-x 2 root root 4096 Dec 26 10:29 rdcom
[root@SimpleLinuxUp /]# cd rdcom/
[root@SimpleLinuxUp rdcom]# ls -l
total 0
[root@SimpleLinuxUp rdcom]# mount /dev/cdrom /rdcom/
mount: block device /dev/cdrom is write-protected, mounting read-only
安裝vsftp-server包。
[root@SimpleLinuxUp rdcom]# cd Server/
[root@SimpleLinuxUp Server]# pwd
/rdcom/Server
[root@SimpleLinuxUp Server]# ls -l | grep vsftp
-r--r--r-- 99 root root 141003 Dec 17 2007 vsftpd-2.0.5-12.el5.i386.rpm
[root@SimpleLinuxUp Server]# rpm -ivh vsftpd-2.0.5-12.el5.i386.rpm
warning: vsftpd-2.0.5-12.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:vsftpd ########################################### [100%]
安裝後,vsftpd是沒有自動啟動的,作為系統服務也不能自動啟動。
[root@SimpleLinuxUp Server]# service vsftpd status
vsftpd is stopped
[root@SimpleLinuxUp Server]# chkconfig --list vsftpd
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
啟動服務,並且配置vsftp服務到適合的level等級。
[root@SimpleLinuxUp Server]# service vsftpd start
Starting vsftpd for vsftpd: [ OK ]
[root@SimpleLinuxUp Server]# service vsftpd status
vsftpd (pid 4030) is running...
[root@SimpleLinuxUp Server]# chkconfig --level 2345 vsftpd on
[root@SimpleLinuxUp Server]# chkconfig --list vsftpd
vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
遠端從客戶端進行訪問,直接使用ftp命令列客戶端。
D:\>ftp
ftp> open 192.168.0.100
Connected to 192.168.0.100.
220 (vsFTPd 2.0.5)
User (192.168.0.100:(none)): oracle
331 Please specify the password.
Password:
230 Login successful.
注意,處於安全的考慮,並不是所有的使用者都可以使用ftp遠端連線,比如root。
D:\>ftp
ftp> open 192.168.0.100
Connected to 192.168.0.100.
220 (vsFTPd 2.0.5)
User (192.168.0.100:(none)): root
530 Permission denied.
Login failed.
如果確實需要root登入,可以修改配置檔案/etc/vsftpd/ftpusers和/etc/vsftpd/user_list,將其中的root遮蔽住。就可以支援登入。
[root@SimpleLinuxUp Server]# cat /etc/vsftpd/ftpusers
# Users that are not allowed to login via ftp
root
bin
daemon
adm
nobody
[root@SimpleLinuxUp Server]# cat /etc/vsftpd/user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
root
bin
daemon
adm
lp
sync
shutdown
halt
news
uucp
operator
games
nobody
安裝成功。
4、結論
在Linux、AIX中,很多的配置內容都是命令列+文字配置的方法來實現的。本篇介紹了Linux環境下tftp和ftp的配置手段,留待需要朋友待查。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17203031/viewspace-1076203/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- linux下開啟並配置FTP服務LinuxFTP
- linux ftp服務的搭建配置LinuxFTP
- 配置ftp服務FTP
- CentOS.7下安裝配置FTP和SFTP服務CentOSFTP
- <Linux下FTP服務的搭建>LinuxFTP
- AIX FTP服務配置AIFTP
- Linux FTP服務LinuxFTP
- linux之FTP服務vsftpd和pure-ftpd常用配置LinuxFTP
- FTP服務(vsftpd)配置FTP
- 如何在linux下開啟FTP服務LinuxFTP
- linux ftp服務搭建LinuxFTP
- ubuntu下搭建ftp服務端UbuntuFTP服務端
- mac下開啟FTP服務MacFTP
- FTP和TFTP的區別與介紹FTP
- Linux平臺下snmp服務的安裝和配置Linux
- linux下安裝、配置samba服務LinuxSamba
- Linux下cron 排程服務配置Linux
- 如何在 Linux 中搭建 FTP 服務LinuxFTP
- CentOS下tftp 安裝配置使用CentOSFTP
- Linux下ftp的安裝配置LinuxFTP
- tftp配置FTP
- LINUX下VNC服務的安裝配置LinuxVNC
- linux下Samba服務配置與安裝LinuxSamba
- FTP服務搭建FTP
- solaris啟動ftp和telnet服務FTP
- windows下tftp命令,windows如何使用 tftp 和 telnet 命令WindowsFTP
- FTP服務端部署FTP服務端
- windows下tftp命令,windows 7 如何使用 tftp 和 telnet 命令WindowsFTP
- Linux下啟動ftp及xdm配置(轉)LinuxFTP
- Linux系統下啟動Server後發現ftp等服務不能用LinuxServerFTP
- ubuntu開啟ftp服務UbuntuFTP
- Azure上部署FTP服務FTP
- ftp服務端安裝FTP服務端
- Kali Linux常用服務配置教程安裝及配置DHCP服務Linux
- linux vsftpd 服務配置LinuxFTP
- mysql for linux 配置多服務MySqlLinux
- ftp上傳工具下載,ftp上傳工具下載使用教程,Linux如何配置ftp伺服器?FTPLinux伺服器
- Linux RedHat ftp配置LinuxRedhatFTP