chattr -i,怎么改变linux系统的只读文件的权限

文章 2年前 (2023) admin
0

怎么改变linux系统的只读文件的权限

经过核实后将会做出处理,感谢您为社区和谐做出贡献。

Cyrus Imap + Postfix 在Linux下的安装

一般大家现在使用的Unix/Linux下邮件服务都是基于对系统用户的认证,这在一定程度上留下了许多安全隐患,如果账户没有设置好,会导致不可弥补 的失误,此外SMTP服务器的外发功能也可以被居心不良者用作发送垃圾邮件的中转站,因此建立一套基于非系统用户认证加带SMTP认证的邮件服务器对要求 高性能高安全的用户来说就显得尤为重要,本文将介绍使用Cyrus Imap和Postfix组合的邮件服务实现上述功能。
    由于我们使用的是非系统用户的认证,因此需要一个程序进行非系统用户的认 证,cyrus IMAP在开发中就包含了一种叫SASL(Simple Authentication and Security Layer)他是一种基于基本协议的认证接口,他可以被大部分的协议调用作为验证工具,由于SASL是Cyrus项目开发的产品,因此他对Cyrus的支 持是最完美的;此外我们还需要一个第三方数据库对邮件用户的用户名密码等资料进行存储,这里我们选用Berkeley Database,Berkeley Database是一种内含数据库并支持各种c/s结构的软件,Berkeley Database支持各种接口包括C, C++, Java, 和 Perl APIs等,被广泛的使用在Unix/Linux 平台上。
首先我们安erkeley DB,Berkeley DB最新版本是3.2.9,可以到,下载后用
tar zxvf db-3.2.9.tar.gz
cd db-3.2.9
cd dist
./configure
make
make install
安装完毕后不需要启动任何进程就可以使用Berkeley DB。
注意:为了便于以后的安装,我们可以把/usr/local/BerkeleyDB.3.2/lib 和/usr/local/BerkeleyDB.3.2/include下的所有文件相应的拷贝到/usr/lib和/usr/include下,如果有相同文件名的就进行强制覆盖。
安装SASL:先到,下载后解压安装:
tar zxvf cyrus-sasl-1.5.24.tar.gz
cd cyrus-sasl-1.5.24
./configure –enable-login
注意:在configure 时应该有一下内容,才代表Cyrus包含了对Berkeley DB的支持:
checking for db_create in -ldb... yes
checking DB library to use... berkeley
如果没有上述内容请检查是否把BerkeleyDB下的lib/和include/内容拷贝到/usr/lib和/usr/include下
配置完后进行安装
make
make install
注意:我们还需要把/usr/local/lib/sasl/所有文件拷贝到/usr/lib并把/usr/local/include/sasl下的所有文件拷贝到/usr/include/
安装Cyrus Imap:在安装之前我们先简单的介绍一下Cyrus Imap:
什么是 IMAP 以及为什么要使用它? IMAP( 互联网邮件访问协议 ) 提供了一种访问远程服务器上的电子邮件或 BBS 邮件的方法. IMAP 普遍被认为是 POP ( 邮局协议 ) 邮件的替代者. IMAP 允许用户从不同的机子问他们的电子邮件而不用下载那些邮件. 这种邮件的访问更加有效, 而且对终端用户来说有更多的好处,而Cyrus Imap是众多Imap版本中的一种,现在流行的imap软件主要有
o University of Washington Imap 是Imap的元老也是使用最广泛的Imap软件
o Cyrus
o PMDF
o Courier-IMAP
我们这里介绍的Cyrus Imap 是由Bob Anderson (boba@iserv.net) 和 Jorge Paramo (jorge@iserv.net)共同开发的一个项目,Cyrus Imap被设计成在一台不允许一般用户登录的服务器上运行. Cyrus 也被认为是 Unix 上的两个最普遍的 IMAP 服务器之一. 另一个是大学的 IMAP 服务器.
到 Imap,下载后解压安装
tar zxvf cyrus-imapd-2.0.15.tar.gz
cd cyrus-imapd-2.0.15
创建cyrus用户
adduser –g mail cyrus
passwd cyrus
由于cyrus imap是通过sasl进行用户验证的,而sasl是把用户信息写入到/etc/sasldb文件中,因此cyrus用户需要有对/etc/sasldb文件读写的权限
chown cyrus /etc/sasldb*
./configure
configure的详细使用可以参照configure –help命令,你可以加入对openssl等的支持
make depend
make all CFLAGS=-O
make install
cyrus imap采用的是4.3BSD 格式的syslog,
vi /etc/syslog 并加入下面两行
local6.debug /var/log/imapd.log
auth.debug /var/log/auth.log

生成两个空白的日志文件
touch /var/log/imapd.log /var/log/auth.log
新建imap的配置文件
vi /etc/imapd.conf并添加下面几行
configdirectory: /var/imap
partition-default: /var/spool/imap
admins: cyrus wing
sasl_pwcheck_method: sasldb

创建相应的配置目录根据我们前面的配置文件进行设置
cd /var
mkdir imap
chown cyrus imap
chgrp mail imap
chmod 750 imap
cd /var/spool
mkdir imap
chown cyrus imap
chgrp mail imap
chmod 750 imap
cd /usr
mkdir sieve
chown cyrus sieve
chgrp mail sieve
chmod 750 sieve
以上命令都是有root用户完成的现在切合成cyrus用户进行相应目录和文件的安装
su cyrus
tools/mkimap
exit
Cyrus Imap还提供了一个很强大的功能-对邮件用户的邮件容量进行设置!在安装过程中需要使用chattr命令改变一些文件的属性
cd /var/imap
chattr +S user quota user/* quota/*
chattr +S /var/spool/imap /var/spool/imap/*
如果你使用的是senmail作MTA则需要执行下面一句
chattr +S /var/spool/mqueue
编辑/etc/services文件,如果文件中没有一下内容,则加入下面的几行
 pop3 110/tcp
 imap 143/tcp
 imsp 406/tcp
 acap 674/tcp
 imaps 993/tcp
 pop3s 995/tcp
 kpop 1109/tcp
 sieve 2000/tcp
 lmtp 2003/tcp
 fud 4201/udp
查看/etc/inetd.conf文或/etc/xinetd.d目录下是否有关于imap, imaps, pop3, pop3s, kpop, lmtp 和 sieve的内容,如果有则删去相应的内容
重新启动inet或xinet进程
/etc/rc.d/init.d/inet resart

/etc/rc.d/init.d/xinet restart

配置主进程文件:在原代码文件下的master/config目录下有相应的参考配置文件,我们选择最基本的安装文件
cp master/conf/small.conf /etc/cyrus.conf
如果你的cyrus imap在编译过程中有加入对openssl等的支持,则可以使用normal.conf
cp master/conf/normal.conf /etc/cyrus.conf
编辑/etc/cyrus.conf

  lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=0
替换成
  lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=1
启动cyrus imap
/usr/cyrus/bin/master &
测试cyurs iamp
telnet 127.0.0.1 143
或telnet 127.0.0.1 110
如果出现以下文字则表明imap工作正常
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
OK wing.com Cyrus IMAP4 v2.0.15 server ready
管理cyrus用户:根据前面的配置我们先添加管理员账户
/usr/local/sbin/saslpasswd cyrus
输入两次相同的密码后就把cyrus这个用户添加到数据库中
运行cyrus管理程序
/usr/local/bin/cyradm –u cyrus localhost
系统会提示你输入你的密码,把我们刚才输入的密码敲入后进入管理提示界面
localhost.localdomain>help
使用help命令看命令帮助
authenticate, login, auth authenticate to server
chdir, cd change current directory
createmailbox, cm, create create mailbox
deleteaclmailbox, dam, deleteacl remove ACLs from mailbox
deletemailbox, delete, dm delete mailbox
disconnect, disc disconnect from current server

opera stable文件可以删吗

经过核实后将会做出处理,感谢您为社区和谐做出贡献。

Linux命令又多又杂,新手该如何分类

运行Linux在操作操作系统时,您需要使用命令行,一种使您可以访问操作系统服务的接口。大多数Linux发行版都使用图形用户界面(GUI)作为外壳,主要是为了使用户易于使用。话虽这么说,但更推荐使用命令行界面(CLI),因为它更强大,更有效。通过在CLI中键入一些命令,可以在几秒钟内完成需要通过GUI进行多步骤处理的任务。因此,如果您考虑使用Linux,则学习基本命令行将大有帮助。Linux命令在继续执行命令列表之前,您需要首先打开命令行。尽管步骤可能会因所使用的发行版而异,但通常可以在“ 实用程序”部分中找到命令行。现在您已经准备好,让我们开始吧,好吗?1. pwd命令使用pwd命令查找您所在的当前目录(文件夹)的路径。该命令将返回绝对(完整)路径,该路径基本上是以正斜杠(/)开头的路径。绝对路径的一个示例是/ home / username。2. cd命令要浏览Linux文件系统,请使用cd命令。它需要完整路径或目录名称,具体取决于您所在的当前目录。假设您位于/ home / username / Documents中,并且想要转到Documents的子目录Photos。为此,只需键入cd Photos。另一种情况是,如果您想切换到一个全新的目录,例如/ home / username / Movies。在这种情况下,您必须键入cd,然后输入目录的绝对路径。如果要快速导航,可以使用一些快捷。使用cd ..(带有两个点)将一个目录上移,或者使用cd直接进入主文件夹。要移至上一个目录,请键入cd-(带连字符)。附带说明一下,Linux的文件区分大小写。因此,您必须准确输入名称的目录。3. ls命令ls命令用于查看目录的内容。默认情况下,此命令将显示当前目录的内容。如果要查看其他目录的内容,请键入ls,然后输入目录的路径。例如,输入LS /家/用户名/文档查看的内容的文件。4. cat命令cat是Linux中最常用的命令之一。它用于查看标准输出(sdout)上文件的内容。要运行此命令,请键入cat,然后输入文件名及其扩展名。例如:cat file.txt。5. cp命令使用cp命令从当前目录复制文件。例如,命令cp scenery.jpg / home / username / Pictures将创建一个scenery.jpg副本到Pictures目录。6. mv命令mv命令的主要用途是移动文件,尽管它也可以用于重命名文件。该命令中的参数类似于cp命令。您需要输入mv,文件名和目标目录。例如:mv file.txt / home / username / Documents。要重命名文件,语法为mv oldname.ext newname.ext7. mkdir命令使用mkdir命令创建一个新目录,例如mkdir Music将创建一个名为Music的新目录。8. rmdir命令如果需要删除目录,请使用rmdir命令。但是,rmdir仅允许您删除空目录。9. rm命令该RM命令用于与在其中的内容一起删除目录。如果只想删除目录(作为rmdir的替代方法),请使用rm -r。10.touch命令该touch命令可以通过命令行来创建新的空白文件。例如,输入touch /home/username/Documents/Web.html在Documents目录下创建一个名为Web的HTML文件。11.定位命令您可以使用此命令来定位文件,就像Windows中的搜索命令一样。此外,将-i参数与该命令一起使用将使其不区分大小写,因此即使您不记得其确切名称,也可以搜索文件。要搜索包含两个或多个单词的文件,请使用星号(*)。例如,l ocate -i school * note命令将搜索任何包含单词“ school”和“ note”的文件,无论它是大写还是小写。12.查找命令与find命令类似,使用 find还可搜索文件。区别在于,您可以使用find命令在给定目录中定位文件。例如,find / home / -name notes.txt命令将在主目录及其子目录中搜索名为notes.txt的文件。13. grep命令无疑对于日常使用非常有用的另一个命令。grep使您可以搜索给定文件中的所有文本。为了说明这一点,grep blue notepad.txt将在记事本文件中搜索单词blue。包含搜索到的单词的行将被完整显示。14. sudo命令该命令是“ SuperUser Do ”的缩写,使您能够执行需要管理或超级用户权限的任务。但是,建议不要将此命令用于日常使用,因为如果您做错了一些事情,很容易。15. df命令使用df命令获取有关系统磁盘空间使用情况的报告,以百分比和KB表示。如果要以兆字节为单位查看报告,请输入df -m。16. du命令如果要检查文件或目录占用了多少空间,答案是du(磁盘使用情况)命令。但是,磁盘使用情况摘要将显示磁盘块号,而不是通常的大小格式。如果要以字节,千字节和兆字节为单位查看它,请在命令行中添加-h参数。17. kill命令如果您的程序无响应,则可以使用kill命令手动终止它。它将向运行异常的应用发送特定信号,并指示该应用自行终止。总共可以使用六十四种信号,但是人们通常只使用两种信号:SIGTERM(15):请求程序停止运行,并给它一些时间来保存其所有进度。如果在输入kill命令时未指定信号,则将使用此信号。SIGKILL(9):强制程序立即停止。未保存的进度将丢失。除了知道信号之外,您还需要知道要杀死的程序的进程标识号(PID)。如果您不知道PID,只需运行命令ps ux。在知道您要使用的信号以及程序的PID之后,输入以下语法:kill [信号选项] PID。18. ping命令使用ping命令检查与服务器的连接状态。例如,只需输入ping google.com,该命令将检查您是否能够连接到Google并测量响应时间。19. wget命令Linux的命令行非常有用,您甚至可以在wget命令的帮助下从Internet下载文件。为此,只需键入wget,然后键入下载链接。20. chmod命令chmod是另一个基本命令,用于更改文件和目录的读取,写入和执行权限。由于此命令相当复杂,因此您可以阅读其他完整的教程以正确学习它。

版权声明:admin 发表于 2023年2月23日 上午2:12。
转载请注明:chattr -i,怎么改变linux系统的只读文件的权限 | 热豆腐网址之家

相关文章