SSH2配置完整案例
- 格式:docx
- 大小:650.42 KB
- 文档页数:15
Linux配置SSH免密登录“ssh-keygen”的基本⽤法⽬录1 什么是SSH2 配置SSH免密登录2.1 安装必需的软件2.2 ssh-keygen创建公钥-私钥对2.3 ssh-copy-id把A的公钥发送给B2.4 在A服务器上免密登录B服务器3 扩展说明3.2 ⽂件权限3.3 ⽂件的编辑和查看1 什么是SSH引⽤百度百科的说明:SSH 为 Secure Shell的缩写,由 IETF 的⽹络⼩组(Network Working Group)所制定;它是建⽴在应⽤层基础上的安全协议。
SSH 是⽬前较可靠,专为远程登录会话和其他⽹络服务提供安全性的协议。
利⽤ SSH 协议可以有效防⽌远程管理过程中的信息泄露问题。
SSH最初是UNIX系统上的⼀个程序,后来⼜迅速扩展到其他操作平台。
为了在不同平台/⽹络主机之间的通信安全, 很多时候我们都要通过ssh进⾏认证. ssh认证⽅式主要有2种:①基于⼝令的安全认证: 每次登录的时候都要输⼊⽤户名和密码, 由于要在⽹络上传输密码, 可能存在中间⼈攻击的风险;②基于密钥的安全认证: 配置完成后就可以实现免密登录, 这种⽅式更加安全 —— 不需要在⽹络上传递⼝令, 只需要传输⼀次公钥. 常见的git的ssh⽅式就是通过公钥进⾏认证的.2 配置SSH免密登录说明: 这⾥演⽰所⽤的服务器操作系统是Cent OS 7. 我们的⽬标是:A服务器(172.16.22.131) 能免密登录 B服务器 (172.16.22.132).注意: ssh连接是单向的, A能免密登录B, 并不能同时实现B能免密登录A.2.1 安装必需的软件在操作之前, 先确保所需要的软件已经正常安装.这⾥我们需要安装ssh-keygen和ssh-copy-id, 安装⽅式如下:# 安装ssh-keygen, 需要确保服务器可以联⽹. 博主这⾥已经安装完成, 所以没有做任何事.[root@localhost ~]# yum install -y ssh-keygenLoaded plugins: fastestmirror, langpacksbase | 3.6 kB 00:00:00epel | 3.6 kB 00:00:00extras | 2.9 kB 00:00:00updates | 2.9 kB 00:00:00Loading mirror speeds from cached hostfileNo package ssh-keygen available.Error: Nothing to do# 安装ssh-copy-id[root@localhost ~]# yum install -y ssh-copy-idLoaded plugins: fastestmirror, langpacksLoading mirror speeds from cached hostfileNo package ssh-copy-id available.Error: Nothing to do2.2 ssh-keygen创建公钥-私钥对(1) 在指定⽬录下⽣成rsa密钥, 并指定注释为“shoufeng”, 实现⽰例:[root@localhost ~]# ssh-keygen -t rsa -f ~/.ssh/id_rsa -C "shoufeng"# ~密钥类型 ~密钥⽂件路径及名称 ~ 备注信息Generating public/private rsa key pair.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:9a:e3:94:b9:69:c8:e9:68:4b:dc:fa:43:25:7f:53:f1 shoufengThe key's randomart image is:+--[ RSA 2048]----+| || . || o || . . . E || + S. || . .. .=o || oo.oB. . || ..o=o.+ || .++oo+ |+-----------------+注意: 密钥的⽂件名称必须是id_xxx, 这⾥的xxx就是-t参数指定的密钥类型. ⽐如密钥类型是rsa, 那么密钥⽂件名就必须是id_rsa.(2) ssh-keygen常⽤参数说明:-t: 密钥类型, 可以选择 dsa | ecdsa | ed25519 | rsa;-f: 密钥⽬录位置, 默认为当前⽤户home路径下的.ssh隐藏⽬录, 也就是~/.ssh/, 同时默认密钥⽂件名以id_rsa开头. 如果是root⽤户, 则在/root/.ssh/id_rsa, 若为其他⽤户, 则在/home/username/.ssh/id_rsa; -C: 指定此密钥的备注信息, 需要配置多个免密登录时, 建议携带;-N: 指定此密钥对的密码, 如果指定此参数, 则命令执⾏过程中就不会出现交互确认密码的信息了.举例说明: 同时指定⽬录位置、密码、注释信息, 就不需要输⼊回车键即可完成创建:ssh-keygen -t rsa -f ~/.ssh/id_rsa -N shoufeng -C shoufeng(3) 前往~/.ssh/⽬录下查看⽣成的⽂件:# ⽣成的⽂件以test_rsa开头, test_rsa是私钥, test_rsa.pub是公钥:[root@localhost .ssh]# lstest_rsa test_rsa.pub# 通过cat命令查看公钥⽂件:[root@localhost .ssh]# cat id_rsa.pubssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC2JpLMqgeg9jB9ZztOCw0WMS8hdVpFxthqG1vOQTOji/cp0+8RUZl3P6NtzqfHbs0iTcY0ypIJGgx4eXyipfLvilV2bSxRINCVV73VnydVYl5gLHsrgOx+372Wovlanq7Mxq06qAONjuRD0c64xqdJFKb1Ov# 可以看到最后有⼀个注释内容shoufeng2.3 ssh-copy-id把A的公钥发送给B默认⽤法是: ssh-copy-id root@172.16.22.132, ssh-copy-id命令连接远程服务器时的默认端⼝是22, 当然可以指定⽂件、远程主机的IP、⽤户和端⼝:# 指定要拷贝的本地⽂件、远程主机的IP+⽤户名+端⼝号:[root@localhost .ssh]# ssh-copy-id -i ~/.ssh/id_rsa.pub -p 22 root@172.16.22.132/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keysroot@172.16.22.132's password: # 输⼊密码后, 将拷贝公钥Number of key(s) added: 1Now try logging into the machine, with: "ssh -p '22' 'root@172.16.22.132'"and check to make sure that only the key(s) you wanted were added.2.4 在A服务器上免密登录B服务器[root@localhost .ssh]# ssh root@172.16.22.132Last login: Fri Jun 14 08:46:04 2019 from 192.168.34.16 # 登录成功3 扩展说明3.1 其他⽅式发送公钥⽂件上述2.3步骤是通过ssh-copy-id⼯具发送公钥⽂件的, 当然我们也可以通过其他⽅式实现:(1) 将A的公钥⽂件发给B:通过scp命令将A服务器的公钥⽂件发送到B服务器的⽤户⽬录下, 因为还没有配置成功免密登录, 所以期间需要输⼊B服务器对应⽤户的密码:[root@localhost .ssh]# scp id_rsa.pub root@172.16.22.132:/root/.sshroot@172.16.22.132's password:id_rsa.pub 100% 390 0.4KB/s 00:00(2) 在B上创建authorized_keys⽂件:[root@localhost .ssh]# cd /root/.ssh/[root@localhost .ssh]# lsid_rsa.pub# 通过A服务器的公钥⽣成"authorized_keys"⽂件:[root@localhost .ssh]# cat id_rsa.pub >> authorized_keys[root@localhost .ssh]# cat authorized_keysssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC2JpLMqgeg9jB9ZztOCw0WMS8hdVpFxthqG1vOQTOji/cp0+8RUZl3P6NtzqfHbs0iTcY0ypIJGgx4eXyipfLvilV2bSxRINCVV73VnydVYl5gLHsrgOx+372Wovlanq7Mxq06qAONjuRD0c64xqdJFKb1OvS/nyKaOr9注意: 上述重定向时使⽤>>进⾏追加, 不要⽤>, 那会清空原有内容.3.2 ⽂件权限为了让私钥⽂件和公钥⽂件能够在认证中起作⽤, 需要确保权限的正确性:①对于.ssh⽬录以及其内部的公钥、私钥⽂件, 当前⽤户⾄少要有执⾏权限, 其他⽤户最多只能有执⾏权限.②不要图省事设置成777权限: 太⼤的权限不安全, ⽽且数字签名也不⽀持这种权限策略.③对普通⽤户, 建议设置成600权限: chmod 600 authorized_keys id_rsa id_rsa.pub;④对root⽤户, 建议设置成644权限: chmod 644 authorized_keys id_rsa id_rsa.pub.3.3 ⽂件的编辑和查看在Liunx环境下, 如果要查看、复制私钥、公钥, 以及authorized_keys等⽂件, 不要使⽤vim等编辑器打开, 因为它会产⽣不必要的回车;应该通过cat、more、less等查看命令把内容打印到终端上, 再作查看、复制等操作.总结以上所述是⼩编给⼤家介绍的Linux 配置SSH免密登录 “ssh-keygen”的基本⽤法 ,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。
.SSH的理解及其应用实践1.SSH是什么 (3)2 Spring 介绍理解: (3)2.1简单介绍 (3)2.2各种特性 (3)2.2.1轻量 (3)2.2.2控制反转 (3)2.2.3面向切面 (4)2 .2.4容器 (4)2.2.5框架 (4)2.3总结 (4)3.Hibernate介绍理解: (4)3.1简单介绍 (4)3.2核心接口 (5).3.2.1 Session接口 (5)3.2.2 .SessionFactory接口 (5)3.2.3.Configuration接口 (5)3.2.4.Transaction接口 (5)3.2.5 Query和Criteria接口 (5)4. Struts (6)4.1什么是Struts框架 (6)4.2 Struts 概览 (6)4.2.1Client browser(客户浏览器) (6)4.4 Struts中的Controller(控制器)命令设计模式的实现 (7)4.5 在Struts框架中控制器组件的三个构成部分 (7)4.7 Struts中的Model(模型) (8)5.SSH整合步骤 (8)5.1安装所需软件环境: (8)5.1.1、首先安装JDK,配置Java环境变量 (8)5.1.2安装MyEelipse (8)5.1.3 数据库 (9)5.1.4、 (9)5.2环境配置好了就可以做SSH整合的项目 (9)6.搭建框架并简单应用 (11)6.1准备工作 (11)6.2(建立项目,包结构,导入所需jar文件) (12)6.3撰写资源文件 (15)6.4在com.ssh.utilm 包下添加下列文件 (19)6.5添加hibernate DAO 模板 (20)6.6以上的工作还不够,我们还需要进行WEB方面的配置 (20)7.测试: (23)7.1.ssh.model 包下建立User.java (23)7.2 com.ssh.service 包下建立UserService.java (24)7.3com.ssh.test 下建立Test.java (25)7.4结果 (26)8.结束语 (26)1.SSH是什么新的MVC软件开发模式, SSH(Struts,Spring,Hibernate) Struts进行流程控制,Spring进行业务流转,Hibernate进行数据库操作的封装,这种新的开发模式让我们的开发更加方便、快捷、思路清晰!2 Spring 介绍理解:2.1简单介绍Spring是一个开源框架,它由Rod Johnson创建。
SSH2框架的搭建及与SSH1的差别介绍SSH2框架搭建版本:struts2.1.6 spring2.5.6hibernate3.3.1SSH2与SSH1之简要比较SSH框架的优势开发效率高适应客户的需求随机变化SSH1框架的劣势繁琐的配置文件编写struts1.X Action线程安全,仅允许一个实例去处理所有请求Forward过于繁琐对Servlet依赖过强SSH2与SSH1之简要比较SSH2优势大量简化配置文件编写。
更大程度解耦合Struts不再依赖Servlet通配符配置注解使用struts2使用struts2借鉴webwork的成功之处,兼容struts1,集合两者优点,更易于整合spring及hibernate框架。
所需jar包:struts2相关配置web.xml文件配置与struts1不同,struts2采用Filter进行配置filter-namestruts/filter-namefilter-class //.uts2.//.ter.StrutsPrepareAndExecuteFilter/filter-classfilter-mappingfilter-namestruts/filter-nameurl-pattern*.do/url-pattern/filter-ma ppingstruts2相关配置struts.xml文件配置在项目src目录下添加struts.xml配置文件。
其基本配置如下:?xml version"1.0" encoding"UTF-8" ?!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "////.package name"default" extends"struts-default"namespace""struts2相关配置struts.xml常用配置为简化配置文件编写,struts2提供通配符支持,如下:action name“*” class“com.demo.1Action”method“show”同时,struts2还支持*/*的配置模式,在配置文件中节点下配置如下:constantname"//.shesInActionNames"value"true"则以上配置可改写为:action name“*/*” class “com.demo.1Action”method“2”struts2相关配置struts.xml常用配置struts2默认访问后缀为.action,不符合访问习惯,且过于繁琐,可在标签下配置如下:constantname"//.ension"value"do"则可使用习惯的.do方式访问整合spring框架添加spring核心包及struts2-spring-plugin-2.1.6.jar。
微软中国如何搭建SSH框架搭建SSH框架的步骤张双健2012/8/12本文档主要讲解了使用MyEclipse快速搭建Spring、Struts 2、Hibernate框架的集成。
1.首先我们创建一个web项目。
2.填写项目名称,任意名称-根据自己需要。
3.接下来我们首先添加Spring的功能。
选中我们创建的项目->点击右键->MyEclipse->添加Spring功能。
4.选择你所想要使用的Spring版本,这里我选择的是Spring 2.5版本的。
勾选Spring框架所需包。
总共需要5个包:Spring 2.5 AOP Libraries,Spring 2.5 Core Libraries,Spring 2.5 Persistence Core Libraries,Spring2.5 Persistence JDBC Libraries,Spring 2.5 Web Libraries. 然后点击下一步。
5.这里的启用AOP构建器为可选可不选选项。
建议小心项目勾选,大型项目不要勾选。
之后点击完成。
这样就完成了Spring框架功能的添加。
6.接下来添加Hibernate功能。
首先我们要先切换到数据库资源管理器布局下。
见下图.7.打开如下图界面后,在左边的DB Browser里面右击选择New(新建)。
8.假设这里你使用的是Oracle数据库。
根据下图所写的步骤进行操作。
完成后点击下一步。
9.选择”显示选中模式”,就是第三个单选按钮。
(如果你要使所有数据库用户都可以使用就按默认选项。
)然后点击Add添加数据库用户,在弹出的框里选择你所要使用的数据库用户。
点击Ok.然后再点击完成。
10.回到Web开发视图。
添加Hibernate功能。
和添加Spring功能一样,首先选中项目->点击右键->添加Hibernate功能.11.选择你要使用的Hibernate版本,这里我选择的是Hibernate 3.2版本。
c++ libssh2用法`libssh2` 是一个用于在 C 和 C++ 中实现 SSHv2 协议的库。
以下是一个简单的 `libssh2` 使用示例,用于连接到 SSH 服务器并执行一个简单的命令:```cpp#include <stdio.h>#include <libssh2.h>int main(void) {LIBSSH2_SESSION *session = NULL;LIBSSH2_CHANNEL *channel = NULL;int rc;// 初始化 libssh2if (libssh2_init(0) != 0) {fprintf(stderr, "Could not initialize libssh2\n"); return 1;}// 创建会话实例session = libssh2_session_init();if (session == NULL) {fprintf(stderr, "Could not create session\n");return 1;}// 开始会话rc = libssh2_session_init_ex(session, NULL, 0, NULL);if (rc != 0) {fprintf(stderr, "Could not initialize session\n"); return 1;}// 连接到服务器rc = libssh2_session_connect(session, "your_server_ip", your_server_port);if (rc != 0) {fprintf(stderr, "Could not connect to server\n");return 1;}// 验证用户身份(此处仅为示例,实际应用中需要验证用户名和密码)rc = libssh2_session_userauth_password(session,"username", "password");if (rc != 0) {fprintf(stderr, "Authentication failed\n");return 1;}// 打开通道(类似于打开一个终端会话)channel = libssh2_session_open_channel(session, "shell", 0);if (channel == NULL) {fprintf(stderr, "Could not open channel\n");return 1;}// 通过通道发送命令并获取输出const char *command = "ls -l"; // 要执行的命令char *command_output = NULL; // 命令输出结果int command_output_len = 0; // 命令输出长度rc = libssh2_channel_exec(channel, command);if (rc != 0) {fprintf(stderr, "Could not execute command\n");return 1;}rc = libssh2_channel_read(channel, &command_output,command_output_len); // 读取命令输出结果,可能需要多次调用以获取完整输出if (rc > 0) { // rc > 0 表示成功读取了数据,否则可能表示连接已关闭或发生错误等。
MyEclipse7.5快速半手工开发SSH2(Struts2+Spring+Hibernate)应用之“超光速”教程下面是一篇ssh2快速入门教程。
需要有java+数据库的基础。
附件中是该文的word文档,可以下载阅读。
MyEclipse7.5快速半手工开发SSH2(Struts2+Spring+Hibernate)应用之“超光速”教程1. 新建一个Web Project,命名为:struts2_template2. 导入样例程序struts2-blank-2.1.8.war中lib下的包(暂时只需要这几个,网上提醒不能随便加包!):commons-fileupload-1.2.1.jarcommons-io-1.3.2.jarfreemarker-2.3.15.jarognl-2.7.3.jarstruts2-core-2.1.8.jar提醒:如果你做了许多工程,后来删除了。
其实都还在.metadata/.me-tcat/webapps下面!!!如果他们有错,就会影响到你后来的工程!3. 在web.xml中加入支持struts2的filter,并将mapping设为/*F ilter的名字叫“struts准备与执行”,就是strutsPrepareAndExecute,敲入前面几个字母系统就会找到了。
-------------------- 到此为止,我们的工程已经可以支持struts2了。
下面是实验--------------4. 在src目录中拷贝一个struts.xml作为书写配置的起点(注意!和以前版本不同,是src目录!)一个最简单的配置文件包括下面内容:<action name="HelloWorld" class="example.HelloWorld">表示,当从URL请求名为HelloWorld的action时候,实际执行的是example.HelloWorld 类。
cisco设备开启SSH2远程登陆路由交换:1更改主机名:Router(config)#hostname R12设置域名:R1 (config)# ip domain-name /doc/0912876027.html,3配置加密方式为RSA:R1 (config)# crypto key generate rsa 512推荐1024关闭:R2(config)#crypto key zeroize rsa4开启AAA认证:R1(config)# aaa new-model如果不开启,用下面的用户名将无法登陆5设置客户吗与密码:R1(config)# username UCRoot password UCRoot@1236设置SSH超时:R1(config)# ip ssh time-out 120范围:1-120秒7开启SSH认证:R1 (config)# ip ssh authentication-retries 5 密码重试次数0-5次8进入Telnet接口配置模式:R1(config)# line vty 0 4在Telnet接口模式下使用SSH认证:R1(config-line)# transport input SSH只允许SSH9若要用SSH2,配置SSH的版本号:R1 (config)#ip ssh version 210如果需要进特权模式,需要配置secret密码:R1(config)#enable secret secret@123ASA防火墙:一、基本配置#hostname name //名字的设置#interface gigabitethernet0/0 //进入接口0/0#nameif outside //配置接口名为outside#security-level 0 //设置安全级别。
级别从0--100,级别越高安全级别越高#ip address 218.xxx.xxx.xxx 255.255.255.248 //设置外部ip地址#no shutdown#interface ethernet0/1 //进入接口0/1#nameif inside //配置接口名为inside#security-level 100 //设置安全级别。
1.1 设备作为SSH服务器配置举例1.1.1 password认证配置举例1. 组网需求如图1-1,配置Host(SSH客户端)与Switch建立本地连接。
Host采用SSH协议登录到Switch上,以保证数据信息交换的安全.SSH用户采用的认证方式为password认证。
2. 组网图SSH client SSH server图1-1SSH本地配置组网图3. 配置步骤(1) 配置SSH服务器Switch# 生成RSA密钥对,并启动SSH服务器。
<Switch〉 system—view[Switch] public—key local create rsa[Switch] ssh server enable#配置VLAN接口1的IP地址,客户端将通过该地址连接SSH服务器。
[Switch] interface vlan-interface 1[Switch-Vlan-interface1] ip address 192。
168。
1。
40 255.255.255。
0[Switch-Vlan—interface1] quit# 设置SSH客户端登录用户界面的认证方式为AAA认证.[Switch] user—interface vty 0 4[Switch-ui—vty0—4] authentication-mode scheme# 设置Switch上远程用户登录协议为SSH。
[Switch-ui-vty0—4] protocol inbound ssh[Switch—ui-vty0-4] quit# 创建本地用户client001,并设置用户访问的命令级别为3。
[Switch] local—user client001[Switch—luser—client001] password simple aabbcc[Switch-luser—client001] service—type ssh level 3[Switch-luser-client001] quit# 配置SSH用户client001的服务类型为Stelnet,认证方式为password认证。
SSH2工作流程1.服务器解析web.xml,读取到一个spring的监听器,告诉spring容器开始初始化配置文件(applicationContext.xml )中的信息2.Spring容器开始实例化spring相关bean和配置文件创建dataSource数据源创建hibernate的sessionFactory(传入dataSource)创建操作数据库所需的操作模板HibernateTemplate(传入sessionFactory) 并扫描生成配置文件中的bean(IOC 注入)生成各个dao 传入hibernateTemplate生成各个service 传入相对应的dao(初始化工作完成,等待用户的请求,只初始化spring容器中的bean)注:如果action是prototype,不是单例的话,spring容器初始化完成;如果action是单例就会先初始化对应的(action,service,dao,hibernateTemplate,sessionFactory,datasource) 3.客户端请求服务器请求发送到tomcat(产生了HttpServletRequest)Tomcat接收到请求根据url寻找web application,开始加载该web application的web.xml 读取到的时候。
通过filter过滤所有的url,把请求传给StrutsPrepareAndExecuteFilter(前端控制器)开始struts2的工作加载配置文件,(其中包括struts-plugin.xml)StrutsPrepareAndExecuteFilter调用actionMapper来确定是否有action需要调用如果actionMapper确定请求需要调用某个action,那么StrutsPrepareAndExecuteFilter 调用Dispatcher类中的serviceAction方法产生valuestack(值栈)与actioncontext (action上下文)并产生actionproxy代理对象把请求的处理交给actionProxyactionProxy通过configurationManager查看struts.xml 来找到需要调用的action和action所有的配置信息(拦截器,转换器等) actionProxy创建一个actionInvocation的实例。
思科路由器SSH配置案例思科路由器SSH配置案例SSH 为建立在应用层基础上的'安全协议。
SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。
利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
下面是思科路由器SSH 配置案例,希望对你有帮助!1. 配置hostname和ipdomain-nameRouter#configure terminalRouter(config)#hostname R2 //配置ssh的时候路由器的名字不能为routerR2(config)#ip domain-name //配置SSH必需R2(config)#username best password best1或 username best privilege 15 password 7 best1注:添加一个用户:best,口令:best1R2(config)#line vty 0 4R2(config-line)#transport input ssh //只允许用SSH登录(注意:禁止telnet和从交换引擎session!)2. 配置SSH服务:R2(config)#crypto key generate rsaThe name for the keys will be: 注:SSH的关键字名就是hostname + . +ipdomain-nameChoose the size of the key modulus in the range of 360 to 2048 for yourGeneral Purpose Keys. Choosing a key modulus greater than 512 may takea few minutsHow many bits in the modulus [512]: 注:选择加密位数,cisco推荐使用1024Generating RSA keys ...[OK]用命令show ip ssh也能看到:SSH Enabled - version 1.5Authentication timeout: 120 secs; Authentication retries:现在SSH服务已经启动,如果需要停止SSH服务,用以下命令:R2(config)#crypto key zeroize rsa3.设置SSH参数配置好了SSH之后,通过show run命令我们看到SSH默认的参数:超时限定为120秒,认证重试次数为3次,可以通过下面命令进行修改:R2(config)#ip ssh {[time-out seconds]} │ [authentication-retries interger]}如果要把超时限定改为180秒,则应该用:R2(config)# ip ssh time-out 180如果要把重试次数改成5次,则应该用:R2(config)# ip ssh authentication-retries这样,SSH已经在路由器上配置成功了,就能够通过SSH进行安全登录了。
配置用户通过STelnet登录设备示例组网需求如图1所示,用户希望安全的远程登录设备,但是Telnet缺少安全的认证方式,用户可以通过STelnet方式进行远程的安全登录。
终端PC1、PC2和SSH服务器之间路由可达,10.137.217.203是SSH服务器的管理口IP地址。
在SSH服务器端配置两个登录用户为client001和client002,PC1使用client001用户通过password认证方式登录SSH服务器,PC2使用client002用户通过RSA认证方式登录SSH服务器。
图1 配置用户通过STelnet登录设备组网图配置思路采用如下的思路配置用户通过STelnet登录设备:1.PC1端已安装登录SSH服务器软件,PC2端已安装密钥对生成软件、公钥转换软件、登录SSH服务器软件。
2.在SSH服务器端生成本地密钥对,实现在服务器端和客户端进行安全地数据交互。
3.在SSH服务器端配置SSH用户client001和client002分别使用不同的认证方式。
4.在SSH服务器端开启STelnet服务功能。
5.在SSH服务器端配置SSH用户client001和client002的服务方式为STelnet。
6.用户client001和client002分别以STelnet方式实现登录SSH服务器。
操作步骤1.在服务器端生成本地密钥对<Quidway> system-view[Quidway] sysname SSH Server[SSH Server] rsa local-key-pair createThe key name will be: SSH Server_HostThe range of public key size is (512 ~ 2048).NOTES: If the key modulus is greater than 512,it will take a few minutes.Input the bits in the modulus[default = 2048]:1024Generating keys.........................++++++++........................................................+++++++ +........+++++++++.....+++++++++2.在服务器端创建SSH用户# 配置VTY用户界面。
putty实现⾃动登录的⽅法(ssh和ssh2)1、登录主机并输⼊ssh-keygen -t rsa提⽰Enter file in which to save the key (/root/.ssh/id_rsa):输⼊/root/.ssh/sea_rsa根据提⽰输⼊相关路径名和⽂件名并⽣成两个⽂件(之后的两个选项直接回车)2、把那个没有.pub的⽂件copy出来⽤puttygen转换⼀下⽣成windows下putty可⽤的key(这⾥指sea_rsa,选择puttygen的Conversions的Import key(这⾥指sea_rsa,然后点Save private key)3、把那个带有.pub的⽂件改名为authorized_keys并放⼊/root/.ssh/4、启动Putty,设置好session的各项参数,然后从左边选择“SSH->Auth”,点击 Browse 按钮,选择那个key⽂件。
再从左边选择 Session,然后点击 Save 按钮把修改保存下来。
然后点击Open 按钮就可以登录了。
如果上⾯的操作都没有问题,那这时应该就⾃动登录了,只需输⼊⽤户名⽆需输⼊密码。
如果在Connection⾥的Data⾥添加⽤户名的话就连⽤户名就不⽤输⼊了。
注意:如果只⽤SSH2协议,需要修改 /etc/ssh/sshd_config ⽂件,加⼊(或改为):Protocol 2ls -l `which ssh` 如果为ssh2的话需要修改:cd /root/.ssh2/touch authorization(对应于authorized_keys)内容为:复制代码代码如下:# Local public keyKey id_rsa_1024_a.pub其他步骤⼀样。
矿产资源开发利用方案编写内容要求及审查大纲
矿产资源开发利用方案编写内容要求及《矿产资源开发利用方案》审查大纲一、概述
㈠矿区位置、隶属关系和企业性质。
如为改扩建矿山, 应说明矿山现状、
特点及存在的主要问题。
㈡编制依据
(1简述项目前期工作进展情况及与有关方面对项目的意向性协议情况。
(2 列出开发利用方案编制所依据的主要基础性资料的名称。
如经储量管理部门认定的矿区地质勘探报告、选矿试验报告、加工利用试验报告、工程地质初评资料、矿区水文资料和供水资料等。
对改、扩建矿山应有生产实际资料, 如矿山总平面现状图、矿床开拓系统图、采场现状图和主要采选设备清单等。
二、矿产品需求现状和预测
㈠该矿产在国内需求情况和市场供应情况
1、矿产品现状及加工利用趋向。
2、国内近、远期的需求量及主要销向预测。
㈡产品价格分析
1、国内矿产品价格现状。
2、矿产品价格稳定性及变化趋势。
三、矿产资源概况
㈠矿区总体概况
1、矿区总体规划情况。
2、矿区矿产资源概况。
3、该设计与矿区总体开发的关系。
㈡该设计项目的资源概况
1、矿床地质及构造特征。
2、矿床开采技术条件及水文地质条件。
SSH2配置完整案例
一 新建WEB项目SSH2
二 在dbbrowser中新建数据连接sql
三 添加struts2容器
四 添加spring容器
五 添加hibernate容器
这里应当是
webroot/web-inf/applicationContext.x
ml
完成后结构图如下:
六 配置各文件
1 配置struts.xml
Foundation//DTD Struts Configuration
2.1//EN""http://struts.apache.org/dtds/struts-2
.1.dtd">
2 配置web.xml
ext.ContextLoaderListener
org.apache.struts2.dispatcher.ng.filter.Stru
tsPrepareAndExecuteFilter
7 代码
1 逆向工程admin表
生成后的结构
2 ListAdmin.java action类
package com.my.action;
import java.util.List;
import com.my.orm.Admin;
import com.my.orm.AdminDAO;
import com.opensymphony.xwork2.ActionSupport;
publicclassListAdminextends ActionSupport{
AdminDAO adminDAO;
List
@Override
public String execute() throws Exception {
list=adminDAO.findAll();
return"success";
}
public AdminDAO getAdminDAO() {
returnadminDAO;
}
publicvoid setAdminDAO(AdminDAO adminDAO) {
this.adminDAO = adminDAO;
}
public List
returnlist;
}
publicvoid setList(List
this.list = list;
}
}
3 listAdmin.jsp
<%@pagelanguage="java"import="java.util.*"pageE
ncoding="utf-8"%>
<%@taglibprefix="s"uri="/struts-tags"%>
<%@taglibprefix="c"uri="http://java.sun.com/jsp
/jstl/core"%>
Transitional//EN">
4 strut.xml配置
5 applicationContext.xml中自动生成的id=”AdminDAO”
修改成 id=”adminDao”(也就是AdminDao第一个字母小写,
使之与ListAdmin.java中属性adminDAO相匹配)
最后部署并运行