UNIX防止非法使用者註冊的技術大全(轉)
UNIX防止非法使用者註冊的技術大全(轉)[@more@]由於SCO UNIX作業系統的開放性,網路系統的共享性,資料庫的通用性等因素,UNIX作業系統資料資訊的安全問題顯得越來越為突出,特別是終端埠的安全管理工作是目前資訊系統安全的重要環節。由於作業系統本身的缺陷,加上營業網點的分散性等因素,留下遠端終端包括DDN專線和MODEM的撥號埠以及對外服務終端無法特別監管的隱患,給非法進入者提供了方便之門,因此必須設法加強對UNIX作業系統的埠安全管理,增加埠口令和限制登入埠的使用者及工作時間等。
工作原理:
作業系統使用者註冊登入的全過程為:使用者開啟終端在login:後輸入使用者名稱和在passwd:後輸入口令字,作業系統接收使用者名稱和口令字後與 /etc/passwd和/etc/shadow檔案進行合法性檢查,對照註冊名UID碼、GID碼(表示使用者組)、GCOS域(使用者個人資訊)、註冊目錄、註冊shell(一般為/bin/sh即Baurne shell),然後讀取終端埠的有關資訊,查詢 /etc/dialups檔案、/etc/d_passwd檔案,最後啟動 /etc/profile和使用者根目錄下的 .profile檔案(若是c_shell,則執行 /etc/csh.login和使用者根目錄下的 .login和.cshrc;若是korn shell,則會執行環境變數ENV所定義的檔案)配置使用者環境變數,查詢提示該使用者的mail資訊。
縱觀以上過程分析,我們可以簡單地在 /etc/dialups檔案中加入終端埠裝置號,在 /etc/d_passwd檔案中加入口令字,以限制非法登入,這是其一;我們還可以修改/etc/profile檔案,從中增加一段程式,使之能與我們預先設定的有關使用者、埠、工作時間等一些資訊的檔案進行比較,判斷當前註冊使用者的登入埠、日期和時間是否在我們允許的範圍內,否則不允許註冊登入。之所以修改檔案 /etc/profile而沒有使用檔案$home/.profile,是因為使用檔案/etc/profile 更便於大範圍的控制和處理,這是其二;另外,作業系統在對合法使用者註冊登入處理的最後部分是根據該使用者根目錄下的 $HOME /.profile,設定使用者環境變數、終端資訊,我們可以在 $HOME/.profile加入該使用者業務處理程式的起動命令並使之退出註冊登入狀態,以減少在該使用者根目錄下使用 /bin/sh 命令的機會,確保使用者根目錄下檔案的安全。
基於以上原理,我們得出了三個有效地加強對終端埠限制管理的辦法:
1. 增加埠口令,限制遠端登入
遠端登入包括透過MODEM撥號、DDN專線訪問伺服器和透過終端伺服器、集線器等登入到系統。以MODEM和DDN專線訪問伺服器的埠號為/dev/tty1A和/dev/ttya?,其中?為0、1、2……等;透過終端伺服器、路由器和集線器訪問伺服器的埠號為/dev/ttyp?,其中?為0、1、2……等。此時使用的是偽tty裝置檔案,通常登入的埠是不固定的。因此,必須先執行固定通訊伺服器埠設定程式,此程式由通訊伺服器生產廠家隨產品一起提供。透過在這些裝置埠上增加撥入口令,限制遠端登入。
2.限定使用者在指定的埠和規定的時間內登入
當使用者註冊登入到unix作業系統時,必須執行系統檔案/etc/profile,我們對這一檔案進行修改,讓系統去讀取使用者名稱、埠名、每週工作日期、每天上班時間、每天下班時間。然後依此檔案審查使用者註冊登入的合法性,埠名不在此檔案中不受限制,埠名在此檔案中但使用者名稱不正確不許登入,使用者名稱和埠名皆正確但工作時間不在規定範圍內不許登入。
3.使用者註冊登入時立即執行業務處理程式,退出業務處理程式時也退出 /bin/sh。
使用者註冊登入時系統訪問了使用者根目錄下面的$home/.profile,為了使使用者合法註冊登入後即進入執行業務處理程式,處理完成退出業務處理程式同時退出註冊登入狀態,我們可以對$home/.profile進行修改使使用者退出業務處理程式時,退至login:狀態。
以上三種方法以三種途徑加強了UNIX作業系統埠裝置的安全管理,可以分開使用,也可以合併使用,該方法在我公司SCO UNIX 5.04作業系統上試用正常,達到對一些遠端登入埠和公眾場合埠限制管理的目的,進一步有效地阻止了非法使用者的登入。
工作原理:
作業系統使用者註冊登入的全過程為:使用者開啟終端在login:後輸入使用者名稱和在passwd:後輸入口令字,作業系統接收使用者名稱和口令字後與 /etc/passwd和/etc/shadow檔案進行合法性檢查,對照註冊名UID碼、GID碼(表示使用者組)、GCOS域(使用者個人資訊)、註冊目錄、註冊shell(一般為/bin/sh即Baurne shell),然後讀取終端埠的有關資訊,查詢 /etc/dialups檔案、/etc/d_passwd檔案,最後啟動 /etc/profile和使用者根目錄下的 .profile檔案(若是c_shell,則執行 /etc/csh.login和使用者根目錄下的 .login和.cshrc;若是korn shell,則會執行環境變數ENV所定義的檔案)配置使用者環境變數,查詢提示該使用者的mail資訊。
縱觀以上過程分析,我們可以簡單地在 /etc/dialups檔案中加入終端埠裝置號,在 /etc/d_passwd檔案中加入口令字,以限制非法登入,這是其一;我們還可以修改/etc/profile檔案,從中增加一段程式,使之能與我們預先設定的有關使用者、埠、工作時間等一些資訊的檔案進行比較,判斷當前註冊使用者的登入埠、日期和時間是否在我們允許的範圍內,否則不允許註冊登入。之所以修改檔案 /etc/profile而沒有使用檔案$home/.profile,是因為使用檔案/etc/profile 更便於大範圍的控制和處理,這是其二;另外,作業系統在對合法使用者註冊登入處理的最後部分是根據該使用者根目錄下的 $HOME /.profile,設定使用者環境變數、終端資訊,我們可以在 $HOME/.profile加入該使用者業務處理程式的起動命令並使之退出註冊登入狀態,以減少在該使用者根目錄下使用 /bin/sh 命令的機會,確保使用者根目錄下檔案的安全。
基於以上原理,我們得出了三個有效地加強對終端埠限制管理的辦法:
1. 增加埠口令,限制遠端登入
遠端登入包括透過MODEM撥號、DDN專線訪問伺服器和透過終端伺服器、集線器等登入到系統。以MODEM和DDN專線訪問伺服器的埠號為/dev/tty1A和/dev/ttya?,其中?為0、1、2……等;透過終端伺服器、路由器和集線器訪問伺服器的埠號為/dev/ttyp?,其中?為0、1、2……等。此時使用的是偽tty裝置檔案,通常登入的埠是不固定的。因此,必須先執行固定通訊伺服器埠設定程式,此程式由通訊伺服器生產廠家隨產品一起提供。透過在這些裝置埠上增加撥入口令,限制遠端登入。
2.限定使用者在指定的埠和規定的時間內登入
當使用者註冊登入到unix作業系統時,必須執行系統檔案/etc/profile,我們對這一檔案進行修改,讓系統去讀取使用者名稱、埠名、每週工作日期、每天上班時間、每天下班時間。然後依此檔案審查使用者註冊登入的合法性,埠名不在此檔案中不受限制,埠名在此檔案中但使用者名稱不正確不許登入,使用者名稱和埠名皆正確但工作時間不在規定範圍內不許登入。
3.使用者註冊登入時立即執行業務處理程式,退出業務處理程式時也退出 /bin/sh。
使用者註冊登入時系統訪問了使用者根目錄下面的$home/.profile,為了使使用者合法註冊登入後即進入執行業務處理程式,處理完成退出業務處理程式同時退出註冊登入狀態,我們可以對$home/.profile進行修改使使用者退出業務處理程式時,退至login:狀態。
以上三種方法以三種途徑加強了UNIX作業系統埠裝置的安全管理,可以分開使用,也可以合併使用,該方法在我公司SCO UNIX 5.04作業系統上試用正常,達到對一些遠端登入埠和公眾場合埠限制管理的目的,進一步有效地阻止了非法使用者的登入。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-946282/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Javascript 碰到的技術大全JavaScript
- 【防止惡意使用者註冊】-- 手機在網狀態 API 的防欺詐應用解析API
- 使用者註冊頁面原型原型
- python 使用者註冊使用者名稱Python
- 谷歌為Chrome新增新技術—防止廣告主追蹤使用者谷歌Chrome
- 微服務技術棧:常見註冊中心元件,對比分析微服務元件
- 14 hashlib 案例2 使用者註冊
- agileTC 使用 mysql 阻止使用者註冊MySql
- ?【Alibaba中介軟體技術系列】「Nacos技術專題」服務註冊與發現相關的原理分析
- xhEditor技術手冊
- Django搭建個人部落格:使用者的註冊Django
- 【主流技術】日常工作中關於 JSON 轉換的經驗大全(Java)JSONJava
- Unix哲學(Unix程式設計藝術)程式設計
- oracle的靜態註冊和動態註冊Oracle
- 技術分享| 分散式系統中服務註冊發現元件的原理及比較分散式元件
- Spring註解大全Spring
- 使用者註冊這樣玩,保你平安
- Laravel 實現 passport 使用者註冊登入LaravelPassport
- Django(66)admin後臺管理註冊使用者Django
- 【SpringBoot】服務對註冊中心的註冊時機Spring Boot
- Redis大全手冊(上)Redis
- 阿里技術參考圖冊阿里
- 動態註冊和靜態註冊
- AJAX+JAVA使用者登陸註冊驗證Java
- 前端利用ajax實現使用者註冊頁面前端
- mvc架構的簡單實踐----使用者註冊的實現MVC架構
- SpringBoot系列 註解大全Spring Boot
- Getway實現nacos註冊及服務轉發
- springboot註冊Spring Boot
- Laravel 第六章學習——註冊使用者Laravel
- Abp 實現通過手機號註冊使用者
- js 註冊事件的兩種方式詳解,傳統註冊事件與方法監聽註冊事件(addEventListener)JS事件dev
- npm註冊源的配置NPM
- Dubbo系列之 (二)Registry註冊中心-註冊(1)
- Dubbo系列之 (二)Registry註冊中心-註冊(2)
- Oracle的全文檢索技術(轉)Oracle
- 註冊中心 Eureka 原始碼解析 —— 應用例項註冊發現(一)之註冊原始碼
- linux/unix程式設計手冊-16_20Linux程式設計
- 網路-05-埠號-F5-負載均衡設-linux埠詳解大全–TCP註冊埠號大全備負載LinuxTCP