1. 服务端口
在TCP通信连接中需要三次握手,而三次握手需要两个基本元素:IP地址 prot 端口;
通常对于一台机器的所有端口都是开启的;比如21 23 .....80 443 等端口.
只有通过服务对某一个端口开启,这个端口才是通的;比如 22 端口,一般我们的机器都是通的。那是对我们的服务器都启动sshd 服务,而在sshd 服务的配置文件中启用了22端口;当然我们也可以通过修改 sshd的配置文件:/etc/ssh/sshd_config 来改变ssh 使用的端口。
对于一般的web端口80 其实如果服务器没有启动 web 服务,那80端口也是不通的,而当启动web服务后才是通的。
2. sshd 的配置文件
2.1 安装sshd 的包
裸的服务器上面什么也没有,只有安装了服务包,启动服务后才能是可以服务的。
2.2 sshd 的配置文件
/etc/ssh/sshd_config
[html]
view plain copyPort 22
Port 2222
Protocol 2,1
ListenAddress 0.0.0.0
ListenAddress ::
# HostKey for protocol version 1
HostKey /etc/ssh/ssh_host_key
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_dsa_key
prot:说明sshd 使用的端口 可以设置多个端口:22 、2222
protocol:是通道的类型 上面说 sshd 私钥1 私钥2 都支持
配置文件中还有很多选项,这些选项也有各种作用。
2.3 启动sshd 服务
因为 所有的服务器都默认启动ssh 服务,而且默认是22 端口;所以不要修改 /etc/ssh/sshd_config;如果把这个端口改了那登录机器需要用指定的端口;
但是如果把sshd服务停了;更甚把ssh包卸载了;那这台机器就彻底不能登录了。
[html]
view plain copysudo service sshd restart
这样sshd 服务就已经启动了;client就可以登录这台机器;二期 22 2222 两个端口都是通的。如果是临时的让这个端口不可用可以采取下面的方式:
[html]
view plain copysudo sed -i -e 's/^Port 3333$/Port 2222/' /etc/ssh/sshd_config;sudo service sshd restart
sudo sed -i -e 's/^Port 2222$/Port 3333/' /etc/ssh/sshd_config;sudo service sshd restart
3. sshd 允许登陆的ip 白名单或者黑名单
3.1 白名单设置:一般只允许指定的ip ssh 登陆机器[html]
view plain copycat /etc/hosts.deny
sshd:ALL #所有的都不允许ssh 登陆,无论什么用户
[html]
view plain copycat /etc/hosts.allow #允许下面的ip/ip 段登陆
sshd:10.xx.xx.xxx:allow
sshd:10.xx.xx.xxx:allow
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。