Ở bài viết này chúng ta sẽ cùng tìm hiểu cách cài đặt TFTP Server trên CentOS 7. Trivial File Transfer Protocol (TFTP) là một chương trình dịch vụ Internet giúp truyền tải file một cách đơn giản nhất hơn cả dịch vụ FTP. TFTP không yêu cầu chứng thực user và người dùng kết nối cũng không có khả năng liệt kê file trong thư mục TFTP Server. TFTP sử dụng giao thức UDP, bạn có thể tìm đọc thêm ở RFC 1350. Chương trình TFTP xài khá nhiều ở hệ thống PXE Server hay dùng để up flash đối với Router/Switch.
Các thao tác cài đặt TFTP Server trên CentOS 7
1. Cài đặt TFTP Server trên CentOS 7
Cài đặt các gói chương trình TFTP Server.# yum install tftp tftp-server xinetd
Tắt SELinux nếu bạn không biết cấu hình hay sử dụng, bạn thường sẽ phải reboot lại hệ thống nhưng có thể tắt tạm thời SELINUX bằng lệnh ‘setenforce’ .
# vi /etc/selinux/config
SELINUX=disabled
# setenforce 0
2. Cấu hình dịch vụ TFTP
Khởi tạo user dành riêng cho thư mục chứa dữ liệu phục vụ dịch vụ TFTP Server.#useradd --no-create-home -s /sbin/nologin tftp
Đầu tiên bạn có thể khởi tạo thư mục dành cho data sử dụng cho dịch vụ TFTP hoặc sử dụng thư mục mặc định trong cấu hình.
Cấu hình file dịch vụ TFTP và một số cấu hình chú thích.# mkdir -p /tftpacc
# chmod 777 /tftpacc
# touch /tftpacc/test.txt
# chown tftp:tftp -R /tftpacc
#vi /etc/xinetd.d/tftp
Chú thích :
– disable = disable
– server_args
+ ‘-c‘ : cho phép tạo file mới trên thư mục tftp.
+ ‘-s‘ : tự động change root directory cho người dùng kết nối đến TFTP, tức người dùng sẽ chỉ thấy nội dung file/thư mục trong thư mục /tftpdata đã được quy định trước.
+ ‘-u‘ : chỉ định user sử dụng cho thư mục TFTP.
+ ‘-p‘ : không thực hiện check quyền permission đối với user cụ thể như ‘tftp‘ đã tạo ở trên.
+ ‘-U‘ : chỉ định giá trị umask khi tạo mới 1 file.
+ ‘-v‘ : option giúp hiển thị các thông tin log khi kết nối TFTP Server.
3. Khởi động dịch vụ TFTP và thêm vào danh sách startup service.
Chỉnh lại cấu hình systemd start service ở phần ‘ExecStart‘ mục [Service] cho giống cấu hình config phía trên.# vi /usr/lib/systemd/system/tftp.service
Reload lại cấu hình systemd service đã chỉnh sửa.
Kiểm tra xem dịch vụ đã listen trên port UDP 69 chưa.# systemctl daemon-reload
# systemctl start xinetd
# systemctl start tftp
# systemctl enable xinetd tftp
# systemctl enable xinetd
# systemctl enable tftp
#netstat -antpu | grep 69
Theo CuongQuach