ftp共享服務
基本配置就不細述,主要將一下,如何實現允許匿名登陸上傳數據
只需要再服務器上 修改配置文件/etc/vsftpd/vsftpd.conf ,再重啓服務
sed -i '/anon_upload_enable/canon_upload_enable=YES' /etc/vsftpd/vsftpd.conf
客戶端使用ftp命令訪問ftp服務器
[root@client ~]# ftp 服務器FTP的IP
# 輸入用戶名,如果是匿名用戶,輸入ftp
Name (192.168.4.50:root): ftp
331 Please specify the password.
# 輸入密碼
Password:
# 下面的提示,表示登陸成功,就可以進行相關操作了
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
客戶端ftp內的操作命令
客戶端ftp內的操作命令 |
ls |
查看ftp服務器中當前目錄下,有哪些文件或目錄 |
cd |
切換ftp服務器中的目錄位置,用於進入ftp服務器中的一些字目錄 |
lcd |
切換當前機器的目錄,用於確定下載文件到本機的什麼位置,以及上傳本機什麼目錄下的文件 |
get |
下載當前所在ftp服務器目錄下的某個文件,到當前所在的本機目錄 |
put |
上傳當前本機所在目錄下的指定的一個文件,到當前所在ftp服務器的目錄喜愛 |
exit |
退出,兩個命令作用一樣 |
bye |
如果想進行上傳等操作,服務端需要修改bool值,將其開啓纔可以實現原稱
ftpd_anon_write ftpd_full_access
Selinux
簡介: 一個強化Linux安全的拓展模塊,它是當客戶端通過防火牆後,抵達服務器後訪問服務的時候進行工作,主要是爲了給操作系統提供可定製的策略,管理工具
三種狀態:
enforcing |
強制模式,會強制停止不符合策略的操作或服務 |
permissive |
寬鬆模式,會檢測並警告一些不符合策略的操作,極少情況下拒絕某些操作 |
disabled |
關閉模式,不啓用Selinux |
模式控制:
targeted |
僅保護最常見的網絡服務(默認、推薦) |
minimum |
折中的操作 |
mls |
多層級保護,保護係數高,但是會降低訪問的速率 |
安全上下文
屬性構成: 用戶:角色:訪問類型:選項
查看安全上下文的屬性:
ls -Z 文件
操作的一般規律:
1. 使用移動命令的時候,文件原有的上下文值不變
2. 執行復制操作的時候,文件會自動目標位置的父目錄的上下文
3. 創建一個文件,文件也是獲取父目錄的上下文值
設置上下文:
chcon -t 安全上下文的訪問類型 文件
chcon -R -t 安全上下文的訪問類型 目錄
恢復上下文(讓文件的上下文與其當前所在父目錄相同)
restorecon 文件
restorecon -R 目錄
# 下次重啓機器後,重置所有的上下文值
echo > /.autorelabel
注意:
1. 建議先查看其預備存儲的目錄的上下文,然後考慮移動後文件的上下文是否改爲一樣
2. 移動複製的上下文規律一般都是那樣,不會變,但是也有特例
布爾值
簡介: 設置服務的某些功能的開與關
查看布爾值:
getsebool -a
getsebool -a | grep 關鍵字
# 返回的數據的含義是: 布爾參數 --> on|off
修改布爾值:
setsebool 布爾參數 on|off
監控程序(用於服務因Selinux出現一些問題的解決)
1. 安裝setroubleshoot包
2. 當出現問題了,查看日誌信息
grep shoot /var/log/messages
3. 然後,看看錯誤位置,會提示運行什麼程序,將run後面的命令,複製執行
run: sealert -l 6cd83e12-06b5-4ae5-bd0f-25b755ef2b14
4. 根據提示,一個一個把所有命令執行一遍,就能解決問題
加密解密
目的: 保證數據再傳遞過程中的的安全性,完整性
加密解密的原理:
發送方把要發送的文件,通過某個技術進行加密,然後發送給接收方,接收方再通過相應的技術進行解密,只不過,雙方的加密解密技術實現商量好了,發送方加密的東西接收方能且只有其能解密
完整性:
如果說文件加密是爲了文件的安全,那加密簽名技術就是專門爲了完整性設計的
除了簽名,還可以使用MD5進行完整性檢驗,這軟件是通過一個算法得到一個只與文件內容相關的校驗碼,如果數據有一點不同,那麼校驗碼也會有不一樣,反之如果校驗碼完全相同,那麼數據也會一模一樣,所以用戶也可以手動用md5sum命令生成校驗值進行比較。
算法:
對稱加密 |
DES、AES |
加密解密是使用一個算法 |
非對稱加密 |
RSA、DSA |
加密解密是兩個不同的算法,加密算法不能解密 |
GPG加密
簡介: 當前最流行的數據加密、數字簽名工具
安裝軟件: yum install -y gnupg
安裝後就可以進行加密和解密量,下面進行操作分析,現在假定A用戶要給B用戶發送一個文件,希望加密傳遞,兩個加密的操作過程如下
對稱加密:
原理: A用戶用密碼加密一個文件,只需要告知B用戶密碼,B即可解密
# 使用命令 (會生成一個 文件名.gpg 的文件)
[root@A ~]# gpg -c 加密文件名
lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x 請輸入密碼 x
x x
x x
x Passphrase ________________________________________ x
x x
x <OK> <Cancel> x
mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj
# 加密後,A用戶把加密得到的文件發給B用戶即可,B用戶解密的時候有密碼即可
非對成加密:
原理: B用戶生成一個密鑰對,然後把公鑰發給A用戶,A用戶用公鑰加密然後把加密文件給B,B再拿自己的私鑰解密即可
1. 用戶B生成密鑰對
[root@B ~]# gpg --gen-key
2. 用戶B導出公鑰(公鑰名字自定義)
[root@B ~]# gpg --export -a > 公鑰文件名
# 運行後,會要求選擇加密算法,加密長度(越長生成速度越慢、同樣越安全)
# 然後會要求屬於name、mail等標籤,可以任意寫,但要記住,後來會組成一個字符串用來標示密鑰對
# 字符串內容組成爲: 名字 (註釋) <郵箱>
# 最後輸入:O(大寫的o) 確認生成
# 然後要求輸入密碼,這個密碼就是用來保護私鑰,下次調用私鑰解密的時候需要輸入這個密碼
3. 把公鑰發給A用戶
4. 用戶A導入公鑰
[root@A ~]# gpg --import 用戶A發的公鑰文件的絕對路徑
5. 用戶A利用公鑰加密(生成一個 文件.gpg文件,將其發給其他用戶)
[root@A ~]# gpg -e -r 公鑰中的任意一個標示 加密文件名
解密:
[root@B ~]# gpg -d 文件名
對稱和非對稱加密,其解密都是一樣的命令,不同的是:
對稱加密解密的時候,密碼是加密方設定的
非對稱加密解密的時候,密碼是自己設定的(目的是保護私鑰)
簽名:
作用:保證服務端發送的軟件包完整安全可靠,軟件公司就會官方把公鑰、簽名和軟件發佈出來,用戶受到後,就可以用簽名和公鑰檢查軟件的完整和準確性
原理:B用戶用私鑰對一個文件進行簽名,然後把簽名文件和源文件一起發給A用戶,A用戶用公鑰檢查簽名,如果正常,那文件就是B用戶傳來的
1. 用戶B生成公私鑰,把公鑰發給A用戶,A用戶完成導入(上面非對稱加密的操作)
2. 用戶B生成簽名文件,把文件和簽名文件發給用戶A
[root@B ~]# gpg -b 被簽名的文件
3. 通過簽名文件和公鑰檢測
[root@A ~]# gpg --verify 簽名文件.sig 源文件
*. 可以更深層次覈實簽名的可靠性,通過 主鑰指紋,A用戶檢查簽名後就會提示除指紋,只要和用戶B生成密鑰的指紋對比一下,如果一樣那麼簽名就可信
# 檢查私鑰所在用戶的指紋信息,接收方運行檢測簽名的時候就會顯示指紋
[root@B ~]# gpg --fingerprint
入侵檢測
原理: 按時給一個文件進行一個數據備份存儲,通過aide軟件,將其製作爲一個文件,定時用aide軟件對比當前系統中多個目錄是否被修改過,如果被修改了且確定不是自己的操作,就是被入侵了,這時候aide會告知什麼文件出了問題
配置:
1. 裝包
yum install -y aide
2. 配置,修改配置文件/etc/aide.conf,及其詳解
# 定義aide的工作目錄
@@define DBDIR /var/lib/aide
@@define LOGDIR /var/log/aide
# 定義檢測是否入侵的時候,對比的基礎文件名
# The location of the database to be read.
database=file:@@{DBDIR}/aide.db.gz
# 定義運行aide的時候,當前系統狀態的文件,建議改爲和上面的基礎文件名一樣
#database_out=file:aide.db.new
database_out=file:@@{DBDIR}/aide.db.new.gz
# 然後會對檢測什麼參數做定義
# 定義多個別名,下面列舉的叫FIPSR,其作用是檢測幾乎所有
FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256
# 最後從100行左右開始,是定義檢測什麼目錄內容,檢測什麼方面內容,一般不需要檢測這麼多,建議註釋掉,然後寫自己需要檢測的目錄
目錄 檢測什麼內用
/etc/ FIPSR
3. 初始化,啓動檢測
aide --init
# 會按照配置文件中寫的配置,在工作目錄下創建對應名字的文件
4. 備份生成的數據文件,並且把工作目錄下的數據文件改名爲配置文件中,用於對比的基礎文件名
5. 覺得被入侵的時候,進行檢測
aide -C
# 之後系統會檢測所有配置文件中指定的目錄,如果被修改了,會提示哪個被修改了,改成什麼了
NMAP掃描
簡介: 一個強大的網絡探測設備,支持多種探測(PING、端口、TCP/IP)
安裝相關軟件: yum install -y nmap
命令中的IP可以有很多表達方式:
1. 一個主機的IP,那麼掃描只查看該主機的信息
2. 一個網段 例如172.10.110.0/24 ,那麼就是掃描數據從172.10.110.0 到 172.10.110.255,查看這256個主機
3. 一個網絡範圍 例如 172.10.110.10-20,那麼就是掃描數據 172.10.110.10 到 172.10.110.20,查看這11個主機
用法 |
作用 |
nmap -sS IP |
TCP掃描各個主機,只不過三次握手只做前面兩部 |
nmap -sT IP |
TCP掃描各個主機,並且連接的時候完成完整的三次握手 |
nmap -sP IP |
只進行ping操作掃描 |
nmap -A IP |
進行最完整的全系統檢測,檢測服務的啓動情況等等 |