【SSH服务】远程连接管理服务SSH

一、远程连接管理服务SSH

1、了解服务端和客户端

  服务端:提供服务

  客户端:享受服务

2、了解端口号设定

端口范围0~65535.

  •   1~255:一般为知名端口号。如:下面表格所示
  •   256~1023:通常由Unix系统占用来提供特定的服务
  •   1024~5000:客户端的临时端口,随机产生
  •   大于5000:互联网上其他服务预留
协议名 传输协议 端口号
ftp文件传输协议:数据连接 tcp 20
ftp:控制连接 tcp 21
ssh、scp tcp 22
NTP时间同步服务 udp 123
telnet远程登录 tcp 23
smtp email客户端 tcp 25
POP3 tcp 110
dns服务器与客户端交互 udp 53
dns服务器与辅助域名服务器交互 tcp 53
TFTP udp 69
NNTP tcp 119
IMAP3 tcp 220
nfs默认udp,可以设置tcp udp 2049(默认)
vnc(默认端口5900,真正访问端口=5900+1) tcp 5901
http tcp 80
https tcp、udp 443
tomcat   8080
oracle数据库   1521
mysql数据库   3306
sql server对外服务 tcp 1433
sql server接收请求者返回的数据 udp 1434

 

3、SSH服务作用

  用于Linux下远程连接管理服务器的安全协议。端口号22,C/S架构。

  • 服务端(开启ssh服务):安装软件openssh-server
  • 客户端(专门的客户端工具):Windows(SecureCRT、Mobaxterm);Linux(openssh-clients

查看默认是否开启自启:

[root@rhel8 ~]# systemctl list-unit-files | grep "sshd.service"
anaconda-sshd.service                      static   
sshd.service                               enabled 

 

4、修改ssh服务默认端口

1)查看ssh服务端口

netstat命令:用于查看网络连接状态
-n:不显示名称
-l:查看监听状态
-t:TCP协议
-p:查看程序名

[root@rhel8 ~]# netstat -nltp | grep :22
[root@rhel8 ~]# lsof -i :22
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    1090 root    4u  IPv4  30100      0t0  TCP *:ssh (LISTEN)
sshd    1090 root    6u  IPv6  30102      0t0  TCP *:ssh (LISTEN)

2)查看ssh的配置文件

# -l是留出所有改软件的文件,-c只列出配置文件
[root@rhel8 ~]# rpm -qc openssh-server
/etc/pam.d/sshd
/etc/ssh/sshd_config
/etc/sysconfig/sshd

3)修改配置文件

[root@rhel8 ~]# vi /etc/ssh/sshd_config 
在17行下添加一行
Port 10022

4)重启服务

[root@rhel8 ~]# systemctl restart sshd.service

重启时报错根据提示查看日志。如果是权限错误。

 

查看防火墙状态是否关闭;

查看安全连接日志tail -20 /var/log/secure;

 

 

 

查看系统日志tail -20 /var/log/messages;根据日志提示发现是SELinux问题。

 

 

 查看SELinux的设置:需要将其设置为disabled

 

 

[root@rhel8 ~]# setenforce 0
[root@rhel8 ~]# getenforce 
Disabled

最后再重启SSH服务,问题解决。

5)测试SSH端口是否修改成功

[root@rhel8 ~]# netstat -nltp | grep sshd
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      3709/sshd: root@pts 
tcp        0      0 127.0.0.1:6011          0.0.0.0:*               LISTEN      4454/sshd: root@pts 
tcp        0      0 0.0.0.0:10022           0.0.0.0:*               LISTEN      4638/sshd           
tcp6       0      0 ::1:6010                :::*                    LISTEN      3709/sshd: root@pts 
tcp6       0      0 ::1:6011                :::*                    LISTEN      4454/sshd: root@pts 
tcp6       0      0 :::10022                :::*                    LISTEN      4638/sshd           
[root@rhel8 ~]# lsof -i :10022
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    4638 root    5u  IPv4  66057      0t0  TCP *:10022 (LISTEN)
sshd    4638 root    7u  IPv6  66059      0t0  TCP *:10022 (LISTEN)

注意:客户端用10022端口连接

5、基于SSH服务的命令

1)Linux下客户端工具ssh

  需要先安装client客户单软件:openssh-clients

# 查看是否安装
[root@rhel8 ~]# rpm -q openssh-clients
openssh-clients-8.0p1-3.el8.x86_64
# 功能1:客户端远程连接登录Linux服务器(ssh服务)端
ssh 【选项】用户名@远程IP
选项:
-l:指定访问用户
-p:指定端口号
[root@rhel8 ~]# ssh -p 10022 root@192.168.187.100
或
[root@rhel8 ~]# ssh -p 10022 -l root 192.168.187.100


# 功能2:客户端远程访问Linux服务器执行相应的命令(未登录)
ssh 【选项】 远程IP 执行相应命令
[root@rhel8 ~]# ssh -p 10022 root@192.168.187.100 hostname
rhel8.tourby.cn

 

2)Linux下远程拷贝命令scp

# 用法1:将本地文件远程拷贝到远程(push)
scp 【选项】 本地文件 远程服务IP:/路径
选项:
-P:端口号
-r:递归拷贝
[root@rhel8 ~]# scp -P 10022 -r /tanbaobao/ 192.168.187.100:/root/

# 用法2:将远程文件拷贝到本地(pull)
scp 【选项】远程服务IP:/文件  本地路径
[root@rhel8 ~]# scp -P 10022 -r root@192.168.187.100:/root/ /tanbaobao/ 

# 如果拷贝速度慢,可以将远程IP地址加入到/etc/hosts文件下
# 如果用root以外的用户拷贝提示权限不允许,需要设置chmod或setfacl权限让该用户有可写w的权限

 

posted @ 2020-06-05 15:58  HeiDi_BoKe  阅读(518)  评论(0编辑  收藏  举报