您的位置:首页 > 运维架构 > Shell

ssh远程管理服务配置

2017-07-31 13:17 183 查看
##sshd远程连接的优化版主QQ:2559721591 资料网站:http://rshare.ys168.com

网络环境:ssh服务器(虚拟机):192.168.10.25ssh客户机(物理机):192.168.10.1 ssh:是安全的外壳的缩写(Secure Shell)。是专门为远程登录会话和其他网络服务提供安全性的协议。linux的ssh远程登录软件:openssh,默认端口是22。 显示远程连接过程:ssh -v root@192.168.10.25 #软件安装yum install -y openssh-server openssh-clients openssh说明:服务端:openssh-server 客户端:openssh-clients 通用程序:openssh 密钥验证:openssh-askpass 服务基本管理: 重启服务:service sshd restart 设为开机启动:chkconfig sshd on 常用命令:ssh、scp、ssh-keygen、ssh-copy-id、sftp ssh远程登录:语法:ssh [选项] 用户@远程IP [命令]选项:-v 显示过程例:远程执行命令:ssh root@192.168.10.25 'ls /;ifconfig' 远程登录:ssh root@192.168.10.25 scp命令:功能:采用ssh协议上传、下载文件。语法:scp -rv 源文件 目标文件选项:-r 递归复制目录 -v 显示过程 -P 指定端口 实例:上传本机/etc目录到root@192.168.10.25:/tmp/目录。 scp -rv /etc root@192.168.10.25:/tmp/ //上传文件 ssh root@192.168.10.25 ls /tmp/et* //验证结果 实例:上传root@192.168.10.25:/etc目录到本机/opt目录。 scp -rv root@192.168.10.25:/etc /opt/ //下载文件 ls /opt/ //验证结果 #问题:ssh服务连接慢的解决。说明:sshd_config是服务器配置,ssh_config是客户端配置文件。首先:vi /etc/ssh/sshd_config 修改如下内容:UseDNS no //禁用DNS解析功能(122行)GSSAPIAuthentication no //禁用GSSAPI授权功能(81行) 然后:vi /etc/ssh/ssh_config //客户端配置文件,修改如下内容:GSSAPIAuthentication no //禁用GSSAPI授权功能(81行) 最后:1、重启sshd服务:service sshd restart 2、用客户机远程登录测试:ssh root@192.168.10.25 ifconfig ##需求:实现ssh免密码远程登录。采用id_rsa私钥、id_rsa.pub公钥文件自动验证功能。RSA签名和验签过程:1.签名过程: client提取消息m的消息摘要h(m),并使用自己的私钥对摘要h(m)进行加密,生成签名s。 client将签名s和消息m一起,使用server发过来的公钥进行加密,获得密文c,发送给server。2.验签过程: server接受到密文后,用自己的私钥对其解密,获得明文消息m和签名s。 server使用client的公钥解密数字签名s,获得消息摘要h(m)。 server使用相同的方法提取消息m的消息摘要h(m)与上一步解密得到的h(m)进行比较,如果相同则验签成功。 公钥和私钥须知: A、公钥是给别人的: 1、发送密文使用公钥加密 2、验证签名使用公钥验证 B、私钥是自己保留的 1、接受密文使用私钥解密 2、发送签名使用私钥签名注意:上述过程逆转是不行的,比如使用私钥加密,使用公钥解密是不行的。 实现思路:1、在客户机用ssh-keygen生成id_rsa私钥、id_rsa.pub公钥文件。 2、将客户机的id_rsa.pub公钥文件上传给ssh服务器指定的用户家目录。 3、在客户机远程登录,测试是否免密码登录。注意:公钥和私钥验证是识别身份是根据客户机的主机名来确认。上传客户机的公钥后,一定不要再修改客户机的主机名,否则公钥和私钥无法认证。
实施步骤:1、在客户机生成公钥和私钥(交互式):ssh-keygen -t rsa(非交互):ssh-keygen -t rsa -f ~/.ssh/id_rsa -N ''选项说明:-t指定加密算法 -f指定密钥文件 -N指定加密密码#生成成对的公钥和私钥密钥。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:以下为密钥指纹标识符aa:0e:89:eb:83:55:44:d1:a1:ed:2d:81:aa:4e:47:29 root@localhost.localdomain2、在客户机上传公钥给服务器: 方法一:ssh-copy-id root@192.168.10.25 方法二:ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.10.253、在客户机测试远程控制:ssh root@192.168.10.25 ifconfig 附加任务:扫描192.168.10.25主机上的key文件内容。 ssh-keyscan 192.168.10.25 #ssh服务端配置文件安全加固。#修改服务器主配置文件:vi /etc/ssh/sshd_configPort 22ListenAddress 0.0.0.0Protocol 2HostKey /etc/ssh/ssh_host_rsa_keyHostKey /etc/ssh/ssh_host_dsa_key#LoginGraceTime 2m //登录宽限期为2分钟#PermitRootLogin yes //允许root登录#StrictModes yes //yes必需保证存放公钥的目录的属主与登陆用户名是相同的#MaxAuthTries 6 //密码错误重试6次#MaxSessions 10 //最大10个会话#RSAAuthentication yes //启用RSA验证#PubkeyAuthentication yes //启用公钥验证#AuthorizedKeysFile .ssh/authorized_keys //公钥保存的文件#PermitEmptyPasswords no //禁止空密码登录PasswordAuthentication yes //启用密码验证Subsystem sftp /usr/libexec/openssh/sftp-server //启用子系统sftp共享服务 #sftp客户端功能:采用sftp协议登录到ssh服务器,访问服务器上的文件,在服务器和客户机之间传输文件(上传、下载)。语法:sftp 用户名@远程IP实例:sftp root@192.168.10.25常用命令:说明:sftp登录成功后,可以执行大多数文件管理的shell命令。help或? //显示命令帮助pwd //显示服务器工作路径!pwd //显示本地工作路径ls //显示服务器当前目录的文件列表cd /tmp //切换服务器路径到/tmp目录!ls //查看本地文件列表lcd /etc //切换本地路径到/etcget 源 目标 //下载文件put 源 目标 //上传文件bye //退出登录 服务器端配置文件小结:[root@localhost ~]# vim /etc/ssh/sshd_config 配置文件中主要的三部分内容如下1、常见SSH服务器监听的选项如下:Port 22 //监听的端口为22Protocol 2 //使用SSH V2协议ListenAdderss 0.0.0.0 //监听的地址为所有地址UseDNS no //禁止DNS反向解析必做:找到UseDNS选项,默认为yes,会影响连接速度,将yes改为no。2、常见用户登录控制选项如下:PermitRootLogin no //禁止root用户登录PermitEmptyPasswords no //禁止空密码用户登录LoginGraceTime 2m //登录验证时间为2分钟MaxAuthTries 6 //最大重试次数为6AllowUsers user //只允许user用户登录,与DenyUsers选项相反3、常见登录验证方式如下:PasswordAuthentication yes //启用密码验证PubkeyAuthentication yes //启用秘钥验证AuthorsizedKeysFile .ssh/authorized_keys //指定公钥数据库文件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ssh sshd xshell