① 請問在SSH結構的JSP中,如何去初始化Form中input的值
看你這裡面用了struts2的標簽的,學SSH,那麼應該知道ONGL表達式吧?你要初始化的input的值是從後台action來的,action中的屬性是關鍵,調用action的方法後,action的屬性(String name="xiao";)中會有值,在JSP頁面使用OGNL表達式直接取這個屬性名就可以得到這個屬性的值,<input type="text" name="username" value="#name" />,大概是這么的,不過別直接,可能用不了的,我這只是給你展示。給你個提示而已,具體的需要自己詳細學習,進不才會更加的大,學過了才記得牢!
② 如何在windows上建立ssh伺服器
1. ssh簡介以及本例的應用場景
① ssh的簡介
SSH是一個用來替代TELNET、FTP以及R命令的工具包,主要是想解決口令在網上明文傳輸的問題。為了系統安全和用戶自身的權益,推廣SSH是必要的。 SSH是英文Secure Shell的簡寫形式。通過使用SSH,你可以把所有傳輸的數據進行加密,這樣"中間人"這種攻擊方式就不可能實現了,而且也能夠防止DNS欺騙和IP欺騙。
② 本例的應用場景
用戶在client(Linux)上通過ssh遠程執行server(Windows)上的命令,比如c:\test.bat
註:Linux版自帶ssh Server且默認啟動,具體設置方法請參見google。
2. ssh伺服器的安裝(Windows)
ssh伺服器軟體有許多中,我們這里使用的是免費的freeSSHd。
① 首先從官方站點下載軟體並安裝(http://www.freesshd.com/)
② 安裝完成後進入配置界面(Server Status),確認SSH server正在運行狀態
③ 進入Users界面,設定一個訪問的用戶賬戶(比如xut)
這里我們建立一個叫xut的用戶,認證有3種方式可以選擇。從以後通過ssh運行命令的方便(無需輸入密碼)考慮,我們選擇Public key認證方式。選擇Password方式的話,每次訪問需要輸入密碼,此種方式較為繁瑣而且安全性不高。然後開放其Shell許可權。
④ 進入認證界面,確認Public key認證方式屬於激活狀態(選擇Allowed或Required)
此時ssh伺服器端的基本設置已經OK,可進一步進行更加詳細的設置(比如訪問限定等),此處不再介紹。
注意:伺服器端如果有防護牆時應該開發TCP 22號埠最為ssh連接使用。
3. ssh客戶端的設置(Linux)
由於我們的客戶端採用的是Linux,所以不用安裝客戶端軟體,系統自帶的就有。
我們需要在Linux上創建一個共有和私有的密鑰對,私有密鑰放到客戶端(Linux)上,共有密鑰放到伺服器端(Windows)上。在Linux上通過ssh-keygen命令來創建。
[root@localhost ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): [直接回車]
Enter passphrase (empty for no passphrase): [直接回車]
Enter same passphrase again: [直接回車]
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
4d:dd:48:af:76:c2:ba:a8:bc:20:f3:28:1d:6a:28:53
其中,/root/.ssh/id_rsa為私有密鑰,/root/.ssh/id_rsa.pub為共有的密鑰。
此時,需要把共有密鑰放到伺服器端(Windows)進行保存,以便於伺服器端進行安全檢查。
我們通過認證界面找到存放共有密鑰的地址(Public key folder)。
如上圖所示,然後在c:\Program Files\freeSSHd目錄下創建以登錄用戶名為名字的文本文件,此處舉例為xut文件。並將/root/.ssh/id_rsa.pub文件中的內容拷貝到c:\Program Files\freeSSHd\xut文件中。
至此,客戶端和伺服器端的密鑰設置已經完成,可以通過如下命令進行遠程的命令執行。
ssh [email protected] "c:\test.bat"
這條命令將執行伺服器端的C盤下的test.bat文件,並把結果返回,整個操作不需輸入密碼。
4. ssh客戶端的設置(Windows)
由於Windows不附帶ssh的客戶端和伺服器端,我們這里找一個免費的客戶端軟體PuTTY。
PuttY主頁:http://www.chiark.greenend.org.uk/~sgtatham/putty/
各種客戶端的比較:http://en.wikipedia.org/wiki/Comparison_of_SSH_clients
在Putty主頁,我們下載putty.zip(含除了PuTTYtel以外的所有文件),然後解壓會發現一個叫plink.exe的文件,這就是我們的ssh客戶端命令行軟體。
我們首先要成一個共有和私有的密鑰對,使用putty.zip中附帶的PUTTYGEN.exe生成。
啟動PUTTYGEN.exe後可以見到下圖界面,點擊[Generate]即可生成所需密鑰對。
注意:由於是採用隨機演算法生成,需要不停地在對話框上移動滑鼠進度條才會增加,否則將保持不變。
滑鼠在這里不停移動
密鑰生成完畢後,可以把私有密鑰進行保存,為了登錄簡單起見不對私鑰進行加密,提示沒有passphrase選擇忽略即可。假設我們這里把私鑰保存為pri_key.ppk。
我們把公鑰放在freeSSHd端(ssh伺服器端)進行保存,具體保存方法參見【ssh客戶端的設置(Linux)】。
在Windows客戶端,執行如下命令進行ssh連接,並不需要輸入密碼即可通過密鑰進行自動認證。
plink -i pri_key.ppk [email protected] c:\test.bat
(此時將執行伺服器端的c:\test.bat腳本。)
註:第一次連接時將出現「The server's host key is not cached in the registry…
③ SSH框架的數據類型問題 高分請教
定義
SSH 為 Secure Shell 的縮寫,由 IETF 的網路工作小組(Network Working Group)所制定;SSH 為建立在應用層和傳輸層基礎上的安全協議。SSH 是目前較可靠,專為遠程登錄會話和其他網路服務提供安全性的協議。利用 SSH 協議可以有效防止遠程管理過程中的信息泄露問題。 傳統的網路服務程序,如:ftp、pop和telnet在本質上都是不安全的,因為它們在網路上用明文傳送口令和數據,別有用心的人非常容易就可以截獲這些口令和數據。而且,這些服務程序的安全驗證方式也是有其弱點的, 就是很容易受到「中間人」(man-in-the-middle)這種方式的攻擊。所謂「中間人」的攻擊方式, 就是「中間人」冒充真正的伺服器接收你的傳給伺服器的數據,然後再冒充你把數據傳給真正的伺服器。 伺服器和你之間的數據傳送被「中間人」一轉手做了手腳之後,就會出現很嚴重的問題。 SSH也俗稱三層架構: 第一層:實體類層 第二層:業務邏輯層 第三層:表示層(顯示層)
編輯本段框架結構
如右圖: Struts對Model,View和Controller都提供了對應的組件。 在右圖中,ActionServlet,這個類是Struts的核心控制器,負責攔截來自用戶的請求。 Action,這個類通常由用戶提供,該控制器負責接收來自ActionServlet的請求,並根據該請求調用模型的業務邏輯方法處理請求,並將處理結果返回給JSP頁面顯示。
Model部分
由ActionForm和JavaBean組成,其中ActionForm用於封裝用戶的請求參數,封裝成ActionForm對象,該對象被ActionServlet轉發給Action,Action根據ActionFrom裡面的請求參數處理用戶的請求。 JavaBean則封裝了底層的業務邏輯,包括資料庫訪問等。
View部分
該部分採用JSP(或HTML、PHP……)實現。 Struts提供了豐富的標簽庫,通過標簽庫可以減少腳本的使用,自定義的標簽庫可以實現與Model的有效交互,並增加了現實功能。對應上圖的JSP部分。
Controller組件
Controller組件有兩個部分組成——系統核心控制器,業務邏輯控制器。 系統核心控制器,對應上圖的ActionServlet。該控制器由Struts框架提供,繼承HttpServlet類,因此可以配置成標注的Servlet。該控制器負責攔截所有的HTTP請求,然後根據用戶請求決定是否要轉給業務邏輯控制器。 業務邏輯控制器,負責處理用戶請求,本身不具備處理能力,而是調用Model來完成處理。對應Action部分。
Spring
Spring是一個開源框架,它由Rod Johnson創建。它是為了解決企業應用開發的復雜性而創建的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限於伺服器端的開發。從簡單性、可測試性和松耦合的角度而言,任何Java應用都可以從Spring中受益。 目的:解決企業應用開發的復雜性 功能:使用基本的JavaBean代替EJB,並提供了更多的企業應用功能 范圍:任何Java應用 簡單來說,Spring是一個輕量級的控制反轉(IoC)和面向切面(AOP)的容器框架。 輕量——從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個大小隻有1MB多的JAR文件里發布。並且Spring所需的處理開銷也是微不足道的。此外,Spring是非侵入式的:典型地,Spring應用中的對象不依賴於Spring的特定類。 控制反轉——Spring通過一種稱作控制反轉(IoC)的技術促進了松耦合。當應用了IoC,一個對象依賴的其它對象會通過被動的方式傳遞進來,而不是這個對象自己創建或者查找依賴對象。你可以認為IoC與JNDI相反——不是對象從容器中查找依賴,而是容器在對象初始化時不等對象請求就主動將依賴傳遞給它。 面向切面——Spring提供了面向切面編程的豐富支持,允許通過分離應用的業務邏輯與系統級服務(例如審計(auditing)和事務(transaction)管理)進行內聚性的開發。應用對象只實現它們應該做的——完成業務邏輯——僅此而已。它們並不負責(甚至是意識)其它的系統級關注點,例如日誌或事務支持。 容器——Spring包含並管理應用對象的配置和生命周期,在這個意義上它是一種容器,你可以配置你的每個bean如何被創建——基於一個可配置原型(prototype),你的bean可以創建一個單獨的實例或者每次需要時都生成一個新的實例——以及它們是如何相互關聯的。然而,Spring不應該被混同於傳統的重量級的EJB容器,它們經常是龐大與笨重的,難以使用。 框架——Spring可以將簡單的組件配置、組合成為復雜的應用。在Spring中,應用對象被聲明式地組合,典型地是在一個XML文件里。Spring也提供了很多基礎功能(事務管理、持久化框架集成等等),將應用邏輯的開發留給了你。 所有Spring的這些特徵使你能夠編寫更干凈、更可管理、並且更易於測試的代碼。它們也為Spring中的各種模塊提供了基礎支持。 Hibernate Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱資料庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。 Hibernate的核心介面一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心介面在任何開發中都會用到。通過這些介面,不僅可以對持久化對象進行存取,還能夠進行事務控制。下面對這五個核心介面分別加以介紹。 ·Session介面:Session介面負責執行被持久化對象的CRUD操作(CRUD的任務是完成與資料庫的交流,包含了很多常見的SQL語句。)。但需要注意的是Session對象是非線程安全的。同時,Hibernate的session不同於JSP應用中的HttpSession。這里當使用session這個術語時,其實指的是Hibernate中的session,而以後會將HttpSesion對象稱為用戶session。 ·SessionFactory介面:SessionFactory介面負責初始化Hibernate。它充當數據存儲源的代理,並負責創建Session對象。這里用到了工廠模式。需要注意的是SessionFactory並不是輕量級的,因為一般情況下,一個項目通常只需要一個SessionFactory就夠,當需要操作多個資料庫時,可以為每個資料庫指定一個SessionFactory。 ·Configuration介面:Configuration介面負責配置並啟動Hibernate,創建SessionFactory對象。在Hibernate的啟動的過程中,Configuration類的實例首先定位映射文檔位置、讀取配置,然後創建SessionFactory對象。 ·Transaction介面:Transaction介面負責事務相關的操作。它是可選的,開發人員也可以設計編寫自己的底層事務處理代碼。 ·Query和Criteria介面:
自己在研究一下吧
④ 請教如何用ssh連接遠程伺服器
目前,遠程連接伺服器的類型有以下幾種:
① 文字介面的明文傳輸:Telnet、RSH為主,很少用到。
② 文字介面的加密傳輸:以SSH為主,已經取代了上面的明文傳輸方式。
③ 圖形介面:XDMCP、VNC、XRDP等較為常見。
這篇文章只為實戰,不為普及概念性知識。所以我只講解在工作中最常用到的技術SSH。關於SFTP技術和VNC技術,請查閱我的其他博客。
好,先來看一下SSH的相關技術:
SSH,英文全程是Secure Shell Protocol(安全的殼程序協議)。SSH是現在公司基本上都在使用的一種文字介面的加密傳輸技術,採用的是非對稱秘鑰系統。
對於SSH的原理,你們可以參考我的另外一篇博客,我把鏈接貼在這里:
SSH原理
⑴來吧,我們先來查看一下sshd這個服務(這就是SSH的遠程連接必須開啟的服務,屬於系統自帶),注意,一般這個sshd服務是默認自動開啟的。
注意:切記authorized_keys這個文件的許可權必須是644
⑤ 如何使用ssh登陸windows伺服器
1. ssh簡介以及本例的應用場景
① ssh的簡介
SSH是一個用來替代TELNET、FTP以及R命令的工具包,主要是想解決口令在網上明文傳輸的問題。為了系統安全和用戶自身的權益,推廣SSH是必要的。 SSH是英文Secure Shell的簡寫形式。通過使用SSH,你可以把所有傳輸的數據進行加密,這樣"中間人"這種攻擊方式就不可能實現了,而且也能夠防止DNS欺騙和IP欺騙。
② 本例的應用場景
用戶在client(Linux)上通過ssh遠程執行server(Windows)上的命令,比如c:\test.bat
註:Linux版自帶ssh Server且默認啟動,具體設置方法請參見google。
2. ssh伺服器的安裝(Windows)
ssh伺服器軟體有許多中,我們這里使用的是免費的freeSSHd。
① 首先從官方站點下載軟體並安裝(http://www.freesshd.com/)
② 安裝完成後進入配置界面(Server Status),確認SSH server正在運行狀態
③ 進入Users界面,設定一個訪問的用戶賬戶(比如xut)
這里我們建立一個叫xut的用戶,認證有3種方式可以選擇。從以後通過ssh運行命令的方便(無需輸入密碼)考慮,我們選擇Public key認證方式。選擇Password方式的話,每次訪問需要輸入密碼,此種方式較為繁瑣而且安全性不高。然後開放其Shell許可權。
④ 進入認證界面,確認Public key認證方式屬於激活狀態(選擇Allowed或Required)
此時ssh伺服器端的基本設置已經OK,可進一步進行更加詳細的設置(比如訪問限定等),此處不再介紹。
注意:伺服器端如果有防護牆時應該開發TCP 22號埠最為ssh連接使用。
3. ssh客戶端的設置(Linux)
由於我們的客戶端採用的是Linux,所以不用安裝客戶端軟體,系統自帶的就有。
我們需要在Linux上創建一個共有和私有的密鑰對,私有密鑰放到客戶端(Linux)上,共有密鑰放到伺服器端(Windows)上。在Linux上通過ssh-keygen命令來創建。
[root@localhost ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): [直接回車]
Enter passphrase (empty for no passphrase): [直接回車]
Enter same passphrase again: [直接回車]
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
4d:dd:48:af:76:c2:ba:a8:bc:20:f3:28:1d:6a:28:53
其中,/root/.ssh/id_rsa為私有密鑰,/root/.ssh/id_rsa.pub為共有的密鑰。
此時,需要把共有密鑰放到伺服器端(Windows)進行保存,以便於伺服器端進行安全檢查。
我們通過認證界面找到存放共有密鑰的地址(Public key folder)。
如上圖所示,然後在c:\Program Files\freeSSHd目錄下創建以登錄用戶名為名字的文本文件,此處舉例為xut文件。並將/root/.ssh/id_rsa.pub文件中的內容拷貝到c:\Program Files\freeSSHd\xut文件中。
至此,客戶端和伺服器端的密鑰設置已經完成,可以通過如下命令進行遠程的命令執行。
ssh [email protected] "c:\test.bat"
這條命令將執行伺服器端的C盤下的test.bat文件,並把結果返回,整個操作不需輸入密碼。
4. ssh客戶端的設置(Windows)
由於Windows不附帶ssh的客戶端和伺服器端,我們這里找一個免費的客戶端軟體PuTTY。
PuttY主頁:http://www.chiark.greenend.org.uk/~sgtatham/putty/
各種客戶端的比較:http://en.wikipedia.org/wiki/Comparison_of_SSH_clients
在Putty主頁,我們下載putty.zip(含除了PuTTYtel以外的所有文件),然後解壓會發現一個叫plink.exe的文件,這就是我們的ssh客戶端命令行軟體。
我們首先要成一個共有和私有的密鑰對,使用putty.zip中附帶的PUTTYGEN.exe生成。
啟動PUTTYGEN.exe後可以見到下圖界面,點擊[Generate]即可生成所需密鑰對。
注意:由於是採用隨機演算法生成,需要不停地在對話框上移動滑鼠進度條才會增加,否則將保持不變。
滑鼠在這里不停移動
密鑰生成完畢後,可以把私有密鑰進行保存,為了登錄簡單起見不對私鑰進行加密,提示沒有passphrase選擇忽略即可。假設我們這里把私鑰保存為pri_key.ppk。
我們把公鑰放在freeSSHd端(ssh伺服器端)進行保存,具體保存方法參見【ssh客戶端的設置(Linux)】。
在Windows客戶端,執行如下命令進行ssh連接,並不需要輸入密碼即可通過密鑰進行自動認證。
plink -i pri_key.ppk [email protected] c:\test.bat
(此時將執行伺服器端的c:\test.bat腳本。)
註:第一次連接時將出現「The server's host key is not cached in the registry…
⑥ 如何用ssh在遠程伺服器(ubuntu)上建數據表
oracle用imp mysql復制到相關文件夾下面,sqlserver使用導入功能
⑦ 使用ssh2在啟動的時候,讀出需要重復使用的數據放入緩存,jsp頁面直接取到,那位大神可以提點點方向
你可以使用監聽器servletcontextListener監聽器 在該監聽器中有兩個方法一個是銷毀一個是初始化,在初始化的方法里查詢出來你要得值,然後使用該方法的參數獲取到servletContext 對象也就是application對象,吧給值保存到servletContext對象裡面!然後在web.xml文件中配置該監聽器就可以了!懂!不懂可以在問
⑧ 區域網如何架設SSH伺服器
在伺服器端的「命令提示符」窗口中,輸入「net start ″F-secure SSH Server″」命令,就可以啟動SSH服務,要停止該服務,輸入「net stop ″F-Secure SSH Server″」命令即可。其中「F-Secure SSH Server」為SSH伺服器名,「net start」和「net stop」為Windows系統啟動和停止系統服務所使用的命令。
提示:啟動了SSH服務後,一定要關閉Telnet服務,這樣伺服器就處在安全環境之中了,不用再怕數據被竊取。
三、合理設置SSH伺服器參數
啟動SSH服務後,網路管理員就可以遠程登錄伺服器進行維護了。但是每個區域網使用SSH服務的需求是不同的,因此默認的服務參數未必能滿足需要,那麼我們就可以自行設置這些參數。
1.基本參數設置
運行「fsshconf.exe」服務配置程序,在彈出的「F-Secure SSH Server Configuration」窗口左欄中,依次選擇「Server Settings→General」,然後在右邊的「General」框體中就可以對參數進行設置了(圖2)。
圖2 在SSH伺服器配置窗口中選擇常規設置項
在「Maximum number of connections」欄中輸入合適的數值,對連接到SSH伺服器的最大用戶數進行限制,在這里我們可根據需要進行設置,如輸入「50」,則只允許50個用戶同時連接SSH伺服器。
「Idle timeout」是用戶遠程登錄的超時時間設置,默認為「0」,就是不進行登錄超時限制。
大家可能還記得FTP伺服器的個性化的登錄信息,SSH伺服器也一樣可以做到。首先編寫一個登錄信息文本文件保存在文件夾中,然後點擊「Banner message file」欄的瀏覽按鈕,指定已編寫好的文本文件即可,這樣用戶遠程登錄時就能看到這些個性化的信息了。最後,大家一定要記住點擊「Apply」按鈕保存參數設置。2.網路參數設置
在「F-Secure SSH Server Configuration」窗口左欄中點擊「Network」選項(圖3),SSH伺服器默認使用的是「22」埠,當然也可以自定義埠號(注意,SSH伺服器使用的埠號一定不能和伺服器上別的程序的埠號沖突)。在「Port」欄中輸入想使用的埠號即可,其他的參數設置建議使用默認值。
⑨ SSH框架中 JSP應該怎麼獲取伺服器的數據
那你這個就不是SSH框架的標准了,標準是ACTION層提交請求,MANAGER層調用持久層進行數據操作並把返回的數據封裝好返回給調用的ACTION,ACTION把數據保存在REQUEST里跳轉到頁面展示。不想配太多。DO的話就用DispatchAction
⑩ ssh框架首頁面初始化的問題
給你點提示,你知道數據都是通過請求來的,那麼首頁當然也是一個請求。比如你可以通過登錄login來渲染index,jsp,如果是門戶網站不需要登錄的話,那麼你在瀏覽器輸入link就是一個請求了