<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://aznot.com/index.php?action=history&amp;feed=atom&amp;title=Vsftpd</id>
	<title>Vsftpd - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://aznot.com/index.php?action=history&amp;feed=atom&amp;title=Vsftpd"/>
	<link rel="alternate" type="text/html" href="https://aznot.com/index.php?title=Vsftpd&amp;action=history"/>
	<updated>2026-04-30T11:59:21Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://aznot.com/index.php?title=Vsftpd&amp;diff=9629&amp;oldid=prev</id>
		<title>Kenneth: /* /etc/vsftpd/vsftpd.conf */</title>
		<link rel="alternate" type="text/html" href="https://aznot.com/index.php?title=Vsftpd&amp;diff=9629&amp;oldid=prev"/>
		<updated>2026-03-04T05:58:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;/etc/vsftpd/vsftpd.conf&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 05:58, 4 March 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l78&quot;&gt;Line 78:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 78:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/etc/vsftpd/ftpusers      # deny ftp users&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/etc/vsftpd/ftpusers      # deny ftp users&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/etc/vsftpd/user_list     # deny user list&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/etc/vsftpd/user_list     # deny user list&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Ubuntu /etc/vsftpd.conf ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Default settings:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;$ grep -v &quot;^#&quot; /etc/vsftpd.conf&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;listen=NO&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;listen_ipv6=YES&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;anonymous_enable=NO&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;local_enable=YES&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;dirmessage_enable=YES&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;use_localtime=YES&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;xferlog_enable=YES&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;connect_from_port_20=YES&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;secure_chroot_dir=/var/run/vsftpd/empty&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;pam_service_name=vsftpd&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;ssl_enable=NO&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key aznot:diff:1.41:old-9628:rev-9629:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Kenneth</name></author>
	</entry>
	<entry>
		<id>https://aznot.com/index.php?title=Vsftpd&amp;diff=9628&amp;oldid=prev</id>
		<title>Kenneth: /* Configuration Files */</title>
		<link rel="alternate" type="text/html" href="https://aznot.com/index.php?title=Vsftpd&amp;diff=9628&amp;oldid=prev"/>
		<updated>2026-03-04T05:56:28Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Configuration Files&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 05:56, 4 March 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l39&quot;&gt;Line 39:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 39:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Configuration Files ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Configuration Files ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/etc/vsftpd/&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/ins&gt;/etc/vsftpd/&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; /etc/vsftpd/vsftpd.conf&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/etc&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/vsftpd&lt;/del&gt;/vsftpd.conf&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Ubuntu:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/ins&gt;/etc/vsftpd.conf&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== banner ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== banner ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key aznot:diff:1.41:old-9627:rev-9628:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Kenneth</name></author>
	</entry>
	<entry>
		<id>https://aznot.com/index.php?title=Vsftpd&amp;diff=9627&amp;oldid=prev</id>
		<title>Kenneth: /* SFTP */</title>
		<link rel="alternate" type="text/html" href="https://aznot.com/index.php?title=Vsftpd&amp;diff=9627&amp;oldid=prev"/>
		<updated>2026-03-04T05:55:06Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;SFTP&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 05:55, 4 March 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l15&quot;&gt;Line 15:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 15:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== SFTP ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== SFTP ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Part of the openssl package&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;SFTP Shell:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;SFTP Shell:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  /usr/libexec/openssh/sftp-server&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  /usr/libexec/openssh/sftp-server&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; # or for Ubuntu&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; /usr/lib/openssh/sftp-server&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; # or&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; /usr/sbin/internal-sftp&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;To provide SFTP access to linux accounts only (no shell access) change user&amp;#039;s shell to:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;To provide SFTP access to linux accounts only (no shell access) change user&amp;#039;s shell to:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Kenneth</name></author>
	</entry>
	<entry>
		<id>https://aznot.com/index.php?title=Vsftpd&amp;diff=4988&amp;oldid=prev</id>
		<title>Kenneth: /* keywords */</title>
		<link rel="alternate" type="text/html" href="https://aznot.com/index.php?title=Vsftpd&amp;diff=4988&amp;oldid=prev"/>
		<updated>2018-11-18T21:27:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;keywords&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== vsftpd ==&lt;br /&gt;
&lt;br /&gt;
vsftpd: - Very Secure Ftp Daemon&lt;br /&gt;
:&amp;quot;vsftpd is a Very Secure FTP daemon. It was written completely from scratch.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
 yum install vsftpd&lt;br /&gt;
&lt;br /&gt;
 apt-get install vsftpd&lt;br /&gt;
&lt;br /&gt;
== Tutorial ==&lt;br /&gt;
&lt;br /&gt;
Howto: Easy FTP with vsftpd - Ubuntu Forums - http://ubuntuforums.org/showthread.php?t=518293&lt;br /&gt;
&lt;br /&gt;
== SFTP ==&lt;br /&gt;
&lt;br /&gt;
SFTP Shell:&lt;br /&gt;
 /usr/libexec/openssh/sftp-server&lt;br /&gt;
&lt;br /&gt;
To provide SFTP access to linux accounts only (no shell access) change user&amp;#039;s shell to:&lt;br /&gt;
 test:x:501:50::/ftp:/usr/libexec/openssh/sftp-server&lt;br /&gt;
&lt;br /&gt;
Add to /etc/shells:&lt;br /&gt;
 /bin/sh&lt;br /&gt;
 /bin/bash&lt;br /&gt;
 /sbin/nologin&lt;br /&gt;
 /usr/libexec/openssh/sftp-server&lt;br /&gt;
&lt;br /&gt;
Source: https://help.ubuntu.com/10.04/serverguide/C/ftp-server.html&lt;br /&gt;
&lt;br /&gt;
== Configuration Files ==&lt;br /&gt;
&lt;br /&gt;
/etc/vsftpd/&lt;br /&gt;
&lt;br /&gt;
/etc/vsftpd/vsftpd.conf&lt;br /&gt;
&lt;br /&gt;
== banner ==&lt;br /&gt;
&lt;br /&gt;
Simple banner:&lt;br /&gt;
 ftpd_banner=My FTP&lt;br /&gt;
&lt;br /&gt;
OR more complex banner...&lt;br /&gt;
&lt;br /&gt;
Create warning banners for all FTP users:&lt;br /&gt;
 banner_file=/etc/vsftpd/issue&lt;br /&gt;
&lt;br /&gt;
Create /etc/vsftpd/issue file with a message compliant with the local site policy or a legal disclaimer:&lt;br /&gt;
 NOTICE TO USERS&lt;br /&gt;
 &lt;br /&gt;
 Use of this system constitutes consent to security monitoring and testing.&lt;br /&gt;
 All activity is logged with your host name and IP address.&lt;br /&gt;
&lt;br /&gt;
== Tutorial ==&lt;br /&gt;
&lt;br /&gt;
*Red Hat / CentOS VSFTPD FTP Server Configuration - http://www.cyberciti.biz/tips/rhel-fedora-centos-vsftpd-installation.html&lt;br /&gt;
*Linux Create An FTP User Account - http://www.cyberciti.biz/tips/linux-creating-ftp-account-with-vsftpds.html&lt;br /&gt;
*CentOS / Red Hat Linux Install VSFTPD FTP Server - http://www.cyberciti.biz/faq/rhel-centos-linux-install-ftp-server/&lt;br /&gt;
&lt;br /&gt;
== Files ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/etc/vsftpd/              # config folder&lt;br /&gt;
/etc/vsftpd/vsftpd.conf   # config file&lt;br /&gt;
&lt;br /&gt;
/etc/rc.d/init.d/vsftpd   # startup file&lt;br /&gt;
/usr/sbin/vsftpd          # executable&lt;br /&gt;
&lt;br /&gt;
/etc/vsftpd/ftpusers      # deny ftp users&lt;br /&gt;
/etc/vsftpd/user_list     # deny user list&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== /etc/vsftpd/vsftpd.conf ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
anonymous_enable=NO&lt;br /&gt;
local_enable=YES&lt;br /&gt;
write_enable=YES&lt;br /&gt;
local_umask=002&lt;br /&gt;
dirmessage_enable=YES&lt;br /&gt;
xferlog_enable=YES&lt;br /&gt;
connect_from_port_20=YES&lt;br /&gt;
xferlog_std_format=YES&lt;br /&gt;
ftpd_banner=My FTP&lt;br /&gt;
chroot_local_user=YES&lt;br /&gt;
listen=YES&lt;br /&gt;
pam_service_name=vsftpd&lt;br /&gt;
userlist_enable=YES&lt;br /&gt;
tcp_wrappers=YES&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Changes from default:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
anonymous_enable=NO&lt;br /&gt;
local_umask=002&lt;br /&gt;
ftpd_banner=My FTP&lt;br /&gt;
chroot_local_user=YES&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/etc/pam.d/vsftpd:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#%PAM-1.0&lt;br /&gt;
# htpasswd access&lt;br /&gt;
auth    required pam_pwdfile.so pwdfile /etc/htpasswd&lt;br /&gt;
account required pam_permit.so&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See [[Linux PAM and htpasswd]]&lt;br /&gt;
&lt;br /&gt;
Original /etc/pam.d/vsftpd:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#%PAM-1.0&lt;br /&gt;
session    optional     pam_keyinit.so    force revoke&lt;br /&gt;
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed&lt;br /&gt;
auth       required     pam_shells.so&lt;br /&gt;
auth       include      system-auth&lt;br /&gt;
account    include      system-auth&lt;br /&gt;
session    include      system-auth&lt;br /&gt;
session    required     pam_loginuid.so&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Default ===&lt;br /&gt;
&lt;br /&gt;
/etc/vsftpd/vsftpd.conf:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Example config file /etc/vsftpd/vsftpd.conf&lt;br /&gt;
#&lt;br /&gt;
# The default compiled in settings are fairly paranoid. This sample file&lt;br /&gt;
# loosens things up a bit, to make the ftp daemon more usable.&lt;br /&gt;
# Please see vsftpd.conf.5 for all compiled in defaults.&lt;br /&gt;
#&lt;br /&gt;
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.&lt;br /&gt;
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd&amp;#039;s&lt;br /&gt;
# capabilities.&lt;br /&gt;
#&lt;br /&gt;
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).&lt;br /&gt;
anonymous_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# Uncomment this to allow local users to log in.&lt;br /&gt;
local_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# Uncomment this to enable any form of FTP write command.&lt;br /&gt;
write_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# Default umask for local users is 077. You may wish to change this to 022,&lt;br /&gt;
# if your users expect that (022 is used by most other ftpd&amp;#039;s)&lt;br /&gt;
local_umask=022&lt;br /&gt;
#&lt;br /&gt;
# Uncomment this to allow the anonymous FTP user to upload files. This only&lt;br /&gt;
# has an effect if the above global write enable is activated. Also, you will&lt;br /&gt;
# obviously need to create a directory writable by the FTP user.&lt;br /&gt;
#anon_upload_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# Uncomment this if you want the anonymous FTP user to be able to create&lt;br /&gt;
# new directories.&lt;br /&gt;
#anon_mkdir_write_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# Activate directory messages - messages given to remote users when they&lt;br /&gt;
# go into a certain directory.&lt;br /&gt;
dirmessage_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# Activate logging of uploads/downloads.&lt;br /&gt;
xferlog_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# Make sure PORT transfer connections originate from port 20 (ftp-data).&lt;br /&gt;
connect_from_port_20=YES&lt;br /&gt;
#&lt;br /&gt;
# If you want, you can arrange for uploaded anonymous files to be owned by&lt;br /&gt;
# a different user. Note! Using &amp;quot;root&amp;quot; for uploaded files is not&lt;br /&gt;
# recommended!&lt;br /&gt;
#chown_uploads=YES&lt;br /&gt;
#chown_username=whoever&lt;br /&gt;
#&lt;br /&gt;
# You may override where the log file goes if you like. The default is shown&lt;br /&gt;
# below.&lt;br /&gt;
#xferlog_file=/var/log/vsftpd.log&lt;br /&gt;
#&lt;br /&gt;
# If you want, you can have your log file in standard ftpd xferlog format&lt;br /&gt;
xferlog_std_format=YES&lt;br /&gt;
#&lt;br /&gt;
# You may change the default value for timing out an idle session.&lt;br /&gt;
#idle_session_timeout=600&lt;br /&gt;
#&lt;br /&gt;
# You may change the default value for timing out a data connection.&lt;br /&gt;
#data_connection_timeout=120&lt;br /&gt;
#&lt;br /&gt;
# It is recommended that you define on your system a unique user which the&lt;br /&gt;
# ftp server can use as a totally isolated and unprivileged user.&lt;br /&gt;
#nopriv_user=ftpsecure&lt;br /&gt;
#&lt;br /&gt;
# Enable this and the server will recognise asynchronous ABOR requests. Not&lt;br /&gt;
# recommended for security (the code is non-trivial). Not enabling it,&lt;br /&gt;
# however, may confuse older FTP clients.&lt;br /&gt;
#async_abor_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# By default the server will pretend to allow ASCII mode but in fact ignore&lt;br /&gt;
# the request. Turn on the below options to have the server actually do ASCII&lt;br /&gt;
# mangling on files when in ASCII mode.&lt;br /&gt;
# Beware that on some FTP servers, ASCII support allows a denial of service&lt;br /&gt;
# attack (DoS) via the command &amp;quot;SIZE /big/file&amp;quot; in ASCII mode. vsftpd&lt;br /&gt;
# predicted this attack and has always been safe, reporting the size of the&lt;br /&gt;
# raw file.&lt;br /&gt;
# ASCII mangling is a horrible feature of the protocol.&lt;br /&gt;
#ascii_upload_enable=YES&lt;br /&gt;
#ascii_download_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# You may fully customise the login banner string:&lt;br /&gt;
#ftpd_banner=Welcome to blah FTP service.&lt;br /&gt;
#&lt;br /&gt;
# You may specify a file of disallowed anonymous e-mail addresses. Apparently&lt;br /&gt;
# useful for combatting certain DoS attacks.&lt;br /&gt;
#deny_email_enable=YES&lt;br /&gt;
# (default follows)&lt;br /&gt;
#banned_email_file=/etc/vsftpd/banned_emails&lt;br /&gt;
#&lt;br /&gt;
# You may specify an explicit list of local users to chroot() to their home&lt;br /&gt;
# directory. If chroot_local_user is YES, then this list becomes a list of&lt;br /&gt;
# users to NOT chroot().&lt;br /&gt;
#chroot_list_enable=YES&lt;br /&gt;
# (default follows)&lt;br /&gt;
#chroot_list_file=/etc/vsftpd/chroot_list&lt;br /&gt;
#&lt;br /&gt;
# You may activate the &amp;quot;-R&amp;quot; option to the builtin ls. This is disabled by&lt;br /&gt;
# default to avoid remote users being able to cause excessive I/O on large&lt;br /&gt;
# sites. However, some broken FTP clients such as &amp;quot;ncftp&amp;quot; and &amp;quot;mirror&amp;quot; assume&lt;br /&gt;
# the presence of the &amp;quot;-R&amp;quot; option, so there is a strong case for enabling it.&lt;br /&gt;
#ls_recurse_enable=YES&lt;br /&gt;
#&lt;br /&gt;
# When &amp;quot;listen&amp;quot; directive is enabled, vsftpd runs in standalone mode and&lt;br /&gt;
# listens on IPv4 sockets. This directive cannot be used in conjunction&lt;br /&gt;
# with the listen_ipv6 directive.&lt;br /&gt;
listen=YES&lt;br /&gt;
#&lt;br /&gt;
# This directive enables listening on IPv6 sockets. To listen on IPv4 and IPv6&lt;br /&gt;
# sockets, you must run two copies of vsftpd whith two configuration files.&lt;br /&gt;
# Make sure, that one of the listen options is commented !!&lt;br /&gt;
#listen_ipv6=YES&lt;br /&gt;
&lt;br /&gt;
pam_service_name=vsftpd&lt;br /&gt;
userlist_enable=YES&lt;br /&gt;
tcp_wrappers=YES&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/etc/pam.d/vsftpd:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#%PAM-1.0&lt;br /&gt;
session    optional     pam_keyinit.so    force revoke&lt;br /&gt;
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed&lt;br /&gt;
auth       required     pam_shells.so&lt;br /&gt;
auth       include      system-auth&lt;br /&gt;
account    include      system-auth&lt;br /&gt;
session    include      system-auth&lt;br /&gt;
session    required     pam_loginuid.so&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Service Start and Stop ==&lt;br /&gt;
&lt;br /&gt;
 service vsftpd start&lt;br /&gt;
 service vsftpd stop&lt;br /&gt;
 service vsftpd restart&lt;br /&gt;
&lt;br /&gt;
== Firewall Settings ==&lt;br /&gt;
&lt;br /&gt;
 pasv_enable=YES&lt;br /&gt;
 pasv_min_port=12000&lt;br /&gt;
 pasv_max_port=12003&lt;br /&gt;
&lt;br /&gt;
 -A RH-Firewall-1-INPUT -p tcp --dport 11000:11010 -j ACCEPT&lt;br /&gt;
&lt;br /&gt;
References:&lt;br /&gt;
* http://blog.joshua.net/2006/07/ftps-and-vsftpd-part-2-firewalls.html&lt;br /&gt;
* http://forums.fedoraforum.org/showthread.php?t=97374&lt;br /&gt;
&lt;br /&gt;
== Allow Only Specified Users ==&lt;br /&gt;
&lt;br /&gt;
Append to bottom:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#ken#&lt;br /&gt;
anonymous_enable=NO&lt;br /&gt;
local_umask=002&lt;br /&gt;
ftpd_banner=My FTP&lt;br /&gt;
chroot_local_user=YES&lt;br /&gt;
userlist_enable=YES&lt;br /&gt;
userlist_deny=NO&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and add your user to &amp;quot;vsftpd/user_list&amp;quot;&lt;br /&gt;
&lt;br /&gt;
check that your user is not in &amp;quot;vsftpd/ftpusers&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Source: How to allow specific user to login Vsftp server - http://www.linuxquestions.org/questions/linux-networking-3/how-to-allow-specific-user-to-login-vsftp-server-446064/&lt;br /&gt;
&lt;br /&gt;
== SFTP Server ==&lt;br /&gt;
&lt;br /&gt;
Server ftp.lindonlabs.com&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/etc/vsftpd.conf: (compared to above vsftpd.conf)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# matching config&lt;br /&gt;
listen=YES&lt;br /&gt;
anonymous_enable=NO&lt;br /&gt;
local_enable=YES&lt;br /&gt;
write_enable=YES&lt;br /&gt;
dirmessage_enable=YES&lt;br /&gt;
xferlog_enable=YES&lt;br /&gt;
connect_from_port_20=YES&lt;br /&gt;
chroot_local_user=YES&lt;br /&gt;
pam_service_name=vsftpd&lt;br /&gt;
&lt;br /&gt;
# missing config&lt;br /&gt;
#local_umask=002&lt;br /&gt;
#xferlog_std_format=YES&lt;br /&gt;
#ftpd_banner=My FTP&lt;br /&gt;
#userlist_enable=YES&lt;br /&gt;
#tcp_wrappers=YES&lt;br /&gt;
&lt;br /&gt;
# additional config&lt;br /&gt;
secure_chroot_dir=/var/run/vsftpd&lt;br /&gt;
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem&lt;br /&gt;
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key&lt;br /&gt;
banner_file=/home/ftp2/ftp_banner&lt;br /&gt;
log_ftp_protocol=yes&lt;br /&gt;
&lt;br /&gt;
## SSL Config&lt;br /&gt;
ssl_enable=YES&lt;br /&gt;
allow_anon_ssl=YES&lt;br /&gt;
force_local_data_ssl=NO&lt;br /&gt;
force_local_logins_ssl=NO&lt;br /&gt;
ssl_tlsv1=YES&lt;br /&gt;
ssl_sslv2=NO&lt;br /&gt;
ssl_sslv3=NO&lt;br /&gt;
rsa_cert_file=/etc/vsftpd/vsftpd.pem&lt;br /&gt;
rsa_private_key_file=/etc/vsftpd/vsftpd.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The SSL config options do not appear to affect SFTP.  Maybe for FTPS?&lt;br /&gt;
&lt;br /&gt;
/etc/pam.d/vsftpd:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Standard behaviour for ftpd(8).&lt;br /&gt;
auth    required        pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed&lt;br /&gt;
&lt;br /&gt;
# Note: vsftpd handles anonymous logins on its own.  Do not enable&lt;br /&gt;
# pam_ftp.so.&lt;br /&gt;
&lt;br /&gt;
# Standard blurb.&lt;br /&gt;
@include common-account&lt;br /&gt;
@include common-session&lt;br /&gt;
&lt;br /&gt;
@include common-auth&lt;br /&gt;
auth    required        pam_shells.so&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Debian:&lt;br /&gt;
 /usr/lib/sftp-server&lt;br /&gt;
&lt;br /&gt;
CentOS:&lt;br /&gt;
 /usr/libexec/openssh/sftp-server&lt;br /&gt;
&lt;br /&gt;
Enabling SFTP on CentOS locks out SSH and *FTP* access, but allows SFTP.  To allow FTP also, the PAM file will need to be modified.&lt;br /&gt;
&lt;br /&gt;
== Firewall ==&lt;br /&gt;
&lt;br /&gt;
Passing Through a Stateless Firewall&lt;br /&gt;
: The classic example of a network operation that may fail with a stateless firewall is the File Transfer Protocol (FTP). [http://en.wikipedia.org/wiki/Stateful_firewall]&lt;br /&gt;
&lt;br /&gt;
Install and configure ftp server in Amazon EC2 instance | Linux Admin Zone - http://linuxadminzone.com/install-and-configure-ftp-server-in-amazon-ec2-instance/&lt;br /&gt;
&lt;br /&gt;
Open a good range of addresses:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ ec2-authorize default -p 20-21&lt;br /&gt;
$ ec2-authorize default -p 1024-1048&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ vi /etc/vsftpd/vsftpd.conf&lt;br /&gt;
#&amp;lt;em&amp;gt;---Add following lines at the end of file---&amp;lt;/em&amp;gt;&lt;br /&gt;
	pasv_enable=YES&lt;br /&gt;
	pasv_min_port=1024&lt;br /&gt;
	pasv_max_port=1048&lt;br /&gt;
	pasv_address=&amp;lt;Public IP of your instance&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
&lt;br /&gt;
=== chroot - GnuTLS error -15: An unexpected TLS packet was received ===&lt;br /&gt;
&lt;br /&gt;
 Error:	GnuTLS error -15: An unexpected TLS packet was received.&lt;br /&gt;
 Error:	Could not connect to server&lt;br /&gt;
&lt;br /&gt;
chroot was enabled with a writable root.  Need to override, or make non writable.&lt;br /&gt;
&lt;br /&gt;
== keywords ==&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Kenneth</name></author>
	</entry>
</feed>