2023年7月26日发(作者:)
SSH配置完全手册
前言
为何使用 OpenSSH?
您每天使用的标准网络服务(如 FTP、Telnet、RCP 和远程 Shell (rsh) 等)在封闭环境中运行良好,但使用这些服务在网络上传输的信息是未加密的。任何人都可以在您的网络或远程计算机上使用包嗅探器查看交换的信息,有时甚至可以查看密码信息。
而且,使用所有此类服务时,在登录过程中用于自动登录的选项会受到限制,并且通常依赖于将纯文本密码嵌入到命令行才能执行语句,从而使登录过程变得更加不安全。
开发的安全 Shell (SSH) 协议可以排除这些限制。SSH 能够为整个通信通道提供加密,其中包括登录和密码凭据交换,它与公钥和私钥一起使用可以为登录提供自动化身份验证。您还可以将 SSH 用作基础传输协议。以这种方式使用 SSH 意味着在打开安全连接后,加密通道可以交换所有类型的信息,甚至 HTTP 和 SMTP 可以使用该方法来保证通信机制的安全。
OpenSSH 是 SSH 1 和 SSH 2 协议的免费实现。它最初是作为 OpenBSD
(Berkeley Software Distribution) 操作系统的一部分开发的,现在被发布为 UNIX
或 Linux® 和类似操作系统的常规解决方案。
安装 OpenSSH
OpenSSH 是免费软件,可以从 OpenSSH 的主要网站下载(请参见参考资料)。可以使用多种系统(包括 Linux、HP-UX、AIX®、Solaris、Mac OS X 等)上的源代码构建 OpenSSH 系统。通常可以找到所选平台和版本的预编译二进制代码。有些供应商甚至作为操作系统的一部分提供 OpenSSH 工具包。
要构建OpenSSH,您需要以下内容:
•
C 编译器(GNU C 编译器 (gcc) 或类似编译器)
•
Zlib – 压缩库
•
OpenSSL – 安全套接字层 (SSL) 安全库
注意:
在AIX上安装SSH , 需要安装OpenSSL来获得支持 . 否则, 安装会不成功 , 报错信息提示也要先安装OpenSSL .
OpenSSL可以登陆IBM官网下载 , SSH软件从
/project/?group_id=127997
上下载 . 环境说明
实验环境机器为: M85 , P630 系统版本均为AIX 5.3
根据系统版本来下载OpenSSL和OpenSSH的版本 .
OpenSSL :
OpenSSH : .Z
安装软件
安装顺序为先安装OpenSSL , 后安装OpenSSH
➢ OpenSSL : 将 包ftp到/tmp/ssh下 .通过smitty installp安装 .如下图:
➢ OpenSSH : 将.Z包ftp到/tmp/ssh下 , 用命令:Zcat .Z | tar -xvf -
解包.
Smitty installp 安装 .
注意要先单独安装license. 后面再安装base包,都要选择ACCEPT new license
agreements为yes.
如下图:
配置SSH
软件安装完成后 , 可以通过lssrc –s sshd查看ssh后台程序有没启动 . 一般安装完ssh软件, 会自动激活该后台程序 . 如查看未激活 , 用 startsrc -s sshd来启动就可以.
➢ 软件安装完成后 , 在/etc下会有ssh这个目录生成.
➢ 修改sshd_config文件 , 为后面的2台机器之间互相访问不需要提供密码做准备 . 修改的内容如图红色的,vi sshd_config将前头的#号注释掉,启用就可以. AIX6105SP5版本中需要在/etc/ssh/sshd_config中修改.ssh/authorized_keys为~/.ssh/authorized_keys,否则系统重启后无法启动sshd进程。
在修改该配置文件之前,stopsrc -s sshd停止sshd,修改完成后启动startsrc
-s sshd
调试命令:/usr/sbin/sshd -ddd
版本查看:ssh –V
➢ 利用命令:ssh-keygen生成key
全部选择默认的就可以 , 生成的private key和public Key会保存在
~/.ssh目录下 . 如下图
注: 为了后面的访问方便, passphrase一行密码一般设置为空. 将2台机器的public key互相传给对方 . 可以有好几种方法: ftp , rcp , scp都可以 . 这里用rcp来传输, 其实scp也可以传输,就是有点麻烦,由于ssh未配置好 ,
就不用scp了.
如果rcp显示permission denied则查看~./rhosts文件,格式:host user。例:
bussvr01 root
Pmissvr01 root
同样, 在另外台机器把local的pub key传给对方. 名字改为local machine
named 方法 . 有区别于本地的pub key .
可以看到对方的pub key已经传输完成 .
➢ 由于上面修改了sshd_config文件 , 其中一行为
AuthorizedKeysFile .ssh/authorized_keys
为认证读取文件的位置 .
我们采取默认的方式 , 在~/.ssh下touch一个authorized_keys文件.
将传输过来的对方主机的pub key内容 ,追加到authorized_keys文件上, 如果有多个主机建立了ssh信任机制, 则连续追加即可.
如图所示 , 追加成功.
➢ 开始互访
第一次访问, 会提示你是否确认访问, 输入yes .
第二次访问, 就没有改提示了 . 如下图:
而且访问的hosts会自动在默认的~/.ssh目录下生成一个known_hosts文件,
该文件记录了ssh目的主机的ip地址以及公钥和密码信息 .
ssh密码问题
grid信任配置完成后,ssh nodename date仍然需要输入密码的情况。解决过程如下:
1)在/etc/ssh/sshd_config配置文件中打开ssh的debug信息记录,如下格式:
SyslogFacility AUTH
Loglevel debug
2)停止SSH进程:stopsrc -s sshd
3)启动SSH进程:startsrc -s sshd
4)使用/usr/sbin/sshd -ddd调试,会显示ssh进程的参数设置,确认ssh的auth日志参数配置
#/usr/sbin/sshd -ddd
5)syslog守护进程的配置文件/etc/文件中将auth的级别设置为debug,信息放入/var/log/secure文件,确保文件存在。/etc/新增如下条目:
/var/log/secure
然后refresh -s sshd
以上步骤是root在node1和node2上都执行。
6)在node1节点通过grid用户执行ssh -vvv node2 ,同时在node2节点查看secure日志文件
$tail -f /var/log/secure
文件内容提示/.ssh/authorized_keys无法打开,可能是grid仍然使用的是root下的authorized_keys文件认证,而没有使用/home/grid/.ssh/authorized_keys文件
7)root用户登录node2,修改root用户的.ssh目录权限:
#chmod 755 /.ssh
#chmod 644 /.ssh/authorized_keys
8)node2上将grid用户下的authorized_keys文件内容导入root用户下的/.ssh/authorized_keys
cat /home/grid/.ssh/authorized_keys>> /.ssh/authorized_keys
9)在node1上grid用户执行ssh node2 date 成功返日期,无须输入密码 Windows机器ssh到主机
上面介绍的是两台小机之间的互相ssh通讯的解决办法 . 通过windows上ssh到主机来提高访问的高安全性.
在本地windows xp的机器上, 安装Secure CRT这个软件.
安装完成后, 启动.
发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1690377273a340374.html
评论列表(0条)