笔记(十)Linux急救、防火墙设置、查看端口
一、Linux急救
以前安装多系统后,由于后装windows系统,会出现进入不了系统的情况。
需要利用LiveCD(或USB系统)启动急救模式或启动一个系统,以便重装Grub2。
不过,现在Fedora + vbox(win7),没必要了。
这里就记录一下,以备不时之需:
# mount
# /dev/sda2 是Linux实际所处的位置
mount -t ext -o rw /dev/sda2 /media
mount -t proc none /media/proc
mount -o bind /dev /media/dev
mount -o bind /sys /media/sys
mount -t devpts devpts /media/devpts
# chroot:
chroot /media
grub2-install /dev/sda2
grub2-mkconfig -o /boot/grub2/grub.cfg
# umount
exit
umount -a
二、防火墙设置
我用iptables,怎么设置都没有用,才发现现在是用firewalld的!
启动firewalld: sudo systemctl start firewalld
关闭:stop, 重启:restart
开机启动:sudo systemctl enable firewalld
开机不启动:disable
按理说,默认就启动firewalld了。(所以不必卸载iptables,再装firewalld)
查看目前的防火墙设置:(假设已经是root权限,sudo -i
)
firewall-cmd --list-all
放行指定服务:
firewall-cmd --permanent --zone=public --add-service=http
不要--permanent
就是临时的,重启就无效了。下同!
重新载入:
firewall-cmd --reload
只有reload后才生效。下同!
阻止指定服务:
firewall-cmd --permanent --zone=public --remove-service=http
放行指定端口:
firewall-cmd --permanent --zone=public --add-port=22/tcp
阻止指定端口:
firewall-cmd --permanent --zone=public --remove-port=22/tcp
以上,基本够用了。
三、查看端口
有一次我发现端口打开异常,貌似开了我不想开的端口,不知道是中木马了还是什么回事。
那就需要看看是什么程序打开了端口:
查看打开的TCP端口:
sudo netstat -anpt
输出:
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1593/dnsmasq
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1308/cupsd
......
查看打开端口的程序
其实,在上面的命令输出中,已经在最后一列看得到了打开端口的对应程序。
如果还是看不到,可以这样试试:
sudo lsof -i:53
输出:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
dnsmasq 1593 dnsmasq 5u IPv4 43427 0t0 UDP localhost.localdomain:domain
dnsmasq 1593 dnsmasq 6u IPv4 43428 0t0 TCP localhost.localdomain:domain (LISTEN)