1 开启防火墙
注: RedHat RHEL7系统后已经用firewalld服务代替了iptables服务,新的防火墙服务管理命令为firewall-cmd
(图形化管理工具firewall-config
)。
(1)启动防火墙
$ sudo systemctl start firewalld.service
(2)开机自启动防火墙
$ sudo systemctl enable firewalld.service
(3)检查防火墙状态
$ sudo systemctl status firewalld.service
未启动:
启动后:
拒绝一切端口后开启相应端口(iptables先拒绝然后开启对应端口,如80for http,443for https) 检查防火墙是否开启
(4)重启防火墙
$ sudo systemctl restart firewalld.service
(5)【重要】只放行需对外开放的端口
当防火墙开启后,检查当前可直接被访问的端口:
$ firewall-cmd --zone=public --list-port
只放行需要对外开放的端口(如HTTP
的80,HTTPS
的443…)。
永久开放80端口:
$ firewall-cmd --zone=public --add-port=80/tcp --permanent
Note: --zone=public
这里涉及防火墙的网络区域概念
示例,开放36582端口作为ssh服务:
$ firewall-cmd --zone=public --add-port=36582/tcp --permanent
以上设置完成后,重启防火墙以使设置立即生效:
$ firewall-cmd --reload
2 配置ssh
a 修改默认的ssh端口
默认的ssh端口为22,建议修改为一个未被其他服务占用的随机端口,如12315,25126…。
$ sudo vim /etc/ssh/sshd_config
Port 26942
:设置ssh的端口为26942
b 禁止Root通过SSH远程登录
$ sudo vim /etc/ssh/sshd_config
将PermitRootLogin yes
修改为PermitRootLogin no
。
c 重启sshd服务
重启sshd服务,已使以上设置生效
$ sudo systemctl restart sshd
2 使用一个普通权限的用户
进行ssh远程管理时,使用普通用户userSW
登录。登陆后,当需要root权限以执行命令时, su root
切换到root用户。
添加一个拥有普通权限的新用户
$ useradd userSW
为该新用户设置密码
$ passwd userSW
3【可选】限制可使用SSH登录的IP
a 设置禁止所有 IP 连接服务器的SSH
$ vim /etc/hosts.deny
设置sshd:all:deny
。
b 设置允许指定 IP 连接服务器的SSH
$ vim /etc/hosts.allow
设置sshd:192.168.1.106:allow
(192.168.1.106为允许访问的IP)。
c 重启SSH服务
重启SSH服务,并通过登录进行验证
$ sudo systemctl restart sshd.service
FEATURED TAGS
algorithm
algorithmproblem
architecturalpattern
architecture
aws
c#
cachesystem
codis
compile
concurrentcontrol
database
dataformat
datastructure
debug
design
designpattern
distributedsystem
django
docker
domain
engineering
freebsd
git
golang
grafana
hackintosh
hadoop
hardware
hexo
http
hugo
ios
iot
java
javaee
javascript
kafka
kubernetes
linux
linuxcommand
linuxio
lock
macos
markdown
microservices
mysql
nas
network
networkprogramming
nginx
node.js
npm
oop
openwrt
operatingsystem
padavan
performance
programming
prometheus
protobuf
python
redis
router
security
shell
software testing
spring
sql
systemdesign
truenas
ubuntu
vmware
vpn
windows
wmware
wordpress
xml
zookeeper