如何检查得知 linux服务器 是否可以通过公网访问呢?
在linux服务器上ping外网地址,ping的通说明与外网正常连接,这是外网能访问linux服务器的基础!其它的,至于防火墙设置、安全设置,禁止外网访问,那都是软件限制的设置问题。
说明:如上图所示,在linux命令行执行ping命令,能ping通, 说明服务器与公网相连,此时具备被公网访问的基础。
一般以#!/bin/sh开头(不是必须要写,但一定要单独一行),指定执行这个脚本的shell程序(也可以用#!/bin/zsh或其他),然后就是堆命令了。Linux的shell脚本支持很多功能,加上Linux高度模块化的命令,完全可以用shell脚本写出复杂的程序。以上只是简单介绍如何开始写shell脚本,如果要写复杂的脚本,还需要深入学习相关知识(如if--fi、case--esac等结构)。当然,还需要给脚本加上可执行权限(chmod +x /filesh),否则可以用sh /filesh方式执行脚本(这里的sh是执行脚本所需shell,命令也可以是zsh /filesh或其他)。
在网上看到不少有关linux优化方面的好文章,在此我也不赘述这些文章了,我只想从我自己的体会来谈谈这方面的问题。 作为一个系统管理员,我下面说的都是基于服务器应用的linux来谈的,由于个人电脑上使用linux也许不是像服务器上一样,优先追求安全和稳定,因此个人电脑使用的朋友只做个参考吧。
本文提及的系统,如没有特别声明,均采用redhat公司的redhat linux系统。
关于优化
说起优化,其实最好的优化就是提升硬件的配置,例如提高cpu的运算能力,提高内存的容量,个人认为如果你考虑升级硬件的话,建议优先提高内存的容量,因为一般服务器应用,对内存的消耗使用要求是最高的。当然这都是题外话了。
这里我们首要讨论的,是在同等硬件配置下(同一台服务器,不提升硬件的情况下)对你的系统进行优化。
作为系统管理员,我认为,首先我们要明确一个观点:在服务器上作任何操作,升级和修改任何配置文件或软件,都必须首要考虑安全性,不是越新的东西就越好,这也是为什么linux管理感觉上和windows有所不同的地方,windows首先推荐大家去使用它的最新版本软件和操作系统,其实我个人认为这是一种商业行为,作为从系统管理上来讲,这是很不好的,使用新的软件和系统可能带来新的问题,有些甚至是致命的。
因此,作为管理,我们还是应该考虑稳定的长期使用的软件版本来作为我们的版本,具体的好处我就不多说了。相信作为管理员的你应该知道的。
其实个人使用的linux最直接的一个优化就是升级内核,自己编译的内核是根据自己的系统编译而来,将得到最大的性能和最小的内核。
但是,服务器就不太一样了,当然我们也希望每一台服务器都是自己手工编译的内核,高效而精巧。但是实际和愿望是有差距的,试想一下,如果你管理100来台 linux主机,而每一台也许配置都不一样,那编译内核的一个过程将是一个浩大工程,而且从实际考虑,工作量大得难以想象。我想你也不会愿意做这种事情吧。因此,个人建议,采用官方发布的内核升级包是很好的选择。
首先,我们对新安装的系统,将做一系列升级,包括软件和内核,这是很重要的步骤,(这方面的详细情况欢迎察看我另一篇关于升级方面的文章)。
在升级好所有软件后,基本的防火墙和配置都做好以后,我们开始优化一些细节配置,如果你是老系统,那么在作本问题及的一些操作和优化你系统之前,务必被备份所有数据到其他介质。
1、虚拟内存优化
首先查看虚拟内存的使用情况,使用命令
# free
查看当前系统的内存使用情况。
一般来说,linux的物理内存几乎是完全used。这个和windows非常大的区别,它的内存管理机制将系统内存充分利用,并非windows无论多大的内存都要去使用一些虚拟内存一样。这点需要注意。
linux下面虚拟内存的默认配置通过命令
# cat /proc/sys/vm/freepages
可以查看,显示的三个数字是当前系统的:最小内存空白页、最低内存空白页和最高内存空白。
注意,这里系统使用虚拟内存的原则是:如果空白页数目低于最高空白页设置,则使用磁盘交换空间。当达到最低空白页设置时,使用内存交换(注:这个是我查看一些资料得来的,具体应用时还需要自己观察一下,不过这个不影响我们配置新的虚拟内存参数)。
内存一般以每页4k字节分配。最小内存空白页设置是系统中内存数量的2倍;最低内存空白页设置是内存数量的4倍;最高内存空白页设置是系统内存的6倍。这些值在系统启动时决定。
一般来讲在配置系统分配的虚拟内存配置上,我个人认为增大最高内存空白页是一种比较好的配置方式,以1g的内存配置为例:
可将原来的配置比例修改为:
2048 4096 6444
通过命令
# echo "2048 4096 6444" > /proc/sys/vm/freepages
因为增加了最高空白页配置,那么可以使内存更有效的利用。
2、硬盘优化
如果你是scsi硬盘或者是ide阵列,可以跳过这一节,这节介绍的参数调整只针对使用ide硬盘的服务器。
我们通过hdparm程序来设置ide硬盘,
使用dma和32位传输可以大幅提升系统性能。使用命令如下:
# /sbin/hdparm -c 1 /dev/hda
此命令将第一个ide硬盘的pci总线指定为32位,使用 -c 0参数来禁用32位传输。
在硬盘上使用dma,使用命令:
# /sbin/hdparm -d 1 /dev/hda
关闭dma可以使用 -d 0的参数。
更改完成后,可以使用hdparm来检查修改后的结果,使用命令:
# /sbin/hdparm -t /dev/had
为了确保设置的结果不变,使用命令:# /sbin/hdparm -k 1 /dev/hda
hdparm命令的一些常用的其他参数功能
-g 显示硬盘的磁轨,磁头,磁区等参数。
-i 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供。
-i 直接读取硬盘所提供的硬件规格信息。
-p 设定硬盘的pio模式。
-tt 评估硬盘的读取效率和硬盘快取的读取效率。
-u <0或1> 在硬盘存取时,允许其他中断要求同时执行。
-v 显示硬盘的相关设定。
3、其他优化
关闭不需要的服务,关于系统自动启动的服务,网上有很多资料,在此我就不赘述了。
linux管理常见错误一:随意许可,原因是不理解许可
如果对许可配置不当,就会给黑客留下机会。处理许可问题的最简单方法是使用所谓的RWE方法,即Read(读取)、Write(写入)、Execute(执行)。假设你想让一个用户能够读取一个文件但不能写入文件。为此,你可以执行:chmod
u+w,u-rx 文件名,一些新用户可能会看到一个错误,说他们没有使用文件的许可,因此他们就使用了:Chmod 777
文件名,以为这样能够避免问题。但这样做实际上会导致更多的问题,因为它给了文件的可执行的权限。
记住这一点:777将一个文件的读取、写入、执行的许可给了所有用户,666将一个文件的读取、写入权限给了所有用户,而555将文件的读取、执行权限给了所有用户,还有444、333、222、111等等。
linux管理常见错误二:忽视更新
这并不是说Linux管理员缺乏技巧。不过,许多Linux管理员在运行了Linux之后,以为日后就无事可做了,以为它安全可靠。其实,新的更新可以为一些新的漏洞打上补丁。维持更新可以在一个易受损的系统与一个安全的系统之间构造分水岭。Linux的安全来自于不断地维护。为了实现安全性,为了使用一些新的特性和稳定性,任何管理员都应当跟上Linux的更新步伐。
linux管理常见错误三:不经过严格审核,从多种渠道下载安装各种类型的应用程序
乍看起来,这也许是一个不错的主意。如果你在运行Ubuntu,你会知道包管理程序使用的是。deb软件包。不过,你找到的许多应用程序是以源代码的形式提供的。没有问题吗这些程序安装后也许能够正常工作。但是你为什么不能随意安装程序呢道理很简单,如果你以源的形式安装了程序,那么,你的软件包管理系统将无法跟踪你所安装的东西。
因此,在程序包A(以源的形式安装)依赖于程序包B(从一个。deb库安装的),而软件包B是从更新管理器更新的时候,会发生什么事情呢程序包A可能运行,也可能无法运行。不过,如果程序包A和B都从。deb库安装的话,二者都能运行的机会将更高。此外,在所有的程序包都来自于同样的二进制类型时,更新程序包将更为容易。
linux管理常见错误四:将服务器启动进入到X
在一台机器是专用服务器时,你可能会想到安装X,这样一些管理任务就会简单一些。不过,这并不意味着用户需要将服务器启动进入到X这样会浪费珍贵的内存和CPU资源。相反地,你应当在级别3上停止启动过程,进入命令行模式。这样做不但会将所有的资源留给服务器,而且还会防止泄露机器的机密。要登录到X,用户只需要以命令行方式登录,然后键入startx进入到桌面。
linux管理常见错误五:糟糕的口令
记住,root
的口令通常是linux王国的关键。所以为什么要让root的口令那么容易被破解呢保障你的用户口令的健壮性至关重要。如果你的口令比较长,且难于记忆,可将这个口令存放在一个可被加密的位置。在需要这个口令时,可用解密软件解开这个口令使用之。
linux管理常见错误六:没有备份关键的配置文件
许多管理员都有这样的体会,在升级到某个X版本,如X11之后,却发现新版本破坏了你的xorgconf配置文件,以至于你再也无法使用X建议你在升级X之前,先对以前的/etc/x11/xorgconf作一个备份,以免升级失败。当然,X的升级程序会设法为用户备份xorgconf文件,但它却在/etc/x11目录内备份。即使这种备份看起来不错,你最好还是自己做一个备份吧。笔者的一个习惯是将其备份到/root目录中,这样,用户就可以知道只有根(root)用户能够访问此文件。记住,安全第一。这里的方法也适用于其它的关键备份,如Samba、Apache、Mysql等。
linux管理常见错误七:忽视日志文件
/var/log的存在是有理由的。这是存放所有的日志文件的唯一位置。在发生问题时,你首先需要看一下这里。检查安全问题,可看一下/var/log/secure笔者看的第一个位置是/var/log/messages这个日志文件保存着所有的一般性错误。在此文件中,你可以得到关于网络、媒体变更等消息。在管理一台机器时,用户可以使用某个第三方的应用程序,如logwatch,这样就可以创建为用户创建基于/var/log文件的各种报告。
linux管理常见错误八:没有安装一个可正常运行的内核
你可能不会在一台机器上安装10个以上的内核。但你需要更新内核,这种更新并没有删除以前的内核。你是怎么做的呢你一直保持使用最近的可正常工作的内核。假设你目前正常工作的内核是2622,而2620是备份内核。如果你更新到2626,而在新内核中一切都工作正常,你就可以删除2620了。
linux管理常见错误九:逃避使用命令行
恐怕很少有人愿意记住那么多命令。在大多数情况下,图形用户界面是许多人的最爱。不过,有时,命令行使用起来更加容易、快捷、安全、可靠。逃避使用命令行是Linux管理的大忌。管理员至少应当理解命令行是如何工作的,至少还要掌握一些重要的管理命令。
linux管理常见错误十:以根用户身份登录
这是一种很危险的错误。如果用户需要根特权来执行或配置一个应用程序,可以在一个标准的用户账户中使用su切换到root用户。登录到root为什么不是一件好事儿在用户以标准用户身份登录时,所有正在运行的X应用程序仍拥有仅限于此用户的访问权。如果用户以根用户身份登录,X就拥有了root的许可。这就会导致两个问题,一、如果用户由GUI犯了一个大错,这个错误对系统来说,有可能是一个巨大的灾难。二、以根用户的身份运行X使得系统更易于遭受攻击。
6款适用于Linux系统的免费杀毒软件:
1、ClamAV
是一款开源防病毒软件,可检测病毒、恶意软件、特洛伊木马和其他威胁,也是免费提供的,这使其成为Linux上最好的防病毒软件之一,ClamAV具有命令行扫描程序,这意味着它可以扫描主要文件类型中的蠕虫、病毒和特洛伊木马,为确保安全并保持最新状态,病毒库一天会更新多次。
2、Chkrootkit
Chkrootkit会检查rootkit,它是一个在命令行界面上运行的免费软件,可以在不安装软件的情况下扫描您的系统,还是一个轻量级程序,这意味着它不会影响系统性能,还可以检测各种其他恶意软件和木马,如后门、TinyNDS
等。
3、Comodo
作为Linux上最好的免费防病毒软件之一,Comodo带有按需病毒扫描程序,还检查使用云数据库以检查未知文件,以确保每一天的安全,一旦安装,就不会用无用的警报来打扰你,只是保护计算机免受所有传入的威胁。
4、Sophos
作为另一款免费的防病毒软件,Sophos具有高级功能,并且在Linux系统上也能轻松运行,可以使你的Linux免受Android、Windows和Mac的病毒和恶意软件的侵害,且具有强大的基于启发式的检测和实时扫描功能。
5、Rootkit Hunter
另一个免费检测rootkit的好选择,Rootkit
Hunter也被认为是Linux上最好的防病毒软件之一,与大多数UNIX系统兼容,使用命令行界面,重量轻。
6、F-PROT
是一款带有按需扫描仪的免费软件,这是一个不错的选择,可确保针对宏病毒、引导扇区病毒和木马的安全性,可以根据自己的喜好安排扫描,强大的工具是快速扫描和庞大数据库的组合,可确保您的系统安全。
0条评论