`

Linux常用命令和Linux服务器配置(转)

    博客分类:
  • Java
阅读更多

Linux常用命令和Linux服务器配置

一、添加用户useradd命令

例子:

#useradd –m –g users –G wheel,sales –s /bin/tcsh –c “a user” myname

#useradd -c "ftp Administrator" -d /var/ftp/ -G ftpAdmin -s /sbin/nologin -r ftpAdmin

-m  自动创建用户的主目录,并把框架目录(/etc/skel)文件复制到用户目录上。

-g  设置基本组,用户将在该组中。

-G  把用户加到所有逗号间隔的分组中。

-s  制定使用的shell。

-c  描述信息。

-d  为账号设置主目录。

-r  系统帐号,无需再/home下创建主目录。

最后的是用户名

二、             指定口令(密码)passwd

例子: #passwd 用户名

回车就会提示输入密码了。

三、             删除用户userdel

例子:  #userdel 用户名

        #userdel –r 用户名

-r 删除其主目录(/home/…..)

四、    文件系统命令

    4.1   fdisk命令

(1)fdisk –l  :显示硬盘上的所有分区。既分区类型(FAT32、Ext3)。

    (2)df –h :显示文件系统是如何挂载的。

    (3)fdisk  /dev/hdb1           :格式化第二个IDE磁盘

    4.2   mount命令挂载文件系统

    (1)mount (不使用参数)查看系统挂载情况。

    (2)mount /mnt/cdrom       :挂载光驱,可用cd /mnt/cdrom 后ls查看光盘上的内容。

    (3)mount /mnt/floppy  :挂载软盘,可用cd /mnt/floppy 后ls查看软盘上的内容。

        2、3中可以使用/dev/cdrom和/dev/fd0代替挂载点,得到同样的效果!

    (4)mount –t msdos  /dev/fd0   /mnt/floppy   :挂载DOS软盘到/mnt/floppy下。

    (5)挂载Windows分区

         #fdisk  -l      :列出硬盘分区。

         #mkdir  /mnt/win    :创建一个目录,用于挂载。

         #mount  -t  vfat    /dev/hda1       /mnt/win    :假设Windows在第一个IDE硬盘的第一个分区上。

       注:可以使用–t auto 参数令系统自动监测文件类型!

      -r        以只读方式挂载。

      -w        读写方式挂载。

    4.3 umount命令卸载文件系统

(1) umount /mnt/floppy    将设备(如/dev/fd0)从挂载点/mnt/floppy卸载。也可以使用下列方式完成这一工作:  umount /dev/fd0

为了使该分区对于Linux永久可用,需在/etc/fstab文件中添加如下一行:

/dev/hda1       /mnt/win        vfat        defaults        0   0

五、             文件相关命令

5.1 文件权限chmod

    例子:

chmod 777 files  -〉rwxrwxrwx

chmod 755 files  -〉rwx r-x r-x

chmod 644 files  -〉rw- -r- -r-

chmod 000 files  -〉- - -  - - -  - - -

chmod u+x g+w o+r file(给file以拥有者可执行、同组可写、其他人可读取的权利)

 

      $ chmod –R   777     /tmp/test   :更改目录中所有文件和目录的权限(所有权限)。

      $ chmod –R   664     /tmp/test   :关闭执行权限。

5.2 文件所有权

chown user1 file(把file分配给user1)

5.3 移动文件mv

    例子: mv abc def       本文件abc移动更名为def。

六、             iptables命令面面观

外网:eth0 123.45.67.89

内网:eth1 10.0.0.1        LAN上的计算机IP地址都在10.0.0.2~~10.0.0.254之间。

(1)一个rc.local的例子,在rc.local中加入如下命令

    echo 1 > /proc/sys/net/ipv4/ip_forward      #启动IP转发

    echo 1 > /proc/sys/net/ipv4/ip_dynaddr      #启动动态IP地址

#Policies(Default)设置默认策略为拒绝

iptables    -P INPUT DROP

iptables    -P OUTPUT DROP

iptables    -P FORWARD DROP

#User-defined   chain for ACCEPTed TCP packets用户自定义链,链名为“okay”

iptables    -N okay

iptables    -A okay –p TCP  - - syn  –j   ACCEPT

iptables    -A okay –p TCP  -m state - -state ESTABLISHED,RELATED –j ACCEPT

iptables    -A okay –p TCP –j DROP

#INPUT chain rules

# Rules for incoming packets from LAN

iptables    -A  INPUT   -p  ALL -i eth1 -s 10.0.0.0/8   -j  ACCEPT  #LAN中的地址可接受

iptables    -A  INPUT   -p  ALL -i  lo  -s 127.0.0.1   -j  ACCEPT  #允许接受本身的数据包

iptables    -A  INPUT   -p  ALL -i  lo  -s 10.0.0.1    -j  ACCEPT  #允许接受本身的数据包

iptables    -A  INPUT   -p  ALL -i  lo  -s 123.45.67.89 -j  ACCEPT  #允许接受本身的数据包

iptables    -A  INPUT   -p  ALL -i  eth1 –d 10.0.0.255 -j  ACCEPT  #允许接受LAN内的广播包

# Rules for incoming packets from the Internet

# packets for established connections

iptables    -A  INPUT   -p  ALL -d  123.45.67.89    -m state –state ESTABLISHED,RELATED –j ACCEPT

# TCP rules  由okay链处理

iptables    -A  INPUT   -p  TCP -i  eth0    -s  0/0 --destination-port 21 –j okay

iptables    -A  INPUT   -p  TCP -i  eth0    -s  0/0 --destination-port 22 –j okay

iptables    -A  INPUT   -p  TCP -i  eth0    -s  0/0 --destination-port 80 –j okay

iptables    -A  INPUT   -p  TCP -i  eth0    -s  0/0 --destination-port 113 –j okay

# UDP rules  定义开放的UDP端口

iptables    -A  INPUT   -p  UDP -i  eth0    -s  0/0 --destination-port 53 –j ACCEPT

iptables    -A  INPUT   -p  UDP -i  eth0    -s  0/0 --destination-port 2074 –j ACCEPT

iptables    -A  INPUT   -p  UDP -i  eth0    -s  0/0 --destination-port 4000 –j ACCEPT

# ICMP rules

iptables    -A  INPUT   -p  ICMP    -i  eth0    -s  0/0 --destination-port 8 –j ACCEPT

iptables    -A  INPUT   -p  ICMP    -i  eth0    -s  0/0 --destination-port 11 –j ACCEPT

# FORWARD chain rules

#Accept the packets we want to forward

iptables    -A  FORWARD -i  eth1    -j  ACCEPT

iptables    -A  FORWARD -m  state   --state ESTABLISHED,RELATED -j  ACCEPT

# OUTPUT chain rules

# Only output packets with local addresses (no spoofing)

iptables    -A  OUTPUT  -p  ALL -s  127.0.0.1   -j  ACCEPT

iptables    -A  OUTPUT  -p  ALL -s  10.0.0.1    -j  ACCEPT

iptables    -A  OUTPUT  -p  ALL -s  123.45.67.89    -j  ACCEPT

# POSTROUTING chain rules  网关的IP伪装

iptables    -t nat –A POSTROUTING –o eth0 –j SNAT –to-source 123.45.67.89

 

(2)网关的IP伪装:静态地址 使用SNAT,动态地址(拨号) 使用MASQUERADE

例子:

MASQUERADE必须提供接口名(eth0,ppp0等)来指明路径,好像静态地址也可以使用MASQUERADE:

iptables    -t  nat -A  POSTROUTING –o eth0 –j MASQUERADE

SNAT也必须指明实际的IP如下所示:

iptables    -t  nat -A  POSTROUTING -o  eth0    -j  SNAT    --to-source 12.12.12.12

(3)端口转发

例子:将对防火墙计算机(-d 15.15.15.15)的所有Web服务重定向到LAN上的某台计算机(10.0.0.25)

iptables    -t  nat -A  PREROUTING  -p  tcp -d  15.15.15.15 –dprot 80 –j  DNAT –to-destination 10.0.0.25

 

七、             IP地址类型(第一部分数字的范围)

        A类地址:0~127;可容纳计算机数量为 256*256*256。子网掩码255.0.0.0。

        B类地址:128~191;可容纳计算机数量为 256*256。子网掩码255.255.0.0。

        C类地址:192~233;可容纳计算机数量为 250个。0和255不能被指定为主机地址。子网掩码255.255.255.0。

C类私有IP地址 192.168.0.0~192.168.255.255

八、             ifconfig

         ifconfig            :判断网络连接情况。

         ifconfig eth0 up    :启动eth0接口。

九、             配置网卡

配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0用vi编辑即可。例子如下

    DEVICE=eth0     #设备名,与文件同名。

    ONBOOT=yes      #在系统启动时,启动本设备。

    BOOTPROTO=static  

    IPADDR=202.118.75.91    #此网卡的IP地址

    NETMASK=255.255.255.0   #子网掩码

    GATEWAY=202.118.75.1    #网关IP

    MACADDR=00:02:2D:2E:8C:A8   #mac地址

十、             FTP服务

10.1 使用setup命令开启vsftpd服务进程。

10.2然后修改文件/etc/xinetd.d/vsftpd。(但vsftpd是依附于xinetd.d运行时2、3有效)

(1)把disable=yes改为=no。

(2)配置每个客户机的最大连接数:

在配置文件/etc/xinetd.d/vsftpd 的{}中添加如下的配置语句:

per_source = 数值。例如:per_source = 5 表示每个客户机的最大连接数为5。

(3) 配置服务器总的并发连接数:

在配置文件/etc/xinetd.d/vsftpd 的{}中添加如下的配置语句:

instances = 数值。例如:instances = 200 表示FTP 服务器总共支持的最高连接数为200。

(4)当vsftpd单独运行时:要配置独立运行的vsftpd很简单,只需要在前面的主配置文件的基础上添加如下的配置即可。

设置listen=YES      :指明vsftpd 以独立运行方式启动。

设置max_clients=200 :指明服务器总的并发连接数

设置max_per_ip=4    :指明每个客户机的最大连接数。

 

 

10.3 配置/etc/vsftpd.conf(redhat9 是/etc/vsftpd/vsftpd.conf)文件。

 

# 允许真实用户(在系统中有账号的用户)访问

local_enable=YES

# 给真实用户写权限

write_enable=YES

# 真实用户上传文件的掩码设为022。这样真实用户上传后的文件权限为755(rwxr-xr-x),即文件所有者可读写执行、同组成员可读可执行、

# 系统中的其它用户可读可执行。

local_umask=022

# 允许匿名用户访问。匿名用户在系统中的账号是ftp

anonymous_enable=YES

# 匿名用户上传文件的掩码设为000。这样文件上传后的权限为777(rwxrwxrwx),即所有人都可以读写执行。

anon_umask=000

# 匿名用户可上传、可创建目录。一下3行只有设置了write_enable=YES才有效。

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_world_readable_only=NO

# 如果想要让匿名用户有删除的权限可以加上如下代码

# anon_other_write_enable=YES

# 进入每个目录都显示特定提示。这些提示放在各个目录下.message文件中。

dirmessage_enable=YES

# 当用户登陆ftp服务器时,不管是否登陆成功都显示如下信息。

ftpd_banner=Welcome to NiHao FTP service.

# 使用日志记录上传和下载。

xferlog_enable=YES

# 日志文件的位置

#xferlog_file=/var/log/vsftpd.log

# 日志使用标准fpd格式

xferlog_std_format=YES

# ftp服务的端口是20

connect_from_port_20=YES

# 用户使用ftp访问服务器时,把他们的登陆目录作为它们在ftp中看到的目录,这称为chroot。

# 这样用户就无法访问他们登陆目录以外的内容,大大增强了安全性。匿名用户的登陆目录是/var/ftp/

chroot_list_enable=YES

# 文件/etc/vsftpd.chroot_list中的用户不chroot。

chroot_list_file=/etc/vsftpd.chroot_list

# 同时最多允许5个用户登陆。

max_clients=5   #有些不支持此选项,注释掉即可。

# ftp服务的密码验证模块。

pam_service_name=vsftpd

# listen=YES                #如果是独立运行的则加此项(redhat9)。

#tcp_wrappers=YES       #如果是独立运行的则加此项(redhat9)。

 

10.4重新启动xinetd服务,你就可以匿名访问你的ftp服务器了。

    下面我们来建立一个ftp管理员账号

    在Linux ftp服务中,用户的权限受到双重限制。一是Linux文件系统本身的权限限制。每个文件的访问权限用rwxrwxrwx形势表示。每个用户只能做文件全 县允许的操作。二是ftp配置的限制。系统允许的操作,如果在ftp的配置文件中没有被允许,用户还是不能作这个操作。如:某个文件的权限为 rwxrwxrwx,即系统认为任何人都有读写执行的权利。如果vsftpd.conf中不允许匿名用户写,匿名用户还是不能修改这个问安。

    对于目录文件的读权限,意味着可以读出这个目录中的文件信息。目录文件的写权限,意味着可以在这个目录下建立、删除、重命名文件。

    用命令groupadd -r ftpAdmin添加一个ftp管理员组。其中-r表示这是一个系统组。

    用命令useradd -c "ftp Administrator" -d /var/ftp/ -G ftpAdmin -s /sbin/nologin -r ftpAdmin添加一个管理员用户ftpAdmin。其中

         -c "ftp Administrator"  是对这个用户的描述

         -d /var/ftp/            是这个用户的登陆目录

         -g ftpAdmin             是这个用户所在的组

         -s /sbin/nologin    是这个用户登陆时所用的shell。这个shell命令的功能极其弱,以至于不能用telnet登陆。也就是说这个管理员只能当当垃圾清扫员。(呵呵。好没面子的管理员)

         -r                      表示这是个系统账号,不用为它建立登陆目录。

    建好管理员以后把incoming目录的管理权给他。

chown ftpAdmin /var/ftp/incoming    :把此目录所有者设为ftpAdmin。

chmod 755 /var/ftp/incoming     :把目录的权限设为所有者可读写执行,同组用户可读、可执行,所有人可读、可执行。

    这样,我们的管理员就可以开始管理了。

10.5    配置vsftpd 允许匿名用户上传

//修改vsftpd 的主配置文件/etc/vsftpd.conf

# vi /etc/vsftpd.conf

//将如下两行前的#删除

//① #anon_upload_enable=YES  允许匿名用户上传

//② #anon_mkdir_write_enable=YES  开启匿名用户的写和创建目录的权限

//若要以上两项设置生效,同时还要求:

//(1) write_enable=YES

//(2) 匿名用户对文件系统的上传目录具有写权限

//添加如下的配置语句

// anon_world_readable_only=NO

//上面的配置语句用于放开匿名用户的浏览权限

//修改后存盘退出vi

//

//创建匿名上传目录

# mkdir /var/ftp/incoming

# 修改上传目录的权限

# chmod o+w /var/ftp/incoming/

#

//重新启动xinetd

# service xinetd restart

 

十一、 Web服务(httpd)

同样在setup中选中httpd服务。www服务不需要xinetd作为它的代理进程。httpd这个进程一直在系统中运行。www服务的默认目录是/var/www/html。只要把主页放到这个目录下就可以访问了。

    我们可以用建立ftp管理员的办法建立一个www管理员wwwAdmin。只要把它的登陆目录设为/var/www/html即可。

    /etc/init.d/httpd start     #启动服务

    /etc/init.d/httpd restart   #重新启动

其配置文件为/etc/httpd/conf/httpd.conf

分享到:
评论

相关推荐

    Linux常用配置文件及常用命令

    Linux常用配置文件及常用命令 Linux是一个功能强大且灵活的操作系统,它提供了许多配置文件和命令来帮助用户管理和维护系统。在本节中,我们将介绍一些常用的Linux配置文件和命令,帮助用户更好地理解和掌握Linux...

    linux常用服务器配置命令及注释

    本文将详细介绍一些常见的Linux服务器配置命令及其注释,包括DNS(域名解析服务)、FTP(文件传输协议)和DHCP(动态主机配置协议)等服务的设置。 一、DNS服务器配置 1. 安装DNS服务器软件: ``` sudo apt-get ...

    Linux常用命令大全

    Linux常用命令全集.CHM Linux vi命令大全.txt liunx命令大全.txt liunx 下如何用命令行设置网络?.txt 请问怎么设置DNS的命令?.txt Red Hat Linux下配置Tomcat+JSP+Apache服务器的步骤.txt Linux 下 Apache 与 ...

    Linux服务器部署常用命令

    ### Linux服务器部署常用命令知识点详解 #### 一、概述 在Linux系统中,掌握一系列的基础命令对于日常管理和服务器部署至关重要。这些命令可以帮助我们快速高效地完成各种任务,从简单的网络配置到复杂的数据库...

    Linux常用命令-API手册.zip

    本压缩包"Linux常用命令-API手册.zip"包含了两个重要的参考资料:"Linux基础命令教程豪华版.chm"和"Linux常用命令大全.chm",它们为用户提供详尽的Linux命令学习指南。 "Linux基础命令教程豪华版.chm"可能是对Linux...

    linux常用命令大全.pdf

    ### Linux常用命令大全 #### 一、文件管理 1. **查看目录与文件** - **ls**: 用于列出当前目录下的文件和子目录。常用选项包括: - `-l`: 以长格式显示文件详细信息,如权限、所有者、大小等。 - `-a`: 显示...

    linux常用命令大全

    在深入探讨Linux常用命令之前,我们首先应当理解Linux操作系统的核心理念与优势,它是一个免费、开源的操作系统,因其稳定性和安全性而广泛应用于服务器领域。掌握Linux命令行是每一位IT专业人士的必备技能,以下是...

    Linux常用命令全集.zip

    本资料"Linux常用命令全集.zip"包含了丰富的Linux命令知识,旨在帮助用户深入理解并应用这些命令。CHM文档是一种常见的Windows帮助文件格式,它将HTML页面集合在一个文件中,方便用户查阅。 以下是一些主要的Linux...

    Linux常用命令全集

    在IT领域,Linux操作系统是开发、管理...这个“Linux常用命令全集”CHM文件将涵盖这些命令的详细用法、选项及示例,是学习和查询Linux命令的宝贵资源。通过深入理解和实践这些命令,你可以更高效地在Linux环境中工作。

    linux用户基础和常用命令配置文件

    Linux用户基础和常用命令配置文件是每个Linux用户都需要掌握的核心知识。Linux系统以其稳定性和安全性在服务器领域广泛应用,而理解其基本操作和配置文件对于日常维护至关重要。 首先,让我们了解Linux的分区与目录...

    linux常用命令PPT文档

    以下是一些Linux常用命令的详细说明: 1. **创建用户**: 使用`useradd`命令创建新用户,例如`useradd student`,然后使用`passwd`命令设置用户密码,如`passwd student`。 2. **登录和提示符**: 用户通过`...

    Linux常用命令讲解

    本文将对Linux系统中常用命令进行详细讲解,包括安装、基础使用、目录结构、文件管理、用户管理、组权限管理、搜索查找、压缩解压、时间日期操作、远程登录与文件传输、常见问题解决方法等内容。 首先,Linux安装篇...

    suse linux常用命令

    "Suse Linux常用命令" Suse Linux是一种流行的Linux发行版,广泛应用于服务器和桌面环境中。本文将对Suse Linux常用的命令进行总结,帮助初学者快速掌握Suse Linux的基本操作。 目录管理 在Suse Linux中,目录...

    Linux常用命令全集,很方便和实用

    在IT领域,Linux操作系统是许多专业技术人员不可或缺的工具,尤其对于服务器管理和开发环境而言。...通过阅读"Linux常用命令全集"这个文档,你可以获得更详细的介绍和示例,加深对每个命令的理解和应用。

    Linux常用命令汇总.md

    ### Linux常用命令汇总知识点 #### 一、Linux简介与重要性 **1.1 Linux的起源与发展** Linux是由芬兰程序员林纳斯·托瓦兹(Linus Torvalds)于1991年创建的一个开放源代码操作系统。起初,它是作为个人兴趣项目开始...

    Linux常用命令全集+服务器配置教程+实用培训学习教程.rar

    自己搜集了几个有关linux使用的书,大家看看,对自己有帮助没?多多讲评!

    Linux系统管理-Linux常用命令.pdf

    以上就是Linux系统管理中常用命令的基本知识点。掌握这些命令是进行Linux系统管理的基础,它们是日常系统操作和维护中不可或缺的工具。Linux系统管理员需要熟练运用这些命令来完成文件管理、目录管理、系统状态查看...

    什么是linux常用命令大全以及学习linux常用命令大全的意义

    Linux常用命令大全是一份包含了Linux系统中最常用命令及其使用方法的综合指南,它覆盖了文件操作、目录管理、进程控制、网络配置等多个方面,是Linux初学者及进阶用户必备的学习资料。 #### 二、学习Linux常用命令...

Global site tag (gtag.js) - Google Analytics