I need to transfer files through a
bastion host
periodically. To edit files on a webserver, I need to first establish a
Secure Shell (SSH)
connection to the bastion host, logging in using an
RSA SecurID token.
Once I've provided my login credentials, the bastion host prompts me for
the system to which I want to connect to from it, which in this case
is the web server. So my ssh login to the webserver is
tunneled through the bastion host.
I normally go through the process once a month from my MacBook Pro laptop
running the OS X operating system when I need to place a monthly newsletter on
the web server. I use an SSH command similar to the following to log into
the bastion host where gold.example.com is the
fully qualified domain name (FQDN) of the web server and
bastion1.example.com is the bastion host.
The -L option specifies I want to tunnel a local port on
my laptop, in this case I chose 22001, to port 22 on the web server,
gold.example.com. A tunnel is set up from my laptop to the web server
through the bastion host by using that option once my login is completed
to the bastion host.
Then, to transfer a file via
secure copy from my laptop to the web server, I can use a command like
the following one to transfer a file named July.txt from the laptop
to the web server:
The -P option to the scp command specifies I want to use
TCP
port 22001, since that is the port for the end of the tunnel on my laptop.
The 127.0.0.1 address I'm specifying is the
localhost, aka
"loopback", address on my laptop. I.e., I'm connecting to port 22001 on
the laptop itself. The tunnel I set up earlier results in any connection
to that port being forwared through the tunnel to the web server, so
I'm specifying my userid for the web server and the password prompt I
receive is for the web server. The file July.txt will thus be placed
in the directory /data/htdocs/clubs/groot/newsletter/2015
on the web server with the same name, July.txt.
If I wanted to pull a file from the webserver via the tunnel, I could
use a command such as the following:
The vsftpd package can be used on a CentOS 7 system to provide FTP server
service from the system. After installing the package, you may want to
customize its configuration for your needs. After configuring it, you
will need to start the service with systemctl start vsftpd
and will need to issue the systemctl enable vsftpd command
to ensure it starts automatically when the system boots. You will also
need to allow FTP connectivity in to the system from FTP clients by
configuring the firewall software on the CentOS 7 systems as well,
which by default is firewalld for CentOS 7 systems.
You can check the current policies in a Juniper NetScreen firewall running
the ScreenOS operating system, such as a
Netscreen-5GT
firewall,
with get policy all, but you can also display just those
policies affecting transmissions from one particular zone to another zone
by adding a from from_zone to to_zone to the end
of the command. E.g. get policy from untrust to trust would show
only those policies that apply to traffic from the untrust zone to the trust
zone.
To view only those policies that apply to a particular service, such
as FTP, I could use get policy from untrust to trust | include FTP.
ns5gt-> get policy from untrust to trust | include FTP
24 Untrust Trust ACME VPN VIP(untrust) FTP Permit enabled ---X-X
25 Untrust Trust ACI VIP(untrust) FTP Permit enabled ---X-X
ns5gt->
Steps are listed here
that can be used to create a policy that will allow FTP connectivity
from external systems to an internal FTP server behind the firewall.
I thought I had allowed access from all internal systems on the same
LAN to phpMyAdmin on the
webserver by modifying phpMyAdmin.conf to allow access from
the subnet on which the internal systems resided. I checked the configuration
file again and it appeared I had allowed access there.
<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1 192.168.0
Require ip ::1
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1 192.168.0
Allow from ::1
</IfModule>
</Directory>
Since the internal systems were on a 192.168.0.0/24 subnet, I had
added 192.168.0 previously to the Require IP
and Allow from lines, so that access was allowed both from the
localhost address,
127.0.0.1, i.e., from the system itself, and from other systems on the LAN.
I knew I had done that quite some time ago and that the Apache webserver
had been restarted a number of times subsequent to that change.
I checked the IP address the server was seeing for the system from
which I had tried accessing it using
http://www.example.com/phpMyAdmin and realized it was seeing
the external IP address of the firewall behind which the webserver resides,
because I had used the
fully
qualified domain name (FQDN) for the server, i.e., www.example.com, which
caused the connectivity from the internal system to the web server to go
out through the firewall and back in. When I used the internal IP address
for the webserver on which phpMyAdmin resided with
http://192.168.0.22/phpMyAdmin, I was able to access the phpMyAdmin interface
from an internal system on the LAN on which it resides.
If you wish to monitor the performance of an OS X system, Apple provides
a number of utilities with the operating system to allow you to monitor
CPU, memory, and network utilization as well as other system parameters.
The Activity Monitor found in
Applications/Utilities provides a graphical user interface
(GUI) for monitoring CPU, memory, and, to a limited extent, network
utilization. The top command found on Linux systems is also
present and provides a command line tool for monitoring memory and CPU
utilization. For network monitoring, there is also the
Network Utility in
Applications/Utilities.
If you are using Google Sheets, which is a free online spreadsheet
service that is part of
Google Docs, for spreadsheets and need to define a name for a cell as
one can do in Microsoft Excel, select the cell for which you wish to create
a name so that you can reference the cell by that name rather than its
specific location, such as Sales!B3 to reference the cell in column B row 3
on the Sales worksheet, take the following steps, assuming you wished the
name to be Bobs_Sales:
Select Data from the menu bar at the top
of the spreadsheet window.
Select Named ranges.
Click on Add a range.
Fill in the name you wish to use to refer to the cell and below it the
location, which can include the sheet name, if you have multiple worksheets
in the spreadsheet, followed by an exclamation mark, i.e., !,
and then the cell location, i.e., columan and row, e.g., Sales!B3.
Click on Done to add the name and close the Named ranges
window by clicking on the "X" in the upper, right-hand corner.
You could then put =Bobs_Sales in a cell in the same
sheet or another sheet in the workbook to have the value stored in
Sales!B3 appear in the location where you've placed =Bobs_Sales.
That allows you to use a name that is easy for you to remember rather than
having to remember or look up the specific location for the data.
I wanted to put a time stamp in a log file whenever a script on a Linux
system is run. If you just enter date with no parameters at
a shell prompt, you will see something like the following:
$ date
Sun Jun 21 16:10:49 EDT 2015
But you can modify how the output from the date command is presented by
specifying command line parameters for the command using
date +format, where format is how you wish the
output formatted. Parameters that can be used to format the display are listed
below:
Format String
Description
%%
a literal %
%a
locale's abbreviated weekday name (e.g., Sun)
%A
locale's full weekday name (e.g., Sunday)
%b
locale's abbreviated month name (e.g., Jan)
%B
locale's full month name (e.g., January)
%c
locale's date and time (e.g., Thu Mar 3 23:05:25 2005)
%C
century; like %Y, except omit last two digits (e.g., 21)
%d
day of month (e.g, 01)
%D
date; same as %m/%d/%y
%e
day of month, space padded; same as %_d
%F
full date; same as %Y-%m-%d
%g
last two digits of year of ISO week number (see %G)
%G
year of ISO week number (see %V); normally useful only with %V
%h
same as %b
%H
hour (00..23)
%I
hour (01..12)
%j
day of year (001..366)
%k
hour ( 0..23)
%l
hour ( 1..12)
%m
month (01..12)
%M
minute (00..59)
%n
a newline
%N
nanoseconds (000000000..999999999)
%p
locale's equivalent of either AM or PM; blank if not known
%P
like %p, but lower case
%r
locale's 12-hour clock time (e.g., 11:11:04 PM)
%R
24-hour hour and minute; same as %H:%M
%s
seconds since 1970-01-01 00:00:00 UTC
%S
second (00..60)
%t
a tab
%T
time; same as %H:%M:%S
%u
day of week (1..7); 1 is Monday
%U
week number of year, with Sunday as first day of week (00..53)
%V
ISO week number, with Monday as first day of week (01..53)
%w
day of week (0..6); 0 is Sunday
%W
week number of year, with Monday as first day of week (00..53)
%x
locale's date representation (e.g., 12/31/99)
%X
locale's time representation (e.g., 23:13:48)
%y
last two digits of year (00..99)
%Y
year
%z
+hhmm numeric timezone (e.g., -0400)
%:z
+hh:mm numeric timezone (e.g., -04:00)
%::z
+hh:mm:ss numeric time zone (e.g., -04:00:00)
%:::z
numeric time zone with : to necessary precision (e.g., -04
, +05:30)
E.g., if I wanted to display the date in the form of year-month-day, I
could use the following:
$ date +"%y-%m-%d"
15-06-21
If you use a lowercase "y", then the year will be displayed as a two-digit
year, i.e. "15" in this case for 2015, but if I wanted to have the year
displayed as a four-digit year, I could use an uppercase "Y" as shown below:
$ date +"%Y-%m-%d"
2015-06-21
In this case I also wanted to log the time in 24-hour format, aka
"military time", on the same line as the date, so I could append a
%T.
$ date +"%Y-%m-%d %T"
2015-06-21 16:31:40
If I wanted to store the results of the command in a variable, I could
use the following:
If you see a "Markup Data Folder does not exist!" error message while
you are using the CoffeeCup HTML Editor, which is a program used to edit
pages for a website, which references a directory,
such as "C:\Users\Public\Documents\CoffeeCup Software\HTML
Editor\Markup\HTML4.01\." it may be because you installed CoffeeCup
HTML Editor using a different account than the one you are now using.
I encountered that error after installing the software for a family member.
I had installed the software under an administrator account, but when I
was later testing the software under her account I saw that error message
appear frequently. You can remedy the problem by copying fhe folder from
the account under which it was installed to another account where you
wish to use the software.
You can do that In Windows 8 while logged into a non-privileged account, i.e.,
one that isn't in the administrator group, by right-clicking on the
Start button, then choosing Command Prompt (Admin) and
providing a userid and password for an account that is in the administrator
group. E.g., in this case I provided the credentials for the account under
which I installed the software, since it was an account in the administrator
group.
You can find the Markup directory beneath
C:\Users\userid\AppData\Roaming\CoffeeCup Software\CoffeeCup
HTML Editor\Markup where userid is the user name for the
account under which you installed the CoffeCup HTML Editor. E.g., supposing
the userid was JDoe, I would see the following:
Volume in drive C has no label.
Volume Serial Number is 5C60-1B61
Directory of C:\Users\JDoe\AppData\Roaming\CoffeeCup Software\CoffeeCup HTML Editor\Markup
06/12/2015 12:51 PM <DIR> .
06/12/2015 12:51 PM <DIR> ..
06/12/2015 12:51 PM <DIR> CSS2.1
06/12/2015 12:51 PM <DIR> CSS3
06/24/2010 11:44 AM 3,055 doctypes.txt
06/12/2015 12:51 PM <DIR> Entities
06/12/2015 12:51 PM <DIR> HTML
03/12/2014 09:45 AM 22,830 html-entities.conf
06/12/2015 12:51 PM <DIR> HTML4.01
06/12/2015 12:51 PM <DIR> HTML5
06/12/2015 12:51 PM <DIR> Markdown
03/06/2014 09:43 AM 70,692 opengraph.dat
12/16/2013 08:22 AM 944,004 schema.dat
06/12/2015 12:51 PM <DIR> XHTML1
06/28/2010 02:17 PM 93 _default.css
5 File(s) 1,040,674 bytes
10 Dir(s) 3,738,071,187,456 bytes free
From an admin command prompt, I could then copy the contents to a similar
location under another account where I want to be able to use the software.
E.g., supposing I wanted to copy from the JDoe account to a
Jane account, I could use the xcopy command below.
xcopy /s "C:\Users\JDoe\AppData\Roaming\CoffeeCup Software\CoffeeCup HTML Editor" "C:\Users\Jane\AppData\Roaming\CoffeeCup Software\CoffeeCup HTML Editor\."
There are over 800 files in the folder and its subfolders. Once they
are copied, if you had the HTML Editor open during that process, close and
reopen it.
I also encountered a problem while configuring the HTML Editor to display
files in browsers on the system, which gives you the opportunity to see what
a page will look like in multiple browsers. That problem was also related
to directory permissions, since the CoffeeCup HTML Editor was attempting
to create files in a directory where only accounts in the administrator
group should be able to create files - see
Configuring CoffeCup HTML
Editor for browser support.
On an Ubuntu Linux system, you can use the iwconfig command
at a shell prompt, i.e., a command line interface, to view information on
available networks. Iwconfig is part of the wireless-tools package.
If you are currently connected to a wireless network, you will see
something similar to the following, if you run the command with no
arguments specified. In the example below, the system is connected to a
wifi network that has a
service set identification (SSID) of
T28J5 at a bit rate of 1 Mbs.
$ iwconfig
lo no wireless extensions.
wlan0 IEEE 802.11bgn ESSID:"T28J5"
Mode:Managed Frequency:2.412 GHz Access Point: 00:1F:90:B2:9F:A4
Bit Rate=1 Mb/s Tx-Power=14 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:off
Link Quality=70/70 Signal level=-33 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:65 Missed beacon:0
eth0 no wireless extensions.
You can specify a wireless interface to avoid the display of
extraneous information for interfaces that are not wireless interfaces,
e.g., iwconfig wlan0.
I can see from the above output that the wireless interface supports
the
802.11 b, g, and n standards.
The arguments for the command can be seen by issuing the command
iwconfig --help at a shell prompt.
$ iwconfig --help
Usage: iwconfig [interface]
interface essid {NNN|any|on|off}
interface mode {managed|ad-hoc|master|...}
interface freq N.NNN[k|M|G]
interface channel N
interface bit {N[k|M|G]|auto|fixed}
interface rate {N[k|M|G]|auto|fixed}
interface enc {NNNN-NNNN|off}
interface key {NNNN-NNNN|off}
interface power {period N|timeout N|saving N|off}
interface nickname NNN
interface nwid {NN|on|off}
interface ap {N|off|auto}
interface txpower {NmW|NdBm|off|auto}
interface sens N
interface retry {limit N|lifetime N}
interface rts {N|auto|fixed|off}
interface frag {N|auto|fixed|off}
interface modulation {11g|11a|CCK|OFDMg|...}
interface commit
Check man pages for more details.
You can also use the iwlist command to display some additional
information from a wireless network interface that is not displayed
by iwconfig. The main argument is used to select a category of
information; iwlist displays in detailed form all information related
to this category, including information already shown by iwconfig.
The options, which you can view by typing
iwlist --help or just iwlist at a shell
prompt, for the command are shown below:
If you are connected to a wireless network already, you can view
information on that network by typing ifwlist scan. E.g.,
in the example below, the system is connected to a wireless network
that has a
SSID of T28J5, which can support a maximum transmission rate of 54 Mbs.
If you know the designation for the wireless interface in the system,
e.g. wlan0 in this case, you can avoid attempting to scan
interfaces, such as eth0, which is a wired rather than wireless interface,
by specifying the wireless interface when issuing the command, e.g.,
iwlist wlan0 scan.
You can see the current bitrate with iwlist <interface>
bitrate.
$ iwlist wlan0 bitrate
wlan0 unknown bit-rate information.
Current Bit Rate=1 Mb/s
If you are already connected to a wifi network and want to disconnect
you can type ifconfig interface down where
interface is the designation for the relevant wireless interface,
e.g., wlan0. You can see a list of all available interfaces
with ifconfig -a. If you don't run the ifconfig
wlan down command from the root account or use sudo on a Ubuntu
system, you will receive a "permission denied" error message. You can use
sudo ifconfig to run the command from an account with
sudo privileges.
$ ifconfig wlan0 down
SIOCSIFFLAGS: Permission denied
$ sudo ifconfig wlan0 down
[sudo] password for jdoe:
$
But with the above method, the system may bring the interface back up
automatically a few seconds later. You can use the command-line tool
nmcli for controlling NetworkManager, instead. To disable
the wifi interface, you can use nmcli nm wifi off.
$ nmcli nm wifi off
$
You can re-enable the wifi interface with nmcli nm wifi on.
If the system has previously connected to an available wifi network and
has the credentials stored to automatically connect to that network, when
you issue the nmcli nm wifi on command, it will automatically
reconnect to the network.
You can see the current status of the wifi interface with nmcli nm
wifi. E.g., if it is enabled, you would see the following:
$ nmcli nm wifi
WIFI
enabled
If you wish to see a list of the stored wifi networks you can use
the nmcli con command, which shows information about
NetworkManager's connections. For information on a particular one
you can use nmcli con list id identifier, where
identifier is the id for the wireless network, e.g.,
T28J5 or in the example below VA Internet for
the guest network at a hospital.
$ nmcli con list id "VA Internet"
connection.id: VA Internet
connection.uuid: 8cd16736-f340-42a8-b103-1b87d24973b9
connection.type: 802-11-wireless
connection.autoconnect: yes
connection.timestamp: 1434474233
connection.read-only: no
connection.permissions:
802-11-wireless.ssid: 'VA Internet'
802-11-wireless.mode: infrastructure
802-11-wireless.band: not set
802-11-wireless.channel: 0
802-11-wireless.bssid: not set
802-11-wireless.rate: 0
802-11-wireless.tx-power: 0
802-11-wireless.mac-address: 90:4C:E5:2F:6F:2E
802-11-wireless.cloned-mac-address: not set
802-11-wireless.mac-address-blacklist:
802-11-wireless.mtu: auto
802-11-wireless.seen-bssids:
802-11-wireless.security: not set
ipv4.method: auto
ipv4.dns:
ipv4.dns-search:
ipv4.addresses:
ipv4.routes:
ipv4.ignore-auto-routes: no
ipv4.ignore-auto-dns: no
ipv4.dhcp-client-id: not set
ipv4.dhcp-send-hostname: yes
ipv4.dhcp-hostname: not set
ipv4.never-default: no
ipv4.may-fail: yes
ipv6.method: auto
ipv6.dns:
ipv6.dns-search:
ipv6.addresses:
ipv6.routes:
ipv6.ignore-auto-routes: no
ipv6.ignore-auto-dns: no
ipv6.never-default: no
ipv6.may-fail: yes
If you run the ping command in windows with no parameters specified other
than the system to ping, the output will look similar to the following:
C:\>ping google.com
Pinging google.com [216.58.217.142] with 32 bytes of data:
Reply from 216.58.217.142: bytes=32 time=12ms TTL=55
Reply from 216.58.217.142: bytes=32 time=16ms TTL=55
Reply from 216.58.217.142: bytes=32 time=13ms TTL=55
Reply from 216.58.217.142: bytes=32 time=13ms TTL=55
Ping statistics for 216.58.217.142:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 12ms, Maximum = 16ms, Average = 13ms
If I want to just see the ping times and no other output from the ping
command, I could use a FOR /F
command such as is shown below. The "pipe" character, |, used to
pipe output from one command to another should be prefixed with ^,
which serves as an
"escape character".
C:\>for /f "tokens=7 delims== " %g in ('ping google.com ^| find "Reply from"') do @echo %g
22ms
15ms
13ms
22ms
To do the same thing from a batch file, I could put the following
commands in a batch file:
@echo off
set HostToPing="google.com"
for /f "tokens=7 delims== " %%g in ('ping %HostToPing% ^| find "Reply from"') do echo %%g
The differences are that I would need to use %%g, instead of
%g in the batch file and I could use echo in the
batch file rather than @echo, since I put @echo as
the first line of the batch file to turn off the display of the comands
themselves.
By default, when you run the ping command on a Microsoft Windows system,
it will issue 4 pings then stop. But you can control the number of pings
sent by using the -n count parameter, where count is the
number of pings to send.
-n count Number of echo requests to send.
If I want to monitor the average response time to pings to a given host
over a long period of time, I could issue the ping command with a very large
number of echo requests specified or use the -t parameter,
e.g., ping -t to have the pings run indefinitely:
-t Ping the specified host until stopped.
To see statistics and continue - type Control-Break;
To stop - type Control-C.
I could store the results in a file by redirecting
output from the command with the output redirection character
>, i.e., ping -n 500000 google.com
>pingoutput.txt. Or I could just look at the line where ping displays
the average and create a loop where pings are run periodically. The line
where the average is shown by ping looks like the following:
Minimum = 14ms, Maximum = 17ms, Average = 15ms
To just look at that average value, but also time stamp the output,
so I can determine if ping times to a particular host are changing
significantly over the course of a day, I could use code similar to the
following in a batch file, substituting the particular host I'm interested
in for google.com and using the
timeout command present in Microsoft Windows 7/2008 and later versions
to specify the pause period between instances of the ping command being
run. The timeout command is similar to the sleep or wait commands that may
be present in other operating systems. In the example below the timeout
value is 2 minutes. In this case >>
must be used to append to the output file, since > would
overwrite the output file each time ping was run.
@echo off
set HostToPing="google.com"
:loop
set datetime=%date% %time%
for /f "tokens=9" %%g in ('ping %HostToPing% ^| find "Average ="') do echo %datetime% %%g >>ping_times.txt
timeout /t 120
goto loop
If I name the batch file avgpingtime.bat and run it from a command prompt, I
would see the following until the batch file is stopped with Ctrl-C.
C:\>avgpingtime
Waiting for 0 seconds, press a key to continue ...
Waiting for 0 seconds, press a key to continue ...
Waiting for 0 seconds, press a key to continue ...
Waiting for 0 seconds, press a key to continue ...
Waiting for 0 seconds, press a key to continue ...
Waiting for 0 seconds, press a key to continue ...
Waiting for 0 seconds, press a key to continue ...
Waiting for 0 seconds, press a key to continue ...
Waiting for 14 seconds, press a key to continue ...
Until the batch file s terminated with Ctrl-C, it
would display its countdown from 120 to 0 each time the timeout
command is executed. The results stored in the text file would be
similar to the following:
A default installation of sendmail usually yields a configuration where
sendmail will only accept email from email clients on the server on which
sendmail is running. Usually, you will want to allow external email servers
to send email to valid email addresses on the server. To do so, edit
/etc/mail/sendmail.mc. Comment out the following line by putting
dnl at the beginning of the line:
You then need to rebuild the /etc/mail/sendmail.cf file
from the /etc/mail/sendmail.mc file using the m4
command as shown below:
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
Once you've rebuilt the sendmail.cf file, you need to restart
sendmail. You may be able to restart sendmail with a
/etc/init.d/sendmail restart command, though on some Linux
systems, e.g., CentOS 7, you will see a No such file or directory
error message, if you try that command. On a CentOS 7 system, you can
restart sendmail with systemctl restart sendmail.
# /etc/init.d/sendmail restart
-bash: /etc/init.d/sendmail: No such file or directory
# systemctl restart sendmail
#
Or you can also use service sendmail restart on a CentOS 7
system to restart sendmail.
# service sendmail restart
Redirecting to /bin/systemctl restart sendmail.service
#
Once you've restarted sendmail, external servers sending email to
domain names present
in the local-host-names file, should no longer receive "relaying denied"
error messages in bounced email. They still would not be able to send email
to email addresses for domain names not in that file. I.e., the server won't
function as an "open
mail relay".
If you wish to know which package provides a particular file on a CentOS
system, you can use the yum whatprovides command followed by
the path to the file and its name. E.g., if I wanted to determine what package
provides the mysql command on a system, I could determine its
location with the which command and then use the
yum whatprovides command to determine the package that included
the file.
$ which mysql
/usr/bin/mysql
$ yum whatprovides /usr/bin/mysql
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.umd.edu
* epel: mirror.us.leaseweb.net
* extras: mirror.nexcess.net
* updates: mirror.cs.pitt.edu
1:mariadb-5.5.41-2.el7_0.x86_64 : A community developed branch of MySQL
Repo : base
Matched from:
Filename : /usr/bin/mysql
1:mariadb-5.5.41-2.el7_0.x86_64 : A community developed branch of MySQL
Repo : @updates
Matched from:
Filename : /usr/bin/mysql
From the above output, I can see the mysql program was provided in the
mariahdb package.
Another means to determine what package provided a file installed on
the system is to use the
RPM Package
Manager (RPM) utility.
Details on that package could be obtained by using the
rpm -qi mariadb command.
$ rpm -qi mariadb
Name : mariadb
Epoch : 1
Version : 5.5.41
Release : 2.el7_0
Architecture: x86_64
Install Date: Mon 16 Feb 2015 09:33:02 PM EST
Group : Applications/Databases
Size : 50862464
License : GPLv2 with exceptions and LGPLv2 and BSD
Signature : RSA/SHA256, Thu 05 Feb 2015 11:27:55 AM EST, Key ID 24c6a8a7f4a80eb5
Source RPM : mariadb-5.5.41-2.el7_0.src.rpm
Build Date : Thu 05 Feb 2015 11:12:40 AM EST
Build Host : worker1.bsys.centos.org
Relocations : (not relocatable)
Packager : CentOS BuildSystem <http://bugs.centos.org>
Vendor : CentOS
URL : http://mariadb.org
Summary : A community developed branch of MySQL
Description :
MariaDB is a community developed branch of MySQL.
MariaDB is a multi-user, multi-threaded SQL database server.
It is a client/server implementation consisting of a server daemon (mysqld)
and many different client programs and libraries. The base package
If you are interested in what package may provide a file that isn't
currently installed on a system, you could use the yum whatprovides
command or, alternatively use the
www.rpmfind site to perform a search on the file name. In this
case, for mysql, the site will return a long list of packages that could provide
the file.
In order to configure sendmail to accept email for a particular domain name,
you need to add the domain name to /etc/mail/local-host-names.
E.g., suppose sendmail on my server accepts email for
moonpoint.com, but I also want it to handle email for example.com. I would
then edit the /etc/mail/local-host-names file adding
example.com to the the file, so it would contain the following
lines:
# local-host-names - include all aliases for your machine here.
moonpoint.com
example.com
Any line that begins with the pound or hash character, i.e., #,
is a comment and domain names are added one per line. After editing the
file, you need to generate a new local-host-names.db file by
running the command below from the root account:
# makemap hash /etc/mail/local-host-names < /etc/mail/local-host-names
makemap: /etc/mail/local-host-names: line 2: no RHS for LHS moonpoint.com
makemap: /etc/mail/local-host-names: line 6: no RHS for LHS example.com
Don't worry about the "no RHS for LHS" lines; they are to be expected.
You can verify that your sendmail server will now handle email for the
new domain by using the sendmail -bv command followed by the
name of an account or alias on the system (aliases are added to
/etc/aliases and a new aliases list generated by running
newaliases). E.g., if jan is the name of an account on
the system, I could then test that email will be delivered to the local
jan account if I were to send a message to jan@example.com.
# sendmail -bv jan@example.com
jan@example.com... deliverable: mailer local, user jan
The "mailer local, user jan" reference informs me that sendmail will
deliver email addressed to jan@example.com to the local jan account. When
I ran the command prior to updating the local-host-names file, I saw the
following:
The "mailer relay" reference informed me that sendmail was not configured
to deliver email to the local account if someone on the system sent email
to jan@example.com, but would, instead, send the email through another email
server to what it believed was an external email account.
To get external email servers to use the server on which I'm running
sendmail to delier email for the example.com domain, I need to have an
appropriate mail exchanger
(MX) record configured for the domain - see
Checking MX Records - or at least
ensure that there is no MX record pointing to some other server. E.g., I
could use the command nslookup -querytype=mx example.com to
check the MX records for example.com.
If my server running sendmail is accessible at the IP address for
smtp.example.com, then other email servers will send email for any
any email address at example.com to it.
The free PuTTY
program for Microsoft Windows systems allows you to establish SSH connections.
The program includes
port forwarding capability, so that you can forward connectivity to
a port on the system running PuTTY to a port on the SSH server to which you
have connected using PuTTY or even another system accessible from the SSH
server. E.g., suppose you can remotely connect to a SSH server at your
home or business, but you can't access a web server at home or at the business
location remotely. One option you can use is have PuTTY "listen" on the system
on which it runs on a port, e.g., port 8888, and for any connection to that
port on the local system on which PuTTY is running, forward the connection
to the remote web server through the SSH server as explained at
Port forwarding
to another device with PuTTY. Such port forwarding can be performed
to any TCP port.
Alternatively, you can set up a
SOCKS proxy using PuTTY as noted at
Using PuTTY to set up a SOCKS Proxy
Connection. Instructions for configuring some browsers ito use a
SOCKS proxy are provided from the links below:
I've found that a MacBook Pro laptop I use often will slow unbearably. When
I check the cpu utilization, I usually find some third-party application is
consuming an inordinate amount of CPU time slowing the system. Today the
problem was due to the AgentService process associated with an enterprise
backup program, Connected Backup, from Hewlett Packard (HP). HP acquired the
software when it purchased
Autonomy Corporation, which had itself obtained the software through
the purhcase of Iron Mountain's technology arm, "Iron Mountain Digital".
Previously, I've seen the same
CPU utilization problem due to the
AMPAgent process from Kace.
When you go to websites where a form is present with fields for an email
address, etc., such as the Facbook page for logging into the site, when
you click on the field for the email address you may see a list of email
addresses that the browser has saved to auto fill fields in forms for
you. If you wish to have the browser "forget" those email addresses and
other information, the steps to take are as follows:
To import an Amazon affiliate report into Excel 2013, download the report
as a tab separated values (TSV) report, then take the following steps in
Microsoft Excel 2013 to import the data, which can also be used for any
text file containing tab delimited data:
Click on File.
Click on Open.
Under Open select the location where the downloaded file is located and
select the report.txt file you downloaded.
A "Text Import Wizard Step 1 of 3" window will open. You can check the check
box next to "My data has headers". You can skip the first title row, if you
wish, by changing the "Start import at row" value from the default value of 1.
Click on Next when you've made any changes needed.
At step 2, leave "Tab" selected as the delimiter and click on Next.
At step 3, you can leave "General" selected for the "Column data format" and
click on Finish.
Once the data is imported, you can click on the vertical lines between the
column headers to adjust the width of individual columns to accomodate column
titles and data. Or to have the text wrap within the current column width, you
can click on a column designator, such as "A", "B", etc., or
click on the "1" to the left of the first row to choose all columns
on that row, and then right-click and choose Format Cells,
Alignment, and then select Wrap Text under Text
Control, and then click on OK.
To save the file in an Excel spreadsheet format, select File
and Save As, select a location and name for the file, and then
change the "Save as type" value from "Text (Tab delimited) (*.txt)" to
"Excel Workbook (*.xlsx)" or other file type.
If you wish to import a contact list from Microsoft Outlook into
Event Planner 2015, which is part of
Hallmark Card Studio 2015,
first export the contact list from Outlook into a format that Event Planner can
import, such as a Microsoft Access .mdb, Excel .xls, or
comma separated
values (CSV) file, e.g., see
Exporting contacts from Outlook 2010.
Though, when I tried importing from a Microsoft Access .mdb file, a
ODBC Microsoft Access Driver Login Failed window opened with the
message "Unrecognized database format 'C:\Users\Jane\Documents\Contacts.mdb'"
after I was prompted for a login name and password, so I exported the data
as an Excel .xls file, instead. I was able to successfully import from an
Excel .xls spreadsheet.
Once you have exported the data from Outlook, in Event Planner, click on
File then select Import. When prompted to "Select the data
source you are importing from, select "Access (*.mdb), Excel (*.xls)
or Comma Delimited (*.csv) files". The other options are "Existing
Event Planner installation" and "Outlook Express". Outlook Express
is a different application than Outlook, though both were created by
Microsoft, and stores information in its own format, which is not the
one used by Microsoft Outlook, so you will need to import from an mdb,
xls, or csv file.
After clicking on Next, browse to the location of the
file you exported, e.g. Contacts.xls, and select it then click on
Next. You will then need to map fields from the imported file
to Address Book fields in the Event Planner.
Some Outlook fields won't have an exact match with Event Planner fields.
E.g., Outlook has a company name field for its contacts, whereas the
Event Planner does not, so you will have to map a company name to last name.
To perform the mapping, you will need to click on an entry in the left-most
"Select a value from your database" column in the Import Address Book Fields
window, then select an entry from "Choose the Address Book field to which you
want to map the value", and then click on the Add button to complete the mapping. You may have to open the exported file in an application such as
Excel to determine what the column headers are for entries to make an
appropriate mapping. You may not even need to map some values if you feel
you don't need them in the Event Planner contact list, e.g., "gender",
"sensitivity", etc. have no comparable Event Planner fields.
You will need to do this for each entry in the left column
Note: Tested with Event Planner 2015 version 3.0.3.1, which is part of
Hallmark Card Studio 2015, but may apply to other versions as well.