『壹』 如何在linux 伺服器上做FTP。請指教。
ftp伺服器的配置
ftp 叫做文件傳輸協議 他已經有40年的歷史了 它以明文的形式進行傳輸的
ftp的埠號是21
當埠號為21 時:是以命令控制. 發送命令來執行的
20時: 是數據控制 ,提供數據的下載上傳
ftp的模式: 分為 主的模式 與控制模式
ftp數據的傳輸格式 accii 二進制
ftp的用戶類型 :匿名用戶:anonymous或ftp
本地用戶:帳號名稱、密碼等信息保存在passwd、shadow文件中
虛擬用戶:使用獨立的賬號/密碼數據文件
常見的ftp伺服器程序
iis serv-u wu-ftpd proftpd
vsftpd rery ecare ftp daemon 這幾種是linux常用的
常見的ftp客戶端程序
GuteFTP Flashftf leapFTP FILEzilla
gftp kufp
在linux中我們常用的一款ftp伺服器軟體就是vsftp 現在我們就介紹一下它的用法
vsftp的官方站點時http://vsftpd.beasts.org
主程序在/usr/sbin/vsftpd
伺服器名是vsftpd
如果你的l主機沒有vsftpd這款軟體 你可以到官方進行下載安裝,安裝的方法我們在這里不提了。linux人都知道
vsftpd的配置 其中vsftpd的主配置文件在 /usr/sbin/vsftpd
用戶控制列表文件:
/etc/vsftpd/ftpusers 禁止登陸的ftp 用戶列表
/etc/viftpd/user_list 僅提供一份ftp用戶列表,是否禁止登陸取決於主配置文件中的設置
下面我們介紹一下構建基於虛擬用戶的vsftpd伺服器 它大體分為7部
1.建立虛擬FTP用戶的帳號資料庫文件
2.創建FTP根目錄及虛擬用戶映射的系統用戶
3.建立支持虛擬用戶的PAM認證文件
4.在vsftpd.conf文件中添加支持配置
5.為個別虛擬用戶建立獨立的配置文件
6.重新載入vsftpd配置
7.使用虛擬FTP賬戶訪問測試
1:建立虛擬ftp用戶的賬號資料庫文件
建立虛擬用戶的賬號名 密碼列表
vim /etc/vsftpd/vusers.list
隨便填寫幾組密碼 定義可以訪問的ftp賬號
如:AA //賬號
124 密碼
BB
321
但是ftp並不認識這些虛擬賬戶密碼 我們要用一款軟體把它轉換成,這款軟體是db4-utils 如果你的機子沒有。去網上下載安裝一下,安裝方法很簡單
yum install –y db4-utils 安裝完了,我們就可以用它了
db_load -T -t hash -f vusers.list vusers.db
更改文件的許可權 chown 600 /etc/vsftpd/vusers.*
2 創建ftp 根目錄及虛擬用戶映射的系統用戶
新建目錄 mkdir /var/ftproot
創建用戶 useradd –d /var/ftproot –s /sbin/nologin virtual
chmod 755 /var/ftproot./
3 建立支持虛擬用戶的pam 認證文件
vim /etc/pam.d/vsftpd.vu
寫入下面內容
#%PAM-1.0
auth requirel pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
4. 在vsftpd.conf文件中添加支持配置
[root@filesvr ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_umask=022
guest_enable=YES
guest_username=virtual
pam_service_name=vsftpd.vu
5.為個別虛擬用戶建立獨立的配置文件
在vsftpd.conf文件中添加用戶配置目錄支持
user_config_dir=/etc/vsftpd/vusers_dir
為用戶mike、john建立獨立的配置目錄及文件
配置文件名與用戶名同名
[root@filesvr ~]# mkdir /etc/vsftpd/vusers_dir/
[root@filesvr ~]# cd /etc/vsftpd/vusers_dir/
[root@filesvr vusers_dir]# touch mike
[root@filesvr vusers_dir]# vi john
anon_upload_enable=YES
anon_mkdir_write_enable=YES
6.重新載入vsftpd配置
service vsftpd reload
7.使用虛擬FTP賬戶訪問測試
分別用mike、john用戶登錄FTP伺服器進行下載、上傳測試
mike用戶可以登錄,並可以瀏覽、下載文件,但無法上傳
john用戶可以登錄,並可以瀏覽、下載文件,也可以上傳
匿名用戶或其他系統用戶將不能登錄
『貳』 如何在Linux系統上管理Systemd服務
(1) 什麼是單元 在RHEL7之前,服務管理是分布式的被SysV init或UpStart通過/etc/rc.d/init.d下的腳本管理。這些腳本是經典的Bash腳本,允許管理員控制服務的狀態。在RHEL7中,這些腳本被服務單元文件替換。 在systemd中,服務、掛載等資源統一被稱為單元,所以systemd中有許多單元類型,服務單元文件的擴展名是.service,同腳本的功能相似。例如有查看、啟動、停止、重啟、啟用或者禁止服務的參數。 systemd單元文件放置位置: /usr/lib/systemd/system/systemd默認單元文件安裝目錄 /run/systemd/systemsystemdsystemd單元運行時創建,這個目錄優先於按照目錄 /etc/systemd/system系統管理員創建和管理的單元目錄,優先順序最高。 (2)systemd的服務管理 使用systemcl命令可以控制服務,service命令和chkconfig命令依然可以使用,但是主要是出於兼容的原因,應該盡量避免使用。 使用systemctl命令的時候,服務名字的擴展名可以寫全,例如: 代碼如下: systemctl stop bluuetooth.service 也可以忽略,例如: 代碼如下: systemctl stop bluetooth systemctl常用命令: 啟動服務 代碼如下: systemctl start name.service 關閉服務 代碼如下: systemctl stop name.service 重啟服務 代碼如下: systemctl restar tname.service 僅當服務運行的時候,重啟服務 代碼如下: systemctl try-restart name.service 重新載入服務配置文件 代碼如下: systemctl relaod name.service 檢查服務運作狀態 代碼如下: systemctl status name.service 或者 代碼如下: systemctl is-active name.service 展示所有服務狀態詳細信息 復制代碼 代碼如下: systemctl list-units--type service --all 允許服務開機啟動 代碼如下: systemctl enable name.service 禁止服務開機啟動 代碼如下: systemclt disable name.service 檢查服務開機啟動狀態 代碼如下: systemctl status name.service 或者 代碼如下: systemctl is-enabled name.service 列出所有服務並且檢查是否開機啟動 代碼如下: systemctl list-unit-files --type service (3)服務詳細信息查看 使用如下命令列出服務: 代碼如下: systemctl list-units --type service 默認只列出處於激活狀態的服務,如果希望看到所有的服務,使用--all或-a參數: 代碼如下: systemctl list-units--type service --all 有時候希望看到所以可以設置開機啟動的服務,使用如下命令: 代碼如下: systemctl list-unit-files --type service 查看服務詳細信息,使用如下命令: 代碼如下: systemctl status name.service 服務信息關鍵詞解釋 Loaded服務已經被載入,顯示單元文件絕對路徑,標志單元文件可用。 Active服務已經被運行,並且有啟動時間信息。 Main PID與進程名字一致的PID,主進程PID。 Status服務的附件信息。 Process相關進程的附件信息。 CGroup進程的CGroup信息。