sshd
sshd服务介绍
ssh协议:安全外壳协议。为 Secure Shell 的缩写。ssh为建立在应用层和传输层基础上的安全协议。
sshd服务使用ssh协议可以用来进行远程控制,或在计算机之间传送文件。
openssh软件包,提供了服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的数据,并由此来代替原来的类似服务。
安装包:
openssh-7.4p1-11.el7.x86_64.rpm 包含openssh服务器及客户端需要的核心文件
openssh-server-7.4p1-11.el7.x86_64.rpm openssh 服务器软件包
openssh-clients-7.4p1-11.el7.x86_64.rpm openssh客户端软件包
查看一个软件包的作业
[[email protected] Packages]# rpm -pqi openssh-server-7.4p1-11.el7.x86_64.rpm
查看关于openssh的软件包
[[email protected] Packages]# rpm -qa|grep openssh
openssh常用配置文件
/etc/ssh/ssh_config 客户端配置文件
/etc/ssh/sshd_config 服务器配置文件
sshd服务启动与关闭
# systemctl start|stop|restart|status sshd
修改配置文件
实现远程登录:身份验证
ssh命令
ssh [远程主机用户名]@[远程服务器主机名或ip地址]
[[email protected] Packages]# ssh [email protected] 或 ssh -l zhangsan 192.168.221.20
[[email protected] Packages]# ls /root/.ssh/known_hosts
/root/.ssh/known_hosts
配置文件/etc/ssh/sshd_config
注:参数前面有#,表示是默认值,当然#号表示注释
#Port 22
Port 22
Port 300
#ListenAddress 0.0.0.0 本机上所有的ipv4地址都提供服务
#ListenAddress :: 本机上所有的ipv6地址
SyslogFacility AUTHPRIV 日志类型
ssh默认日志存放位置 /etc/log/secure
vim /etc/rsyslog.conf
#LogLevel INFO 登录记录的等级 INFO级别以上
#PermitRootLogin yes 允许root登录,设置成 no,表示不允许root登录
#PasswordAuthentication yes 允许密码登录
#PermitEmptyPasswords no 不允许空密码登录
//当使用者连上ssh server之后,会出现输入密码的画面,在该画面中
//在多久时间内没有成功连上ssh server就强迫断线。若无单位则默认为秒
#LoginGraceTime 2m
//登入后是否显示出一些信息。如上次登入的时间,地点等等,预设是yes
//打印出/etc/motd这个文档的内容
#PrintMotd yes 打印提示信息
#PrintLastLog yes 上一次登录信息
#UsePrivilegeSeparation sandbox //是否权限较低的程序来提供用户操作
//为了判断客户端来源是正常合法的。因此会使用DNS去反查客户端的主机名
//不过如果在内网互连,这项目设定为no会让联机速度比较快
#UseDNS no
GSSAPIAuthentication no
#PidFile /var/run/sshd.pid //可以旋转sshd这个pid的文档
通过**进行sshd服务认证
sshd服务端 192.168.221.10
sshd客户端 192.168.221.20
客户端生成**对
[[email protected] ~]# ssh-******
将公钥发布到远程服务器上
[[email protected] ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
测试,不需要密码连接到了192.168.221.10上
[[email protected] ~]# ssh [email protected]
Last login: Wed Apr 11 19:50:50 2018 from 192.168.221.1
警告!从现在开始,你所有的操作已经被记录!
[[email protected] ~]#
服务端查看,会生成~/.ssh/authorized_keys文件
[[email protected] ~]# ls ~/.ssh/authorized_keys
/root/.ssh/authorized_keys
两台linux服务器之间复制数据
scp命令
scp基于ssh登录并复制数据。远程复制过程中很安全。操作起来比较方便
scp src dest
[[email protected] ~]# scp /etc/passwd [email protected]:/tmp/
[[email protected] ~]# scp [email protected]:/tmp/passwd .
scp -r src dest
转载于:https://blog.51cto.com/13480443/2097007
上一篇: Centos7修改ssh默认端口无法启动sshd服务
下一篇: for in 遍历json